delphi - teilerfremde zahl herausfinden
lima-city → Forum → Programmiersprachen → Delphi & Pascal
-
hey.. gibts bei delphi ne funktion, die mir anzeigt ob eine zahl e zu einer zahl N teilerfremd ist??
ansonsten kann mir vielleicht jemand erkl?hren wie ich ds machen soll..
kriege es bisher nur so hin das der ne schleife mit durchl?uft, die mit einer warsceinlich keit von ca 1:100000 true ist-.-^^
also w?hre echt SEHR dankbar^^
greez
gero -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
ok das prob hat sich gel?st, daf?r habe ih nun ein anderes.. wie kann ich in delphi mit gro?en zahlen gut rechnen.. ich habe also
1909^311
das ergebnuss soll ich dann modulo 2911 nehmen, also den rest der da rauskommt berechnen..
also im prinzip das hier mit integern^^
(1909^311) mod 2911
vielleicht kan mir ja jetzt einer weiter helfen^^
greez
gero
und sorry wg doppel post.. wollte erstens pushen und zweitens das dann jemand reinguckt^^ -
ttobsen schrieb:
gero schrieb:
ok das prob hat sich gel?st, daf?r habe ih nun ein anderes.. wie kann ich in delphi mit gro?en zahlen gut rechnen.. ich habe also
1909^311
das ergebnuss soll ich dann modulo 2911 nehmen, also den rest der da rauskommt berechnen..
also im prinzip das hier mit integern^^
(1909^311) mod 2911
vielleicht kan mir ja jetzt einer weiter helfen^^
greez
gero
und sorry wg doppel post.. wollte erstens pushen und zweitens das dann jemand reinguckt^^
Daf?r gibt es keinen fertigen Datentyp. Die gr??t m?gliche Zahl w?re vom Typ int64 mit dem Wert (2^64)-1.
Um sowas zu realisieren musst du dir nenn eigenen Datentyp schaffen. Aufgebaut auf einem Array.
Gru? Tobi
Nein, man braucht keinen neuen datentypen daf?r.. hab es grade hinbekommen.. geht mit ganz normalen integern^^
hier die erkl?hrung
ich will einfach mal 7^5 mod 11 haben.. das kann man zwar noch mit integern berechnen. aber das folgende verfahren funzt auch bei gro?en zahlen.
also:
7^5 mod 11
=
((((7*7 mod 11)*7mod 11)*7 mod 11)*7 mod 11)
=
7*7 mod 11 = 5
5*7 mod 11 = 2
2*7 mod 11 = 3
3*7 mod 11 = 10
ergebnis ist demnach 10
greez
gero -
es geht aber auch einfach!
er will ja nur (1909^311) mod 2911 haben!
also ganz einfach:
var i,x: Integer;
x := 1;
For i := 1 to 311 do x := (x * 1909) mod 2911;
so bleibt man immer im rahmen der Integer und hat das Ergebnis! -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage