003
19.08.2003, 21:14 Uhr
virtual
Sexiest Bit alive (Operator)
|
Ich denke, wenn Du sowas schreibst:
C++: |
if(!i+3>=SPALTE) ...
|
Meinst Du eigentlich:
Zitat: |
Wenn es nicht zutrifft, daß i + 3 größer oder gleich SPALTE ist, dann...
|
Um diese Aussage genau abzubilden müßtest Du beachten, daß der ! - Operator stärker bindet als das +; eigentlich willst Du schreiben:
C++: |
if (!(i+3>=SPALTE)) ...
|
Aber eigentlich könnte man ja gleich sagen:
Zitat: |
Wenn es zutrifft, daß i + 3 kleiner als SPALTE ist, dann...
|
Ist nicht nur in der deutschen Sprache einfacher zu verstehen, sondern auch im Quelltext:
Weiterhin solltest Du - grade bei etwas geschachtelten Dingen - nicht meinen schlechten Stil kopieren und die Geschweiften Klammern fortlassen. Dann fallen Dir vielleicht eher mal solche Sachen auf:
C++: |
if(Feld[ i ][j]==0)break; else break;
|
Also doch einfach "break;". Ob das jetzt das gewünschte ist, weiß ich auch nicht...
Vom Gedankengang ist das sicherlich iO, was Du da machst, aber ob es übersichtlich ist? Warum zB packst Du alles in eine Schleife, obwohl mal für die Diagonalen die Eckbereich auf jeweils zwei Seiten den Spielbrettes auf jedenfall ausklammern könnte (Ich glaube, du versuchst das mit dem if(!i ...)): Die If abfrage könnte man sich also mit einer geeigneteren, gesonderten Schleife schenken.
Schließlich: Auf die defines würde ich verzichten, die Haben gegenüber einem enum eigentlich nur Nachteile (jedenfalls in dem Anwendungsgebiet einfache Konstanten definieren zu wollen).
Ich denke aber, wenn Du ein Anfänger bist, kann man Dir das alles verzeihen (also nicht traurig sein wgen der Kritik, so werden vermutlich meine Programme auch mal ausgesehen haben!) -- Gruß, virtual Quote of the Month Ich eß' nur was ein Gesicht hat (Creme 21) Dieser Post wurde am 19.08.2003 um 21:15 Uhr von virtual editiert. |