Sinus: Ik heb een programmaatje geschreven om te rekenen met grote getallen.
Co: Oh leuk, en... werkt het een beetje?
Sinus: Nou kijk maar eens: ik heb twee getallen (GETAL1 en GETAL2) ingevoerd waarvan het product (GETAL3) wordt berekend.
Co: Nou, ik ben benieuwd, laat maar eens zien dan.
Sinus: Hier is het resultaat:
536572733525788 x 523674546245792 = 358874781144158145488149317746
Co: Maar, daar klopt helemaal niets van!!! Die berekening is helemaal niet juist!!!
Sinus: Oh ja, dat kan best, want er zit nog een vreemde bug in mijn programmaatje.
Co: En wat is die bug dan?
Sinus: Dat om de een of andere reden elk cijfer van GETAL1, GETAL2 & GETAL3 met precies 1 is toegenomen of afgenomen.
Co: En dat is alles?
Sinus: Ja, en als je dat weet dan kun je er zelf ook voor zorgen dat de vermenigvuldiging GETAL1 * GETAL2 = GETAL3 wel correct is.
Co: Dat is makkelijker gezegd dan gedaan.
Sinus: Nou, om het wat makkelijker te maken geldt als voorwaarde hierbij dat GETAL1 en GETAL2 priemgetallen moeten zijn.
Co: Dan moet het wel lukken. Heb je dan ook nog een cache verstopt?
Sinus: Ja, als je de juiste getallen hebt bepaald dan kun je die vinden met de volgende formule:
UxxxExRxLxSxxAx * GxxFxxxMCxxxJxN = QxxTxxHxxBxxKxxxVxxDxPxxxOxxxx
De cache ligt dan op: N 52.Y E 004.Z waarbij:
Y = ABC * DE * F – (GH * J) en Z = KLM * NOP * QR – (ST * UV)
Co: Dat is allemaal duidelijk genoeg!