PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Teilermenge


Maggi
02.11.2011, 11:22:51
Ich habe ein Problem und zwar wollte ich folgendes erreichen:

Ich soll aus zwei Zufallszahlen eine Rechenaufgabe generieren die man dann lösen soll, das sieht bisher wie folgt aus:


$x = rand(1,100);
$y = rand(1,100);
$z = $x/$y;


Natürlich kommen da die unmöglichsten Lösungen raus ... z.B. 5:7 = 0.714 usw. ...
Jetzt wollte ich aber das $y eine Teilermenge von $x ist, als quasi 9:$y ($y wäre dann {1,3,9} ) ... und diese Teilermenge soll dann von allen möglichen zufällig ausgewählt werden.

Wie sich das umsetzen lässt erschließt sich mir jedoch nicht, kann mir da zufällig jemand helfen?

Indyk
17.11.2011, 11:24:16
Hallo Maggi,

eine möglichkeit wäre mit dem modulo opperator zu arbeiten.

ich könnte mir sowas vorstellen (kein anspruch auf perfektion)

$x = rand(1,100);
$y = rand(1,100);

// erhöhe $y bis es eine teilmenge von $x ist
while ($x % $y != 0) {
$y += 1;
}

echo $x . ' durch ' . $y;


das kann man natürlich noch verbessern, man sollte z.b. darauf achten das $y immer kleiner ist als $x.

Vielleicht hilft dir das kleine beispiel ja schon.