Misschien is het wel leuk om de structuren achter die codes te bekijken:
bv. hoe een ISBN is opgebouwd, hoe een sofi-nummer is opgebouwd, hoe een kredietkaartnummer is opgebouwd, hoe een identiteitskaartnummer (België) is opgebouwd, hoe een bankkaartnummer (België) is opgebouwd , hoe een IP is opgebouwd; eventueel nog wat uitleg over hashes ofzo, EAN-nummers (dat zijn de streepjescodes; die staan er tweemaal: eenmaal in streepjes en eenmaal in cijfers). Misschien kun je uitzoeken hoe je van een getal een streepjescode kan maken.
Voor de controle van kredietkaarten kan je genoeg op internet vinden, voor een nummer van een rekening in België heb je de volgende informatie:
xxx-yyyyyyy-zz
waarbij xxx voor je bankinstelling staat, bv. 001 is het ex-ASLK-gedeelte van Fortis
yyyyyyy is je bankrekening
zz is een controle nummer dat berekend wordt door xxxyyyyyyy te delen door 97 en daarvan de rest te nemen, dat is zz. Zo kun je dus voorkomen dat iemand door het verkeerd ingeven van een getal geld op de verkeerde rekening stort.
Voor de Belgische identiteitskaart is er iets gelijkaardigs: je hebt ten eerst een nummer van de kaart zelf: ook xxx yyyyyyy zz en je bereknt de zz op dezelfde manier. Voor de rest heb je nog je rijksregisternummer. Je eigen persoonlijke, allereigenste nummer in de rij: yy-mm-dd xxx-yy waarbij ymd voor je geboortedatum staan, en uit het tweede gedeelte is je geslacht te halen doordat vrouwen een even/oneven nummer krijgen en mannen het ander, maar ik weet niet precies meer welk van de twee het was
Over postcodes: in België zijn het 4 cijfers, en natuurlijk zijn die afhankelijk van de locatie, ook onderverdeeld in grotere gebieden (alles in de 1000 is regio Brussel, geloof ik: 1800 is Vilvoorde, 1080/1083/... is Brussel, ...). Telefoon nummers zijn hier in enkele formaten: 0x - yyy yy yy, 0xx - yy yy yy en 04xz - yy yy yy en dan natuurlijk nog speciale nummers in de vorm van xxxx (sms/algemene diensten), 090x - yyyyy en 07x - yyy yyy dacht ik.
Die x'en staan voor de zonenummers, die we verplicht zijn in te toetsen ook al zitten we in dezelfde zone (dat is enkele jaren geleden ingevoerd om extra nummers vrij te maken) en de y's zijn abonneenummers. De eerste twee zijn gewone nummers: we hebben twee soorten netnummers: met twee cijfers (02, 03, ...) en drie cijfers (056, 015, ...) voor gewone vaste lijnen, maar verder is er geen verschil behalve de locatie van die zones. de 04xz-nummers zijn gsm-nummers waarbij elke operator een x heeft gekregen (Proximus: 7, Mobistar: 9 en Orange/Base: 8) en daarenboven enkele z-reeksen heeft om zo veel nummers te kunnen bedienen. De 090x-lijnen zijn dure betalende lijnen, waarbij er 5 soorten zijn: 0900: gewoon dure lijnen, 0901: nog iets duurder, 0902: nog duurder, 0903: nog duurder en 0905: lijnen waarbij je per oproep betaalt en niet per beltijd. De 07x (meestal 070) zijn nationale lijnen die gebruikt worden om op te bellen naar radiostations/televisiestations/algemene diensten/...
Ik hoop dat je hier al iets aan hebt