🎲 O Jogo
Este algoritmo foi sugerido por @Manoel de Sousa – LISA IT em um vídeo do nosso canal no YouTube.
⚙️ PROBLEMA: Elaborar um algoritmo capaz de permitir jogar um quiz de perguntas e respostas com os seguintes requisitos:
-
- Jogo com 10 perguntas sobre a disciplina, em que cada acerto vale 10 ou 5 pontos:
- 10 pontos na primeira tentativa,
- 5 pontos na segunda tentativa,
- 0 pontos se errar as duas tentativas.
- Ao final, exibir a pontuação total.
- Exibir mensagem junto a pontuação:
- excelente se atingir 100 pontos,
- ótimo se fizer entre 75 e 99 pontos,
- bom se fizer entre 50 e 74 pontos,
- regular se fizer entre 25 e 49 pontos,
- péssimo se fizer menos de 24 pontos.
- Após, podem ser exibidos erros e acertos.
- Jogo com 10 perguntas sobre a disciplina, em que cada acerto vale 10 ou 5 pontos:
⛔ OBSERVAÇÕES:
-
- É interessante observar que é possível utilizar uma versão testável na ferramenta VisuAlg, por exemplo, em função da maior complexidade do algoritmo.
- O mais importante na atividade é a lógica correta, avaliação de respostas e cálculo da pontuação, mas a aparência e uso de elementos especiais para melhoria da jogabilidade são desnecessários em termos de pontuação na atividade.
🎲 Uma Solução…
📋 ARQUIVO: Para facilitar nosso trabalho, criamos um arquivo .TXT com as as perguntas, itens e gabarito, cujo conteúdo será lido e armazenado no vetor perguntas[30].
Clique aqui e baixe o arquivo perguntas.txt; ao executar o algoritmo, indique o caminho completo do arquivo (onde você o salvou), por exemplo:
C:\Users\helioandrade\Desktop\perguntas.txt
💻ALGORITMO:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 |
algoritmo "quiz" // Arquivo que contém as perguntas e respostas arquivo "C:\Users\helioandrade\Desktop\perguntas.txt" var perguntas: vetor [1..30] de caractere resultado: vetor[1..10, 1..2] de caractere i, j, tentativas, pontuacao: inteiro pergunta, resposta: caractere inicio // Leitura do conteúdo de perguntas.txt // e armazenamento no vetor perguntas[] para // manipulação dos dados para i de 1 ate 30 faca leia(pergunta) perguntas[i] <- pergunta fimpara limpatela // Exibição de informações básicas do quiz escreval("Quiz de Perguntas & Respostas") escreval(" - 10 pontos na primeira tentativa") escreval(" - 5 pontos na segunda tentativa") escreval(" - 0 pontos se errar as duas tentativas") escreval("------------------------------------------") pontuacao <- 0 j <- 1 para i de 1 ate 30 passo 3 faca tentativas <- 1 enquanto (tentativas <= 2) faca escreval() escreval("PERGUNTA #",j,": ",perguntas[i]) escreval(perguntas[i+1]) escreval() escreva("Digite o item correto: ") leia(resposta) se (resposta = perguntas[i+2]) entao resultado[j,1] <- "Acertou" escreval("Resposta correta!") se (tentativas = 1) entao pontuacao <- pontuacao + 10 resultado[j,2] <- "10 pontos" senao pontuacao <- pontuacao + 5 resultado[j,2] <- " 5 pontos" fimse interrompa senao escreval("Resposta incorreta! Tente novamente.") tentativas <- tentativas + 1 resultado[j,1] <- "Errou" resultado[j,2] <- " 0 ponto" fimse fimenquanto j <- j + 1 fimpara // Exibição do resultado limpatela escreval("---------------------------------------") para i de 1 ate 10 faca escreval("PERGUNTA #",i:2,": ", resultado[i,1]:7, " -> ", resultado[i,2]) fimpara escreval("---------------------------------------") escreva("PONTUAÇÃO TOTAL -> ", pontuacao, " pontos | ") se (pontuacao < 25) entao escreva("PÉSSIMO") senao se (pontuacao < 50) entao escreva("REGULAR") senao se (pontuacao < 75) entao escreva("BOM") senao se (pontuacao < 99) entao escreva("OTIMO") senao escreva("EXCELENTE") fimse fimse fimse fimse escreval() fimalgoritmo |
—
💻 SAÍDA:
*** Clique para ampliar! ***
—
No teste acima, utilizei um arquivo com conteúdo qualquer apenas para testar. Sinta-se à vontade para modificar o arquivo perguntas.txt.
📚 REFERÊNCIAS:
-
- Algoritmos: Lógica Para Desenvolvimento de Programação de Computadores – Edição Revisada e Atualizada
José Augusto N. G. Manzano e Jayr Figueiredo de Oliveira
- Algoritmos: Lógica Para Desenvolvimento de Programação de Computadores – Edição Revisada e Atualizada
—
🗣️ Deixe suas dúvidas e sugestões logo abaixo.
*Atualizado em 5 de julho de 2023