Pesquisar na Comunidade
Mostrando resultados para as tags ''jogodaforca''.
Encontrado 1 registro
-
Estou começando na programação e tenho algumas dúvidas sobre esse código do jogo da forca: #include <iostream> #include <stdlib.h> using namespace std; int main() { char entrada[21]; //Palavra secreta char letra[1]; //Letra que a pessoa digitou char letras[30]; //Letras char secreta[21]; //A letra certa e sua posição int tam; //O tamanho da palavra vai ser igual a ENTRADA int i; //(indice) Necessario pq vai usar array int chances; // Quando acabar elas acaba o jogo int acertos; // O numero de acertos equivale ao TAM bool verificacao; // Verifica se a pessoa digitou uma letra certa ou errada string dica; chances=6; tam=0; i=0; verificacao=false; acertos=0; cout << "O que seu adversario vai adivinhar? " << "\n"; cin >> entrada; //comando limpar tela system("cls"); cout << "Dica: "; cout << dica; cin >> dica; // O indice vai percorrer ENTRADA até o /0 (enter) pra verificar se tá certo e a posição //Char de arrays devem sempre terminar em /0 while(entrada != '\0') { i++; // O i vai percorrer a "entrada" de um por um,e que ainda não é o /0 tam++; // Cada palavra certa vai adicionar +1 em TAM, desde que i não seja o enter } //Vou preencher a "entrada" com asteristicos e cada palavra certa vai ser -1 asteristico for(i=0 ; i<21 ; i++) { //Enquanto i for menor que 21, i de secreta vai aparecer com * } //Enquanto o jogador tiver chances e acertos diferente de tam, irá aparecer as chances e palavras acertadas na tela inicio: while((chances > 0)&&(acertos < tam)){ cout << "Chances Restantes: " << chances << "\n"; cout << "Palavra Secreta: "; for(i=0 ; i<tam ; i++) { cout << secreta; } //O jogador vai digitar cout << "\n\n" << "Digite uma letra: "; cin >> letra[0]; //Armazenar na posição 0 // Se já tiver usado a letra, goto volta pro o inico for(i=0 ; i<tam ; i++){ if(letras == letra[0]) { system("cls"); cout << "\nLetra ja usada! \n"; goto inicio; } else { letras=letra[0]; } } for(i=0 ; i<tam ; i++) { if(entrada==letra[0]) { verificacao=true; // A letra dá posição vai ser copiada para secreta se for certa secreta=entrada; acertos++; // incrementa o total de acertos } } //Se acerto for igual a falso "not acerto = !acerto" diminui o numero de chances if(!verificacao) { chances--; } verificacao=false; system("cls"); if(verificacao=false) { system("cls"); cout << letra[0]; } } if(acertos==tam) { cout << "O jogador ganhou! "; } else { cout << "O jogador perdeu! "; } system("pause"); return 0; }