Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Rafael Biagioni

Algoritmo para testar preferências utilizando o SE

Recommended Posts

Olá, preciso criar o seguinte algoritmo: um programa que leia a idade e o sexo de uma pessoa, e que na sequencia siga as regras para continuar com o questionamento:
Para homens que tenham até 15 anos, perguntar qual é o desenho animado que prefere, "Caverna do dragão" ou "Shazan". Se a resposta for "Caverna do Dragão", escrever:
"Que azar, este desenho não tem final!"
Já se a resposta for "Shazan", escreverá:
"Certamente você também gosta dos gibis desta série!"
Se a pessoa do sexo masculino tiver mais de 15 anos, pergunte:
"Qual filme você prefere: Velozes e furiosos ou Senhor dos Anéis?"
Se a resposta for "Velozes e Furiosos", escreva:
"Você deve gostar de carros tunados!"
Se a resposta for "Senhor dos Anéis", escreva:
"Os livros deste filme são ótimos!"
Para o sexo feminino, verificar se a pessoa tem até 16 anos. Caso sim, pergunte qual sua série de TV favorita: "Malhação" ou "Glee".
Se a resposta for "Glee", escrever:
"Você está aprendendo inglês!"
Se a resposta for "Malhação", escrever:
"Esta série é mais velha que você!"
Se a pessoa do sexo feminino tiver mais de 16 anos, perguntar:
"Qual sua raça de cachorro favorito: poodle ou basset?"
Se a resposta for Poodle, escrever:
"Deve sempre ir ao veterinário!"
Se a resposta for basset, escrever:
"Esta raça tem o apelido de salsicha!"

 

Muito obrigado desde já a quem me ajudar!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Esqueci de citar que o algoritmo deve ser criado no VisualG utilizando o "Portugol". Já criei algum código, que vou postar aqui:

 

algoritmo "sexo, idade e preferencias"
// Função :
// Autor :
// Data : 27/09/2013
// Seção de Declarações
var
sexo,idade,preferencia:literal
inicio
// Seção de Comandos
escreval ("Informe seu sexo")
leia (sexo)
escreval ("Informe sua idade:")
leia (idade)
se (sexo = "masculino") entao
   se (idade < 15) entao
      escreval ("Qual desenho você prefere:")
      escreval ("Caverna do Dragão ou Shazan?")
      leia (preferencia)
      se (preferencia = "Caverna do Dragão") entao
         escreval ("Que azar, este desenho não tem fim!")
      fimse
      se (preferencia = "Shazan") entao
           escreval ("Certamente você também gosta dos gibis!")
      fimse
se (idade > 15) entao
escreval ("Qual filme prefere:")
escreval ("Velozes e Furiosos ou Senhor dos Aneís?")
se (preferencia = "Velozes e Furiosos") entao
escreval ("Você deve gostar de carros tunados!")
se (preferencia = "Senhor dos Anéis") entao
escreval ("Os livros desse filme são ótimos!")
fimalgoritmo

Compartilhar este post


Link para o post
Compartilhar em outros sites
  1. Você deve mudar de idade < 15 para idade <= 15, pois é até 15 anos
  2. No lugar do "se (idade > 15) entao" mude para "senao". O senao executa se a condição for falsa e evita de uma condição ser processada sem necessidade. Porém você deve colocar o fimse do se, após o senão. Ou seja:

De

se (idade <= 15) entao

//

fimse

se (idade >) entao

//

fimse

para

se (idade <= 15) entao

//

senao

//

fimse

 

Você está fazendo a lógica direito. Se aplicar o mesmo no resto do código, tenho certeza que você faz isso rodar.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Consegui criar este código:

 

var
sexo,idade,preferencia:literal
inicio
// Seção de Comandos
escreval ("Informe seu sexo")
leia (sexo)
escreval ("Informe sua idade:")
leia (idade)

se (sexo = "masculino") entao

   se (idade < 15) entao
      escreval ("Qual desenho você prefere:")
      escreval ("Caverna do Dragão ou Shazan?")
   leia (preferencia)
   fimse

      se (preferencia = "Caverna do Dragão") entao
         escreval ("Que azar, este desenho não tem fim!")
      fimse

      se (preferencia = "Shazan") entao
         escreval ("Certamente você também gosta dos gibis!")
      fimse

fimse

se (sexo = "masculino") entao

      se (idade > 15) entao
         escreval ("Qual filme prefere:")
         escreval ("Velozes e Furiosos ou Senhor dos Anéís?")
      fimse

      se (preferencia = "Velozes e Furiosos") entao
         escreval ("Você deve gostar de carros tunasos!")
      fimse

      se (preferencia = "Senhor dos Anéis") entao
         escreval ("Os livros desse filme são ótimos!")
      fimse
      
fimse
      
se (sexo = "feminino") entao

   se (idade < 16) entao
      escreval ("Qual sua série de TV favorita, Malhação ou Glee?")
      leia (preferencia)
   fimse
      
      se (preferencia = "Malhação") entao
         escreval ("Esta série é mais velha que você!")
      fimse
      
      se (preferencia = "Glee") entao
         escreval ("Você está aprendendo inglês!")
      fimse
      
   se (idade > 16) entao
      escreval ("Qual sua raça de cachorro favorito: poodle ou basset?")
      leia (preferencia)
   fimse

      se (preferencia = "poodle") entao
         escreval ("Deve sempre ir ao veterinário!")
      fimse

      se (preferencia = "basset") entao
         escreval ("Esta raça tem o apelido de salsicha!")
      fimse
      
fimse
fimalgoritmo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Esqueci de citar que o código executa com sucesso, mas ainda surgem alguns erros... Enfim, acho que estou perto de conseguir criar um código correto.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Que erros seriam esses? Fala pra gente que assim nós damos uma força.

Mas também gostaria de alertá-lo que você está deixando sem perguntas para uma exata idade: 15 anos no caso dos homens, 16 no das mulheres, pois você está usando apenas "<" e ">". Sem o "=" ou no "<", ou no ">", você deixa homens de 15 anos e mulheres de 16 sem perguntas.

Te sugiro seguir as sugestões que eu te dei anteriormente.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.