Registriert seit: 25. Mär 2009
18 Beiträge
|
AW: Sammlung von Problemen
13. Dez 2010, 19:43
Code:
{---------------------------------------- Prozeduren ----------------------------------------}
function Kontrolle(loesung,ergebnis:integer):boolean;
begin
If Loesung = Ergebnis then richtig:= true
else richtig:= false;
end;
function KontrolleAddition(zahl1, zahl2: integer):boolean;
var zahlgesadd: integer;
begin
zahlgesadd:= zahl1+zahl2;
if zahlgesadd > 99 then loesbar:= false
else loesbar:= true;
end;
function KontrolleSubtraktion(zahl1, zahl2: integer):boolean;
var zahlgessub: integer;
begin
zahlgessub:= zahl1 - zahl2;
if zahlgessub < 0 then loesbar:= false
else if zahlgessub > 99 then loesbar:= false
else loesbar:= true;
end;
function KontrolleDivision(zahl1, zahl2: integer):boolean;
var zahlgesdiv: integer;
begin
zahlgesdiv:= Zahl1 mod zahl2;
if zahlgesdiv = 0 then loesbar:= true
else loesbar:= false;
end;
function KontrolleMultiplikation(zahl1, zahl2: integer):boolean;
var zahlgesmult: integer;
begin
zahlgesmult:= Zahl1* zahl2;
if zahlgesmult > 99 then loesbar:= false
else loesbar:= true;
end;
{--------------------------------------- Aufgaben ---------------------------------------}
Procedure Aufgabe1;
var a:integer;
begin
randomize;
a:= random(4)+1;
case a of
1: begin
repeat
begin
zahl1:= random(100);
zahl2:= random(100);
end;
until KontrolleAddition(zahl1, zahl2) = true;
end;
2: begin
repeat
begin
zahl1:= random(100);
zahl2:= random(100);
end;
until KontrolleSubtraktion(zahl1, zahl2) = true;
end;
3: begin
repeat
begin
zahl1:= random(15);
zahl2:= random(15);
end;
until Kontrollemultiplikation(zahl1, zahl2) = true;
end;
4: begin
repeat
begin
zahl1:= random(100);
zahl2:= random(100);
end;
until KontrolleDivision(zahl1, zahl2) = true;
end;
end;
end;
Wenn ich den Code aufrufe kommts zum Absturz ... also des Programms.
Wo liegt der Fehler?
|
|
|