Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

cout.precision(2);

    cout << "Fim de jogo!" << endl;
    cout << "você acertou o numero secreto em " << tentativas << " tentativas!" << endl;
    cout.precision(2);
    cout << fixed;
    cout << "Sua pontuação foi de: " << pontos << " pontos" << endl;

Estou com um problema nesse programa pois o precision não esta me dando a resposta com as duas casas decimais como foi dito que deveria aparecer na aula de C++, alguem sabe o motivo?

Inseri essas bibliotecas e estou trabalhando no visual studio:

#include "pch.h"

#include

#include <locale.h> //Coloca acentução

3 respostas
#include "pch.h"
#include <iostream>
#include <locale.h> //Coloca acentução

using namespace std;

int main() {

    setlocale(LC_ALL, "Portuguese"); //Coloca acentução

    cout << "***********************************" << endl;
    cout << "*Bem-vindos ao jogo da adivinhação*" << endl;
    cout << "***********************************" << endl;

    const int NUMERO_SECRETO = 50;

    bool nao_acertou = true;
    int tentativas = 0;

    double pontos = 1000.0;

    while (nao_acertou) {
        tentativas++;
        int chute;
        cout << "Tentaiva " << tentativas << endl;
        cout << "Qual o seu chute? ";
        cin >> chute;

        double pontos_perdidos = abs((chute - NUMERO_SECRETO) / 2.0); // 2.0 pois precisa ser double para a conta ter as casas decimais, qualquer um podia ser double
        pontos = pontos - pontos_perdidos;

        cout << "O valor do seu chute é: " << chute << endl;

        bool acertou = chute == NUMERO_SECRETO;
        bool maior = chute > NUMERO_SECRETO;


        if (acertou) {
            cout << "Parabéns, você acertou o número secreto!" << endl;
            nao_acertou = false;
        }
        else if (maior) {
            cout << "Seu chute foi maior que o número secreto!" << endl;
        }
        else {
            cout << "Seu chute foi menor que o número secreto!" << endl;
        }
    }
    cout << "Fim de jogo!" << endl;
    cout << "você acertou o numero secreto em " << tentativas << " tentativas!" << endl;
    cout.precision(2);
    cout << fixed;
    cout << "Sua pontuação foi de: " << pontos << " pontos" << endl;
}

Esse é o codigo completo

solução!

Problema resolvido, simplesmente o visual studio é horrivel e eu tenho q reiniciar ele de tempos em tempos, fica a dica ai!

Olá Vitor, tudo bem? Como seu problema foi resolvido, estou fechando o tópico, ok?

Qualquer coisa não hesite em abrir outro tópico :)

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