Schönen Abend @All,
mein aktuelles Problem ist, dass die If Abfrage irgendwie
gar nicht auf das reagiert, was da tatsächlich abgefragt wird.
Meine Abfrage läuft nämlich darauf hinaus, dass ich überprüfe
ob die Rechenoperation " / " (geteilt) vorliegt, falls ja, dann
wird überprüft ob Zahl1 größer ist als Zahl2 (damit eine Teilung
nie < 0 ergibt) ist. Ebenso wird dann geprüft ob die Teilung der
Zahl1 durch Zahl2 einen Rest von 0 ergibt. Im Kontext zur der
Abfrage davor will ich also nur das ganzzahlige Werte über 0
entstehen können.
Falls diese gewünschten Werte nicht vorliegen sollen sie eben
per repeat until erzeugt werden.
Ich wollte euch fragen wieso ich allerdings trotzdem immer noch
Rechnungne wie 2 / 8 etc. rausbekomme?
Danke schonmal für die Mühe
!
Delphi-Quellcode:
function ZufallsOperator() : String;
var Zahl : Integer; Operator : String;
begin
Zahl := Random(4)+1;
case Zahl of
1: Operator := '+';
2: Operator := '-';
3: Operator := '/';
4: Operator := '*';
end;
Result := Operator;
end;
// -------------------------------------------------
function ZufallsZahl(Auswahl : Integer) : Integer;
begin
case Auswahl of
1: Auswahl := Random(9)+2;
2: Auswahl := Random(14)+2;
3: Auswahl := Random(19)+2;
end;
Result := Auswahl;
end;
[.......]
if RadioButton1.Checked = True then // Radiobutton 1
begin
Radiobox := 1;
Operator := ZufallsOperator();
Zahl1 := ZufallsZahl(Radiobox);
Zahl2 := ZufallsZahl(Radiobox);
IF Operator = '/' then
(Zahl1 > Zahl2) AND (Zahl1 MOD Zahl2 = 0) then
begin
repeat
Zahl1 := ZufallsZahl(Radiobox);
Zahl2 := ZufallsZahl(Radiobox);
until
(Zahl1 MOD Zahl2 = 0) AND (Zahl1 > Zahl2) ;
end;
end;
[...]