Also ich speichere eigentlich nur die Länge der "Bereiche"...
Und ein Bereich ist eine Spanne von zusammenhängenden Zahlen:
1, 2, 3,
4, 5, 6, 7, 8, 9
Das wären zum Beispiel 4 Bereiche.
Und nun habe ich eine Zahl zwischen 1 und 9 und möchte gucken, in welchen Bereich diese liegt.
Ich habe mal darüber nachgedacht und folgendes gedacht:
Delphi-Quellcode:
BereicheSum := 0;
for i := 0 to High(Bereiche) do begin
if (Zahl >= BereicheSum) and (Zahl <= BereicheSum + Bereiche[i]) then
Showmessage('Bereich gefunden: ' + IntToStr(i));
BereicheSum := BereicheSum + Bereiche[i];
end;
Nur bekomme ich eine
AV bei folgenden (?):
1
2
Zahl = 1
Ich kann mir schon irgendein dummen Fehler denken