Einzelnen Beitrag anzeigen

choose

Registriert seit: 2. Nov 2003
Ort: Bei Kiel, SH
729 Beiträge
 
Delphi 2006 Architect
 
#4

Re: mathematisches Problem (mod?)

  Alt 21. Nov 2003, 14:14
Hallo braingrenade,

weil Du von einem "mathematischen Problem" und vom Restklassenoperator mod sprichst, gehe ich davon aus, dass Du kein Problem mit Delphi hast.

Zunächst einmal gilt
Code:
(a + b) mod c = ((a mod c) + b) mod c
oder in anderen Worten für Dein Beispiel: Es hat keinen Effekt ob Du einen Datentyp Cardinal oder Word als Zufallszahlverwendest.

Wenn ich Dich richtig verstanden habe, besteht das eigentliche Problem in der Rekonstruktion der bekannten Zahl b aus der Zufallszahl a unter Verwendung eines beliebigen Exemplars d der Restklasse a+b mod c bei bekanntem c, also
Code:
(a+b) mod c = d
Du kennst also a (den Zufallswert), c (hier wg des Datentyps Word, 2^16) und den errechneten Wert d.


Vielleicht wird das Ganze in einem "vertrauten Umfeld" deutlich:

Angenommen die beliebigte Zahl a sei 42 und die bekannte Zahl b sei 9. Weiterhin wolltest Du Restklassen zu c mit c=10 bilden, dann wäre ein beliebiges Exemplar d der Restklasse 42+9 mod 10 zB 1. Oder anders ausgedrückt: Die letzte Ziffer der Summe 42+9 im Dezimalsystem ist eine 1.
Die Frage, die Du gestellt hast, lautet nun: Wie kommst Du von 1 unter Zuhilfenahme von 42 wieder auf eine 9? (Tipp: Betrachte nur die letzten Stellen, also 1 und 2. Schließlich betrachtest Du mit c=10 nur die letzte Stelle im Dezimalsystem).
gruß, choose
  Mit Zitat antworten Zitat