Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

kieni17

Frischling

  • »kieni17« ist der Autor dieses Themas

Beiträge: 53

Wohnort: Österreich

Beruf: Schüler

  • Private Nachricht senden

11

26.09.2010, 12:13

ok bin schon Fertig mit 4-Gewinnt hier meine Prüfung

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
    if(spielfeld[5][0].spieler==1 && spielfeld[4][1].spieler==1 && spielfeld[3][2].spieler==1 && spielfeld[2][3].spieler==1 ||
        spielfeld[4][1].spieler==1 && spielfeld[3][2].spieler==1 && spielfeld[2][3].spieler==1 && spielfeld[1][2].spieler==1 ||
        spielfeld[3][2].spieler==1 && spielfeld[2][3].spieler==1 && spielfeld[1][4].spieler==1 && spielfeld[0][5].spieler==1 ||
        spielfeld[4][0].spieler==1 && spielfeld[3][1].spieler==1 && spielfeld[2][2].spieler==1 && spielfeld[1][3].spieler==1 ||
        spielfeld[3][1].spieler==1 && spielfeld[2][2].spieler==1 && spielfeld[1][3].spieler==1 && spielfeld[0][4].spieler==1 ||
        spielfeld[3][0].spieler==1 && spielfeld[2][1].spieler==1 && spielfeld[1][2].spieler==1 && spielfeld[0][3].spieler==1 ||
        spielfeld[5][1].spieler==1 && spielfeld[4][2].spieler==1 && spielfeld[3][3].spieler==1 && spielfeld[2][4].spieler==1 ||
        spielfeld[4][2].spieler==1 && spielfeld[3][3].spieler==1 && spielfeld[2][4].spieler==1 && spielfeld[1][5].spieler==1 ||
        spielfeld[3][3].spieler==1 && spielfeld[2][4].spieler==1 && spielfeld[1][5].spieler==1 && spielfeld[0][6].spieler==1 ||
        spielfeld[5][2].spieler==1 && spielfeld[4][3].spieler==1 && spielfeld[3][4].spieler==1 && spielfeld[2][5].spieler==1 ||
        spielfeld[4][3].spieler==1 && spielfeld[3][4].spieler==1 && spielfeld[2][5].spieler==1 && spielfeld[1][6].spieler==1 ||
        spielfeld[5][3].spieler==1 && spielfeld[4][4].spieler==1 && spielfeld[3][5].spieler==1 && spielfeld[2][6].spieler==1 )
        Win1=true;

Architekt

Community-Fossil

Beiträge: 2 481

Wohnort: Hamburg

Beruf: Student

  • Private Nachricht senden

12

26.09.2010, 12:59

Ich bin mir ziemlich sicher: mit einer Funktion würdest du dir nicht nur Code, sondern auch Zeit sparen.
Der einfachste Weg eine Kopie zu entfernen ist sie zu löschen.
- Stephan Schmidt -

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

13

26.09.2010, 13:19

Zeit wohl kaum, geschrieben ist es ja nun schon. ;) Aber es ginge mit weniger Code.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

14

26.09.2010, 15:16

Ohman hau wenigstens das ganze in ne Schleife ... is ja echt mal zum kotzen ^^

Warum hasse denn deinen Array jetzt immernoch aus deiner Struct bestehen? ... nen einfaches unsigned char array reicht schon.

C-/C++-Quelltext

1
2
3
4
// leer
array[x][y] = 0;
// belegt mit player
array[x][y] = player;
... gewinnprüfung kannst z.B. einfach ne schleife von 0 ... (breite - 4) laufen lassen und dann einfach gucken ob 4 in folge gleich und ungleich 0 sind. und das auch mitn rest. geht aber meine ich noch viel kürzer ^^
Devil Entertainment :: Your education is our inspiration
Der Spieleprogrammierer :: Community Magazin
Merlin - A Legend awakes :: You are a dedicated C++ (DirectX) programmer and you have ability to work in a team? Contact us!
Siedler II.5 RttR :: The old settlers-style is comming back!

Also known as (D)Evil

NachoMan

Community-Fossil

Beiträge: 3 885

Wohnort: Berlin

Beruf: (Nachhilfe)Lehrer (Mathematik, C++, Java, C#)

  • Private Nachricht senden

15

26.09.2010, 15:30

1. möglichkeit: funktion schreiben die die farbe(die id vom letzten spieler des letzten zugs) und position des zuletzt gesetzen steins annimmt. dann gehst du von der position in jede richtung bis ne andere farbe kommt und zählst die anzahl der gleichfarbigen steine in einer reihe.
2. möglichkeit: du übergibst der funktion nur die farbe und gehst jede reihe durch und zählst die steine. wenn sie durch eine andere farbe unterbrochen werden setzt du den zähler zurück auf null, wenn er vier erreicht hat der spieler gewonnen.

ich würds mit der ersten möglichkeit machen. wenn du das prinzip nicht verstehst solltest du vielleicht nochmal was leichteres probieren. schiffe versenken ohne KI oder so.
"Der erste Trunk aus dem Becher der Erkenntnis macht einem zum Atheist, doch auf dem Grund des Bechers wartet Gott." - Werner Heisenberg
Biete Privatunterricht in Berlin und Online.
Kommt jemand mit Nach oMan?

Werbeanzeige

Ähnliche Themen