1
resposta

Após colocar o "%.1f/n " o resultado não ficou com 1 casa decimal.

include

define NUMERO_DE_TENTATIVAS_MAX 3

int main(){ // Variaveis do programa int chute; int numeroSecreto = 40; int i; double pontos = 1000.0; int tentativasUsadas = 0;

// Imprime o cabeçalho printf (" **\n"); printf (" BEM VINDO AO JOGO DE ADIVINHACAO \n"); printf (" **\n");

printf (" ADIVINHE O NUMERO SECRETO %f \n", numeroSecreto); printf (" ------------------------------------\n\n\n");

for (i = 1; i <= NUMERO_DE_TENTATIVAS_MAX; i++){ printf("Tentativa %d de %d \n", i,NUMERO_DE_TENTATIVAS_MAX); printf("Qual e o seu chute? ");

// LÊ A VARIAVEL Chute scanf("%d", &chute); int acertou = (chute == numeroSecreto); int maior = (chute > numeroSecreto); int menor = (chute < numeroSecreto); // Avalia os pontos double pontosPerdidos = (chute - numeroSecreto)/2.0 ; pontos = (pontos - pontosPerdidos); tentativasUsadas++;

// Condicional para verificar o chute if (chute <0) { printf("Nao vale numeros negativos! \n\n"); i--; continue; }

else if (acertou){ printf(" PARABENS, VOCE ACERTOU!! \n"); printf(" Voce e um bom jogador... \n"); printf ("Voce acertou em %d tentativa(s) \n", tentativasUsadas); break; // Para o FOR } else if (maior){ printf(" Voce erroooooou! \n"); printf (" DICA: Seu chute foi maior que o Numero Secreto \n\n"); } else{ printf(" Voce erroooooou! \n"); printf (" DICA: Seu chute foi menor que o Numero Secreto \n\n"); } } printf ("Fim de jogo \n"); printf (" Total de pontos: %.1f\n", pontos); }

1 resposta

Olá, Gabriel. Rodei seu código em minha máquina e da tudo certo. Exceto que adicionei as bibliotecas stdio.h e stdlib.h e removi a variável "menor" pois ela não está sendo usada. Também organizei de outra forma a formatação do código. Ficou da seguinte maneira:

#include <stdio.h>
#include <stdlib.h>
#define NUMERO_DE_TENTATIVAS_MAX 3
int main()  // Variaveis do programa
{
    int chute;
    int numeroSecreto = 40;
    int i;
    double pontos = 1000.0;
    int tentativasUsadas = 0;

// Imprime o cabeçalho
    printf (" **\n");
    printf (" BEM VINDO AO JOGO DE ADIVINHACAO \n");
    printf (" **\n");

    printf (" ADIVINHE O NUMERO SECRETO %i \n", numeroSecreto);
    printf (" ------------------------------------\n\n\n");

    for (i = 1; i <= NUMERO_DE_TENTATIVAS_MAX; i++)
    {
        printf("Tentativa %d de %d \n", i,NUMERO_DE_TENTATIVAS_MAX);
        printf("Qual e o seu chute? ");

// LÊ A VARIAVEL Chute
        scanf("%d", &chute);
        int acertou = (chute == numeroSecreto);
        int maior = (chute > numeroSecreto);
        //int menor = (chute < numeroSecreto); // Avalia os pontos
        double pontosPerdidos = (chute - numeroSecreto)/2.0 ;
        pontos = (pontos - pontosPerdidos);
        tentativasUsadas++;

// Condicional para verificar o chute
        if (chute <0)
        {
            printf("Nao vale numeros negativos! \n\n");
            i--;
            continue;
        }

        else if (acertou)
        {
            printf(" PARABENS, VOCE ACERTOU!! \n");
            printf(" Voce e um bom jogador... \n");
            printf ("Voce acertou em %d tentativa(s) \n", tentativasUsadas);
            break; // Para o FOR
        }
        else if (maior)
        {
            printf(" Voce erroooooou! \n");
            printf (" DICA: Seu chute foi maior que o Numero Secreto \n\n");
        }
        else
        {
            printf(" Voce erroooooou! \n");
            printf (" DICA: Seu chute foi menor que o Numero Secreto \n\n");
        }
    }
    printf ("Fim de jogo \n");
    printf (" Total de pontos: %.1f\n", pontos);
    return 0;
}

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software