Sehr unsauber programmiert:
1) _NIE_ Globale variablen verwenden
2) Du hast einen abschnitt des spiels praktisch 10 mal drin...1 mal würde auch reichen
3) Funktioniert es nicht sauber. Finde selber raus warum
4) Design der Funktionen nicht optimal ( siehe unteranderem punkt 2 ).
5) Deine Funktionen haben seiteneffekte (Die funktionen greifen in die andere funktion ein, d.h, die eine funktion muss wissen wie die andere funktion funktiniert, dies ist jedoch nicht der sinn von funktoinen. Auch globale variablen gehören hier hinein)
Aber für einen Anfänger recht gut.
Zu punkt zwei:
Code:
if ((feld[0] == feld[1]) && (feld[1]== feld[2]))
{
if (feld[0] != 0) // Verhindert das mit leeren Feldern die Gewinn-bedingung erfüllt werden kann.
{
if (feld[0] == 111) // Überprüft welcher Spieler Gewonnen hat.
{
ascii(2); // Gewinnmeldung wird für Spieler 2 ausgegeben.
return 1; // Die Anweisung gibt true zurück.
}
ascii(1);
return 1;
}
}
Hast du 9 mal drin. Alle tun immer wieder das gleiche. Einmal reicht auch, findest du nicht?
Ach ja, kommentare sind adfür da um Codestellen zu beschreiben, in denen es nicht auf den ersten blick ersichtlich ist, was dieser code eigentlich genau macht.
Code:
return 1 //gibt true zurück
Jeder sieht, dass da eine 1, bzw "true" zurück gegeben wird, warum kommentierst du es dann?