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

[Dúvida] Não consegui completar o desafio

Estou com dificuldade em fazer o desafio. Consegui colocar os arrays porém, não sei por onde começar a incluir a variável inteira para dar continuidade.

3 respostas

Manda o desafio ai amigo.

O desafio é transformar a variável Chutes_errados de Vector em Array no jogo de forca para não fazer uso do Heap. Porém, para fazer isso, tem de mudar as instruções do arquivo "chuta.cpp" para que seja guardado os caracteres chutados e feito a leitura do array.

#include <iostream>
#include <string>
#include <map>
#include <vector>
#include "imprime_cabecalho.hpp"
#include "le_arquivo.hpp"
#include "sorteia_palavra.hpp"
#include "chuta.hpp"
#include "imprime_erros.hpp"
#include "imprime_palavra.hpp"
#include "chuta.hpp"
#include "adiciona_palavra.hpp"
#include "nao_acertou.hpp"

using namespace std;

static string palavra_secreta;
static map<char, bool> chutou;
static vector<char> chutes_errados;

int main()
{
    imprime_cabecalho();

    palavra_secreta = sorteia_palavra();

    while(nao_acertou(palavra_secreta, chutou) && chutes_errados.size() < 5) {
        Forca::imprime_erros(chutes_errados);

        imprime_palavra(palavra_secreta, chutou);

        chuta(chutou, chutes_errados, palavra_secreta);
    }

    cout << "Fim de jogo!" << endl;
    cout << "A palavra secreta era: " << palavra_secreta << endl;

    if(nao_acertou(palavra_secreta, chutou)){
        cout << "Você perdeu! Tente novamente!" << endl;
    }
    else{
        cout << "Parabéns! Você acertou a palavra secreta!" << endl;

        cout << "Você deseja adicionar uma nova palavra ao banco? (S/N) ";
        char resposta;
        cin >> resposta;
        if(resposta == 'S'){
            adiciona_palavra();
        }
    }

    cin.get();
}

link do projeto completo.

https://github.com/alura-cursos/2002-c-plus-plus/archive/aula-5.zip
solução!

Olá, Dimitri. Você pode definir uma variável static no mesmo arquivo onde existe a função que vai utilizá-la.

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