Sovellukseen tarvitaan moduuli, joka tuottaa henkilötunnuksista viivakoodin. Viivakoodin tulostamiseen käytetään Google Fonts -kirjastosta löytyvää Code 128 fonttia. Viivakoodin muodostamiseen tarvitaan
Alkumerkki
Loppumerkki
Varmistussumma
Alkumerkkinä käytetään ASCII-merkkiä 204 (104 + 100)
Loppumerkkinä käytetään ASCII-merkkiä 206 (106 + 100)
Numeron 1 ASCII arvo on 49 ja siitä laskettu varmistussumman laskennassa käytettävä arvo 49 - 32 = 17
Numeron 2 ASCII 50 ja 18
Numeron 8 ASCII 56 ja 24
Kirjaimen B ASCII on 66 ja 34
Varmistussumma lasketaan siten, että merkkien järjestusnumerolla kerrotaan merkin ASCII-arvo. josta on vähennetty 32 Tulot lasketaan yhteen ja siihen lisätään vielä akumerkin ASCII-arvo (104). Varmistussumma on modulo 103.
Esimerkin tapauksessa 1x17 + 2x18 + 3x24 + 4x34 + 104 = 365. Tästä otetaan jakojäännös 103:lla jaettaessa 269 mod 103 = 56 Kun siihen listään 32 saadaan ASCII-arvo 88, joka on merkkinä X
Kuvan esmerkissä varmistussumma lasketaan seuraavasti
[x] Rakenna algoritmi, joka kerää annetusta tekstistä merkkien ASCII-arvot,
[x] laskee varmistussumman ja muodostaa uuden mekkijonon, jossa on alkumerkki, mekkijono, varmistussumma ja loppumerkki.
[x] Tee yksikkötestit
[x] ja kokeile myös oikealla google-fontilla viivakoodin toimintaa.
Sovellukseen tarvitaan moduuli, joka tuottaa henkilötunnuksista viivakoodin. Viivakoodin tulostamiseen käytetään Google Fonts -kirjastosta löytyvää Code 128 fonttia. Viivakoodin muodostamiseen tarvitaan
Alkumerkkinä käytetään ASCII-merkkiä 204 (104 + 100) Loppumerkkinä käytetään ASCII-merkkiä 206 (106 + 100)
Varmistussumma lasketaan siten, että merkkien järjestusnumerolla kerrotaan merkin ASCII-arvo. josta on vähennetty 32 Tulot lasketaan yhteen ja siihen lisätään vielä akumerkin ASCII-arvo (104). Varmistussumma on modulo 103.
Esimerkin tapauksessa 1x17 + 2x18 + 3x24 + 4x34 + 104 = 365. Tästä otetaan jakojäännös 103:lla jaettaessa 269 mod 103 = 56 Kun siihen listään 32 saadaan ASCII-arvo 88, joka on merkkinä X
Kuvan esmerkissä varmistussumma lasketaan seuraavasti
[x] Rakenna algoritmi, joka kerää annetusta tekstistä merkkien ASCII-arvot,
[x] laskee varmistussumman ja muodostaa uuden mekkijonon, jossa on alkumerkki, mekkijono, varmistussumma ja loppumerkki.
[x] Tee yksikkötestit
[x] ja kokeile myös oikealla google-fontilla viivakoodin toimintaa.
Linkkejä koodiesimerkkeihin:
https://www.w3schools.com/python/ref_func_chr.asp https://www.w3schools.com/python/ref_func_ascii.asp https://www.w3schools.com/python/ref_func_ord.asp