Ir ao conteúdo
  • Cadastre-se

C Jogo de dados compilação


Anacris109

Posts recomendados

Quando compilo o meu código aparece amensagem:multi-character character constant

O que eu faço?

Meu código:
 

#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
#include <time.h>

int main()
{
    char continuar='s';
    Setlocale(LC_ALL,"Portuguse");
    srand(time(NULL));

    printf("\n\n\t\tBemvindo ao jogo de dados !\n");
    printf("\n\n\t\tAs regras desse jogo são:\n");
    printf("\n\tO ganhador será definido de acordo com os números obtidos após jogar dois dados.");
    printf("\n\\tPor exemplo, se o resultado do lançamento inicial for 7 ou 11, o vencedor é o jogador, e o jogo termina.");
    printf("\n\tJá quando o lançamento inicial resulta em 2 ou 3, quem ganha é o computador, e o jogo termina.");
    printf("\n\tHá ainda a possibilidade de que o lançamento inicial seja 4, 5, 6, 8, 9, 10 ou 12.");
    printf("\n\tNesses casos, o número específico que foi obtido com a jogada dos dados, se torna o chamado ''ponto do jogador''.");
    printf("\n\tA partir de agora o jogador e o computador devem jogar os dados alternadamente,");
    printf("\n\taté que um dos dois atinjam o ''ponto do jogador'', ou o numero 7.");
    printf("\n\tCaso o número seja o ''ponto do jogador'', quem ganha é quem acertou .");
    printf("\n\tCaso seja 7 quem ganha é o computador.\n");
    
    printf("\n\n\\t\tDeseja jogar? Sim(s) Não(n):");
    scanf("%s",&continuar);
    system("pause");

while(continuar=='s')
    {
        int ponto jogador,A,B,n,j;
        int ponto jogador=p;  
    
        printf("\n\tO número sorteado foi:%d\n",n,rand()%12);
        scanf("%d",&n);
        if(n=='7' || n=='11')
         {
          printf("\n\n\t\tVOCÊ GANHOU !!!");
         }
        if(n=='2' || n=='3')
         {
          printf("\n\n\t\tVOCÊ PERDEU");
         }
        
        for(n>=4;n<=12;n==p)
        
        {
          printf("\n\tJogada número:%i",j>=1 ; j++ ; j!=0);
          scanf("%i",&j);
          printf("\n\n\n\t\t\tO ponto do jogador é:%d",p);
          scanf("%d",&p);
          printf("\n\n\t\tnúmero sorteado jogador:%i",rand()%12);
          scanf("%i",&A);
          printf("\n\n\t\tnúmero sorteado computador:%i",rand()%12);
          scanf("%i",&B);
        
          if(A=='p')
          {
            printf("\n\n\t\tVocê tirou o ponto do jogador");
            printf("\n\n\t\tVOCÊ GANHOU !!!!");    
          }
          if(B=='p')
          {
               printf("\n\n\t\tO computador tirou o ponto do jogador");
            printf("\n\n\t\tVOCÊ PERDEU ");
          }
          if(A=='7')
          {
              printf("\n\n\t\tVocê tirou um 7 \n");
            printf("\n\n\\t\tVOCÊ PERDEU ");
          }
          if(B=='7')
          {
              printf("\n\n\t\tO computador tirou um 7 \n");
              printf("\n\n\t\tVOCÊ PERDEU ");
          }
       }
       
       while(continuar=='s')
       printf("\n\n\t\tDeseja jogar novamente? Sim(s) Não(n)");
       sanf("%s",&continuar)
       system("pause");
       
    }
    
}

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

 

Use o tal botão code como explicado no primeiro post do forum....

 

Tem muita coisa errada em seu programa ainda.

 

Que são essas linhas por exemplo?
 

        int ponto jogador, A, B, n, j;
        int ponto jogador = p;

 

E isso?

 

    Setlocale(LC_ALL, "Portuguse");

 

tem um livro? um manual? o nome da função não é esse. E nem a grafia do idioma.

 

#include <stdio.h>
#include <locale.h>
#include <stdlib.h>
#include <time.h>

int main()
{
    char continuar = 's';
    Setlocale(LC_ALL, "Portuguse");
    srand(time(NULL));

    printf("\n\n\t\tBemvindo ao jogo de dados !\n");
    printf("\n\n\t\tAs regras desse jogo são:\n");
    printf(
        "\n\tO ganhador será definido de acordo com os "
        "números obtidos após jogar dois dados.");
    printf(
        "\n\\tPor exemplo, se o resultado do lançamento "
        "inicial for 7 ou 11, o vencedor é o jogador, e o "
        "jogo termina.");
    printf(
        "\n\tJá quando o lançamento inicial resulta em 2 "
        "ou 3, quem ganha é o computador, e o jogo "
        "termina.");
    printf(
        "\n\tHá ainda a possibilidade de que o lançamento "
        "inicial seja 4, 5, 6, 8, 9, 10 ou 12.");
    printf(
        "\n\tNesses casos, o número específico que foi "
        "obtido com a jogada dos dados, se torna o chamado "
        "''ponto do jogador''.");
    printf(
        "\n\tA partir de agora o jogador e o computador "
        "devem jogar os dados alternadamente,");
    printf(
        "\n\taté que um dos dois atinjam o ''ponto do "
        "jogador'', ou o numero 7.");
    printf(
        "\n\tCaso o número seja o ''ponto do jogador'', "
        "quem ganha é quem acertou .");
    printf("\n\tCaso seja 7 quem ganha é o computador.\n");

    printf("\n\n\\t\tDeseja jogar? Sim(s) Não(n):");
    scanf("%s", &continuar);
    system("pause");

    while (continuar == 's')
    {
        int ponto jogador, A, B, n, j;
        int ponto jogador = p;

        printf(
            "\n\tO número sorteado foi:%d\n", n,
            rand() % 12);
        scanf("%d", &n);
        if (n == '7' || n == '11')
        {
            printf("\n\n\t\tVOCÊ GANHOU !!!");
        }
        if (n == '2' || n == '3')
        {
            printf("\n\n\t\tVOCÊ PERDEU");
        }

        for (n >= 4; n <= 12; n == p)

        {
            printf("\n\tJogada número:%i", j >= 1; j++;
                   j != 0);
            scanf("%i", &j);
            printf(
                "\n\n\n\t\t\tO ponto do jogador é:%d", p);
            scanf("%d", &p);
            printf(
                "\n\n\t\tnúmero sorteado jogador:%i",
                rand() % 12);
            scanf("%i", &A);
            printf(
                "\n\n\t\tnúmero sorteado computador:%i",
                rand() % 12);
            scanf("%i", &B);

            if (A == 'p')
            {
                printf(
                    "\n\n\t\tVocê tirou o ponto do "
                    "jogador");
                printf("\n\n\t\tVOCÊ GANHOU !!!!");
            }
            if (B == 'p')
            {
                printf(
                    "\n\n\t\tO computador tirou o ponto do "
                    "jogador");
                printf("\n\n\t\tVOCÊ PERDEU ");
            }
            if (A == '7')
            {
                printf("\n\n\t\tVocê tirou um 7 \n");
                printf("\n\n\\t\tVOCÊ PERDEU ");
            }
            if (B == '7')
            {
                printf(
                    "\n\n\t\tO computador tirou um 7 \n");
                printf("\n\n\t\tVOCÊ PERDEU ");
            }
        }

        while (continuar == 's')
            printf(
                "\n\n\t\tDeseja jogar novamente? Sim(s) "
                "Não(n)");
        sanf("%s", &continuar) system("pause");
    }

 

  • Curtir 1
  • Obrigado 1
Link para o comentário
Compartilhar em outros sites

@Anacris109 Esse exercício me é familiar... Não conhece um tal de Aziz não né? 😛

 

Veja, não precisa chamar printf() sucessivamente, a função vai concatenar strings subsequentes, mesmo que estejam na linha abaixo. Você pode simplesmente chamar uma vez e omitir o restante das chamadas.

 

1 hora atrás, Anacris109 disse:

scanf("%s",&continuar);

Não se lê um char com %s.

Com %s se espera uma string, leia com %c. Coloque um espaço como primeiro caractere na string de formatação para ler e ignorar um \n de um Enter que tenha dado em leituras anteriores que não vai ter mais problemas.

scanf(" %c", &continuar);

 

1 hora atrás, Anacris109 disse:

int ponto jogador,A,B,n,j;
        int ponto jogador=p;  

Não se pode declarar variáveis com espaço. Pode usar um underline.

E quem é p? Viu que declarou ponto_jogador duas vezes?

 

1 hora atrás, Anacris109 disse:

while(continuar=='s')

E essa instrução solta aqui?

 

Corrija os erros, poste novamente com o botão code.

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!