Zitat von
WS1976:
Hallo,
entstschuldige aber das kann so nie gelaufen sein!
Delphi-Quellcode:
type Tfrage = array [1..9] of Integer;
Function isValid(const a:Tfrage):Boolean;
var s1,s2,s3:string;
begin
s1 := a[1]+a[2]+a[3]+a[4];
s2 := a[5]+a[6]+a[7]+a[4];
s3 := inttostr(strtoint(s1)+strtoint(s2));
if length(s3) = 5 then
result := (s3[1] = a[5]) and (s3[2] = a[6]) and (s3[3] = a[8]) and (s3[4] = a[4]) and (s3[5] = a[9])
else
result := false;
end;
Ich denke, an dieser Stelle wurde das Prinzip erklärt. Der Code muss ja nicht unbedingt funktionstüchtig sein. Nur von der Logik muss er ja stimmen.
Zitat von
WS1976:
result := (s3[1] = a[5]) and (s3[2] = a[6]) and (s3[3] = a[8]) and (s3[4] = a[4]) and (s3[5] = a[9])
Erklär mir doch bitte mal diese Zeile. Vielleicht kann ich was dazulernen.
Grüsse
Rainer
"(...) and (...) and (...)" ist nichts anderes als ein Boolean-Wert.
Die Zeile sollte so sogar stimmen, obwohl ich das persönlich so nie hinschreibe. Weiß jetzt nicht genau, ob Delphi da meckert.