Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
Delphi XE3 Enterprise
|
AW: Magisches Quadrat - Delphi/Pascal
1. Mai 2012, 23:38
Zur 3*3 Ausgabe
Wenn Du Deine "Debugausgaben" im Memo anschaust siehst Du dass der der Fehler an 7
auftritt, die Prüfung nach 6
if StringGrid1.Cells[X+1, Y+1]='' then
verwendet hier X und Y jeweils 2 und greift hiermit auf [3,3] zu welche gar nicht definiert ist.
Der ganze Aufbau ist fehleranfällig und unnötig kompliziert.
Schreibe doch den Algorithmus ohne Stringgrid nur mit dem Array (initialisiert mit 0).
Statt auf [X+1,Y+1]zu prüfen inkrementiere die Variablen direkt, verarbeite den Überlauf und prüfe dann im Array, wenn dort nicht 0 steht die Folgeschritte entsprechend.
Am Schluss das Array im Stringgrid ausgeben.
Thomas Wassermann H₂♂ Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂♂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
|