Kirjautuminen

Haku

Tehtävät

Keskustelu: Koodit: QB: Henkilötunnuksen tarkistaminen

Antti Laaksonen [11.01.2002 13:14:57]

#

Jokaisella suomalaisella on yksilöllinen henkilötunnus, joka on muotoa PPKKVVCNNNX, jossa PP on päivä kaksinumeroisena, KK on kuukausi kaksinumeroisena, VV on vuosi kaksinumeroisena, C on vuosisatatunnus, joko + (1800), - (1900) tai A (2000), NNN on yksilönumero ja X on tarkistusmerkki.

Erehdysten välttämiseksi tunnuksissa on viimeisenä tarkistusmerkki, joka lasketaan muodostamalla päivistä, kuukausista, vuosista ja yksilönumeroista yksi suuri luku ja ottamalla sen jakojäännös. Jokaiselle jakojäännökselle on oma merkki, ja jos tämä merkki täsmää tunnuksen tarkistusmerkin kanssa, tunnus on oikein.

Yksi nopeimmista ja lyhimmistä tavoista henkilötunnuksen tarkistamiseen QBasicilla on tässä. Ohjelman toimivuutta voit kokeilla vaikka omalla henkilötunnuksellasi.

merkit$ = "0123456789ABCDEFHJKLMNPRSTUVWXY"
INPUT "Anna henkilötunnus: ", tunnus$
IF MID$(merkit$, VAL(LEFT$(tunnus$, 6) + MID$(tunnus$, 8, 3)) MOD 31 + 1, 1) = RIGHT$(tunnus$, 1) THEN
        PRINT "Tunnus oikein"
ELSE
        PRINT "Tunnus väärin"
END IF

djshake [31.01.2002 14:02:20]

#

sotusta onnistuu myös selvittää henkilön sukupuoli... eli takas koodaan siitä :)
ja sit vielä teet että ilmoittaa iän jne.

Antti Laaksonen [02.02.2002 15:10:03]

#

Nyt on toinen vinkki henkilötunnuksen analysoinnista.

moptim [18.09.2007 19:31:42]

#

Epäonnen luku indeksinä, aiheuttaaks ton käyttö epäonnee? ;)

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta