Ir para conteúdo
Fórum Script Brasil

Daniel Soares

Membros
  • Total de itens

    2
  • Registro em

  • Última visita

Posts postados por Daniel Soares

  1. Olá amigos, eu me chamo Daniel e sou aluno de ADS, alguns dias atrás eu encontrei um código pela internet de um jogo da velha simples, o código funciona perfeita mente, porèm, eu queria adaptar o programa para executar novamente, e é ai que està o problema, eu não consigo fazer o programa zerar e reiniciar novamente a partida, vou inserir o código logo abaixo, desde já agradeço sua ajuda.

    P.S 1 Já tentei colocar system("cls") em quase todos os lugares possiveis do código, mas não resolveu.

    #include <iostream>
    #include <stdlib.h>

    using namespace std;

    char matriz[3][3] = {'1','2','3','4','5','6','7','8','9'};
    int n;
    char jog = 'X';
    char sair = 's';
    bool s = true;

    void Jogo(){
        system("cls");
        cout << "\n   JOGO  DA  VELHA\n\n";
        for (int a=0;a<3;a++){
           cout << "\t";
             for (int j=0;j<3;j++){
                cout << matriz[a][j] << " ";
            }
            cout << "\n";
        }
        cout << "\n";
    }
    void Entrada(){
        int p;
        cout << "Digite um numero: ";
        cin >> p;
        
        if (p==1){
            if(matriz[0][0] == '1'){
                matriz[0][0] = jog;
            }
            else{
                cout << "\nJogada invalida! Tente novamente.\n\n";
                Entrada();
            }
        }
        else if(p==2){
            if(matriz[0][1] == '2'){
                matriz[0][1] = jog;
            }
            else{
                cout << "\nJogada invalida! Tente novamente.\n\n";
                Entrada();
            }
        }
        else if(p==3){
            if(matriz[0][2] == '3'){
                matriz[0][2] = jog;
            }
            else{
                cout << "\nJogada invalida! Tente novamente.\n\n";
                Entrada();
            }
        }
        else if(p==4){
            if(matriz[1][0] == '4'){
                matriz[1][0] = jog;
            }
            else{
                cout << "\nJogada invalida! Tente novamente.\n\n";
                Entrada();
            }
        }
        else if(p==5){
            if(matriz[1][1] == '5'){
                matriz[1][1] = jog;
            }
            else{
                cout << "\nJogada invalida! Tente novamente.\n\n";
                Entrada();
            }
        }
        else if(p==6){
            if(matriz[1][2] == '6'){
                matriz[1][2] = jog;
            }
            else{
                cout << "\nJogada invalida! Tente novamente.\n\n";
                Entrada();
            }
        }
        else if(p==7){
            if(matriz[2][0] == '7'){
                matriz[2][0] = jog;
            }
            else{
                cout << "\nJogada invalida! Tente novamente.\n\n";
                Entrada();
            }
        }
        else if(p==8){
            if(matriz[2][1] == '8'){
                matriz[2][1] = jog;
            }
            else{
                cout << "\nJogada invalida! Tente novamente.\n\n";
                Entrada();
            }
        }
        else if(p==9){
            if(matriz[2][2] == '9'){
                matriz[2][2] = jog;
            }
            else{
                cout << "\nJogada invalida! Tente novamente.\n\n";
                Entrada();
            }
        }
    }
    void Alterna(){
        if (jog == 'X')
            jog = 'O';
        else
            jog = 'X';
    }

    char Vencedor(){

        // Jogador 1

        if (matriz[0][0] == 'X' && matriz[0][1] == 'X' && matriz[0][2] == 'X')
            return 'X';
        if (matriz[1][0] == 'X' && matriz[1][1] == 'X' && matriz[1][2] == 'X')
            return 'X';
        if (matriz[2][0] == 'X' && matriz[2][1] == 'X' && matriz[2][2] == 'X')
            return 'X';

        if (matriz[0][0] == 'X' && matriz[1][0] == 'X' && matriz[2][0] == 'X')
            return 'X';
        if (matriz[0][1] == 'X' && matriz[1][1] == 'X' && matriz[2][1] == 'X')
            return 'X';
        if (matriz[0][2] == 'X' && matriz[1][2] == 'X' && matriz[2][2] == 'X')
            return 'X';

        if (matriz[0][0] == 'X' && matriz[1][1] == 'X' && matriz[2][2] == 'X')
            return 'X';
        if (matriz[0][2] == 'X' && matriz[1][1] == 'X' && matriz[2][0] == 'X')
            return 'X';

        //Jogador2

        if (matriz[0][0] == 'O' && matriz[0][1] == 'O' && matriz[0][2] == 'O')
            return 'O';
        if (matriz[1][0] == 'O' && matriz[1][1] == 'O' && matriz[1][2] == 'O')
            return 'O';
        if (matriz[2][0] == 'O' && matriz[2][1] == 'O' && matriz[2][2] == 'O')
            return 'O';

        if (matriz[0][0] == 'O' && matriz[1][0] == 'O' && matriz[2][0] == 'O')
            return 'O';
        if (matriz[0][1] == 'O' && matriz[1][1] == 'O' && matriz[2][1] == 'O')
            return 'O';
        if (matriz[0][2] == 'O' && matriz[1][2] == 'O' && matriz[2][2] == 'O')
            return 'O';

        if (matriz[0][0] == 'O' && matriz[1][1] == 'O' && matriz[2][2] == 'O')
            return 'O';
        if (matriz[0][2] == 'O' && matriz[1][1] == 'O' && matriz[2][0] == 'O')
            return 'O';

        return 'e';
    }

    int main(){
         
       while (s == true){
             Jogo();    
            while (true){
                n++;
                Entrada();
                Jogo();
                    if (Vencedor() == 'X'){
                        cout << "Jogador X Venceu!\n\n";
                        break;
                    }
                    else if(Vencedor() == 'O'){
                        cout << "Jogador O Venceu!\n\n";
                       break; 
                    }
                    else if(Vencedor() == 'e' &&     n == 9){
                        cout << "Deu empate!\n\n";
                        break;
                    }       
                   Alterna();
            }
           cout << "Jogar novamente?\n(s/n): ";
            cin >> sair;
            
            if(sair == 's' || sair == 'S'){
                s = true;
            }
            else if(sair == 'n' || sair == 'N'){
                s = false;
                break;
            }
        }
        system("pause");
    }

×
×
  • Criar Novo...