Sowas ist nicht nötig:
Delphi-Quellcode:
begin
if Edit2.Text > Edit1.Text then ShowMessage('Invalide Eingabe');
end;
Dafür braucht man keinen Begin End Block. Das reicht:
Delphi-Quellcode:
if Edit2.Text > Edit1.Text then ShowMessage('Invalide Eingabe');
//
Auch hier ist es unnötig:
Delphi-Quellcode:
begin
if Edit2.Text <= Edit1.Text then
maxpunktzahl:=StrToInt(Edit1.Text);
schülerpunkte:=StrToInt(Edit2.Text);
Minpunkte[1]:=(maxpunktzahl/100)*96;
Minpunkte[2]:=(maxpunktzahl/100)*80;
Minpunkte[3]:=(maxpunktzahl/100)*60;
Minpunkte[4]:=(maxpunktzahl/100)*40;
Minpunkte[5]:=(maxpunktzahl/100)*20;
Minpunkte[6]:=(maxpunktzahl/100)*0;
StringGrid1.Cells[1,1]:=FloatToStr(Ceil(Minpunkte[1]));
StringGrid1.Cells[1,2]:=FloatToStr(Ceil(Minpunkte[2]));
StringGrid1.Cells[1,3]:=FloatToStr(Ceil(Minpunkte[3]));
StringGrid1.Cells[1,4]:=FloatToStr(Ceil(Minpunkte[4]));
StringGrid1.Cells[1,5]:=FloatToStr(Ceil(Minpunkte[5]));
StringGrid1.Cells[1,6]:=FloatToStr(Ceil(Minpunkte[6]));
begin
Geht man davon aus, dass die Einrückung nach
maxpunktzahl:=StrToInt(Edit1.Text);
nicht zufällig ist, sondern die anderen Zeilen mit bei der Abfrage einbezogen werden sollen, dann sollte das so aussehen:
Delphi-Quellcode:
if Edit2.Text <= Edit1.Text then
begin
maxpunktzahl:=StrToInt(Edit1.Text);
schülerpunkte:=StrToInt(Edit2.Text);
Minpunkte[1]:=(maxpunktzahl/100)*96;
Minpunkte[2]:=(maxpunktzahl/100)*80;
Minpunkte[3]:=(maxpunktzahl/100)*60;
Minpunkte[4]:=(maxpunktzahl/100)*40;
Minpunkte[5]:=(maxpunktzahl/100)*20;
Minpunkte[6]:=(maxpunktzahl/100)*0;
StringGrid1.Cells[1,1]:=FloatToStr(Ceil(Minpunkte[1]));
StringGrid1.Cells[1,2]:=FloatToStr(Ceil(Minpunkte[2]));
StringGrid1.Cells[1,3]:=FloatToStr(Ceil(Minpunkte[3]));
StringGrid1.Cells[1,4]:=FloatToStr(Ceil(Minpunkte[4]));
StringGrid1.Cells[1,5]:=FloatToStr(Ceil(Minpunkte[5]));
StringGrid1.Cells[1,6]:=FloatToStr(Ceil(Minpunkte[6]));
end;
Und was die Abfragen angeht, aus dem:
Delphi-Quellcode:
if (schülerpunkte >= Minpunkte[1]) then Edit3.Text:='1' else
begin
if (schülerpunkte >= Minpunkte[2]) then Edit3.Text:='2' else
begin
if (schülerpunkte >= Minpunkte[3]) then Edit3.Text:='3' else
begin
if (schülerpunkte >= Minpunkte[4]) then Edit3.Text:='4' else
begin
if (schülerpunkte >= Minpunkte[5]) then Edit3.Text:='5' else
begin
if (schülerpunkte >= Minpunkte[6]) then Edit3.Text:='6' else
end;
end;
end;
end;
end;
mach das:
Delphi-Quellcode:
if (schülerpunkte >= Minpunkte[1]) then Edit3.Text:='1'
else if (schülerpunkte >= Minpunkte[2]) then Edit3.Text:='2'
else if (schülerpunkte >= Minpunkte[3]) then Edit3.Text:='3'
else if (schülerpunkte >= Minpunkte[4]) then Edit3.Text:='4'
else if (schülerpunkte >= Minpunkte[5]) then Edit3.Text:='5'
else if (schülerpunkte >= Minpunkte[6]) then Edit3.Text:='6'
else
begin
end;