Ir ao conteúdo
  • Cadastre-se

Algoritmo para fazer um quis com 4 perguntas


Ir à solução Resolvido por Anderson Souza_702192,

Posts recomendados

Boa tarde a todos! Pessoal, tenho 17 anos e decidi a aprender programação. Estou começando pelo Pascal por ser um pouco mais "simplificado" do que as outras linguagens.

Eu estou com uma apostila e um dos exercícios é criar um algoritmo que realizasse um quis de 4 perguntas e que se o usuário errasse a resposta, o algoritmo mostra uma mensagem de que o usuário errou e também qual a resposta correta.

O máximo que eu consegui fazer, foi isso:

 

program quis;
 
{$APPTYPE CONSOLE}
 
uses
  SysUtils;
  Var A, B, C, D, Pergunta: String;
begin
  Writeln('Quem foi o fundador da Apple?');
 
  Writeln('(A) Steve Jobs.');
 
  Writeln('(B)Bill Gates.');
 
  Writeln('©Vint Cerf.');
 
  Writeln('(D)Richard Matthew Stallman.');
 
 
 
 
  Writeln('Digite a sua resposta: ');
  Readln(Pergunta);
 
   If Pergunta = 'A' Then
    Begin
     Writeln('voce acertou!');
     Readln(A);
     End;
 
     If Pergunta = 'B' Then
    Begin
     Writeln('voce errou!');
     Readln( B);
     End;
 
      If Pergunta = 'C' Then
    Begin
     Writeln('voce errou!');
     Readln©;
     End;
 
      If Pergunta = 'D' Then
    Begin
     Writeln('voce errou!');
     Readln(D);
     End;
 
     Readln;
 
end.

 

 

A dúvida é a seguinte: Como eu posso fazer um algoritmo que mostre qual a resposta correta se o usuário errar? E caso o usuário erre, como eu posso fazer um algoritmo que faça o código voltar ao primeiro "bloco de instrução"?

 

Me desculpem pelas perguntas bobas, é que esse é o meu segundo algoritmo. Eu sei que dá pra melhorar muito aí, só que eu ainda não sei muita coisa sobre programação. 
 
Abraços!
Link para o comentário
Compartilhar em outros sites

  • Solução

Boa Tarde!!!

 

Primeiro, sempre comece o nome de suas variáveis com letra minuscula, não por ser uma regra rígida, porém, uma boa prática.

 

Se você usa IF's, provavelmente conhece o ELSE e ELSE IF, tem que melhorar suas condicionais:

IF Pergunta = 'A' thenbeginwriteln('Você acertou!!');endELSE IF Pergunta = 'B' thenbeginwriteln('você errou');writeln('A resposta correta é: ', A);endELSE IF Pergunta = 'C' thenbeginwriteln('Você errou');writeln('A resposta correta é: ', A);endELSE Pergunta = 'D' thenbeginwriteln('Você errou');writeln('A resposta correta é: ', A);end;

Você pode usar também, e o mais correto e elegante, SWITCH..

 

Espero ter ajudado.

Link para o comentário
Compartilhar em outros sites

Boa Tarde!!!

 

Primeiro, sempre comece o nome de suas variáveis com letra minuscula, não por ser uma regra rígida, porém, uma boa prática.

 

Se você usa IF's, provavelmente conhece o ELSE e ELSE IF, tem que melhorar suas condicionais:

IF Pergunta = 'A' thenbeginwriteln('Você acertou!!');endELSE IF Pergunta = 'B' thenbeginwriteln('você errou');writeln('A resposta correta é: ', A);endELSE IF Pergunta = 'C' thenbeginwriteln('Você errou');writeln('A resposta correta é: ', A);endELSE Pergunta = 'D' thenbeginwriteln('Você errou');writeln('A resposta correta é: ', A);end;

Você pode usar também, e o mais correto e elegante, SWITCH..

 

Espero ter ajudado.

 

Obrigado mesmo, brother! Realmente é bem mais elegante dessa forma. Ficou bem mais simples do seu modo. Vou seguir seus conselhos da próxima vez!

 

Abraços!!

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...