array auf 4 nacheinander gleichen zeichen absuchen



  • Hallo, wollt mal fragen wie ihr das machen würdet:

    in einem array werden max. 6 zeichen abgespeichert und zwar 'o' oder 'x'

    ich müsste eine funktion schreiben die schaut ob in diesem array 4 gleiche zeichen nacheinander vorkommen, und auch das zeichen identifiziert und zurück gibt von dem 4 zeichen nacheinander existieren.

    mein erster ansatz:

    int Check()
    {
    
    	int i,k;
    	int won = 0;
    
    	for(i = 0; i<= 2; i++) //ich muss die schleife nur bis 2 laufen lassen
    	{                      //weil ab 3. position keine 4 gleiche zeichen mehr möglic
    		for(k = 0; k < 3;k++)
    		{
    			if(field[i] != pfield[i+k]) {won = 0; break;}
    			else won = field[i+k]; //das char/int was gleich ist
    		}
    	}
    	if ( won > 1) return 1;
    	else return 0;
    }
    


  • Hi!
    Ich würde won vor jedem Durchlauf mit 1 initialisieren und für jede Übereinstimmung von
    field[i] == field[i+k];
    won um 1 hochzählen lassen. Bei won == 4 kommen 4 gleiche Zeichen hintereinander in field vor.

    Gruß,
    B.B.



  • Ich würde mit der Standardfunktion strstr nach "oooo" bzw. nach "xxxx" suchen.



  • 4 gewinnt 🙂 wo können wie das spiel test ?


Log in to reply