Zweifache for-Schleife abbrechen
-
oder du machst aus den beiden schleifen eine...
-
Windalf schrieb:
oder du machst aus den beiden schleifen eine...
wie sollte das aussehen ohne image zu verändern?
-
camper schrieb:
du könntest auch standardalgorithmen nehmen, z.b. die innere schleife durch find ersetzen
Welche Standardalgorithmen gibt es, um Adressen zu vergleich?
Oder habe ich dich falsch verstanden? /Edit: Habe wohl etwas übersehenAlso ich habe es erstmal mit goto gelöst, auch wenn ich es eigentlich nicht mag, aber es ist noch eleganter als mit der temporären Boolean-Variable.
Würde mich trotzdem über weitere Vorschläge freue.
-
ungetestet
for(spalte=zeile=1;spalte<Form1->n+1;++spalte,zeile==n?zeile=1:++zeile) if(clicked==image[spalte][zeile])break;
-
oh gott, bloß nicht!
mit return rausspringen, wie waldi schrieb, ist am besten.
bzw. standard-find nehmen oder ein eigenes schreiben.
-
oh gott, bloß nicht!
hey er hat gefragt. Ich habe nicht gesagt das ich diese Lösung bevorzuge
(höchstens wenn ich mit interpreter und rackwitz um den kürzesten Code kämpfe
)
-
Mit kleinen Abänderungen funktioniert es:
for(spalte=zeile=1;spalte<Form1->n+1&&zeile<Form1->n+1;zeile==Form1->n?spalte++:0,zeile==Form1->n?zeile=1:zeile++) if(clicked==image[spalte][zeile])break;
Ok dankeschön. Die Frage ist bloß ob es sich lohnt für den Nutzen einen so großen Aufwand zu betreiben, aber wieso eigentlich nicht?
Grüße
-
Windalf schrieb:
ungetestet
for(spalte=zeile=1;spalte<Form1->n+1;++spalte,zeile==n?zeile=1:++zeile) if(clicked==image[spalte][zeile])break;
ja, sowas hab ich mir auch geacht ... aber fragen muss eben auch bestraft werden
-
DrGreenthumb schrieb:
oh gott, bloß nicht!
mit return rausspringen, wie waldi schrieb, ist am besten.
Waldi? Ich bin doch kein Hund! *kläff*
-
oh, naja, hätte ja von Waldemar kommen können
Windalf schrieb:
oh gott, bloß nicht!
hey er hat gefragt. Ich habe nicht gesagt das ich diese Lösung bevorzuge
)
ja, dachte ich mir schon. Wollts nur deutlich machen bevor der blödsinn übernommen wird