Error in "if so" are accepting everyone in the answer

Asked

Viewed 120 times

0

algoritmo "tinder"

var

   l, m, i, b, c, s: logico

   pri, seg, ter: caracter

   andressa, monica, leticia, eduarda, maria, ana, clarisse, joana: logico

inicio

      escreval ("----------------------------------")

      escreval ("        PAR PERFEITO              ")

      escreval ("----------------------------------")

      escreval ("Qual tipo de garota você procura? ")

      escreval ("Loira ou Morena? [L]/[M]")

      l <- verdadeiro

      leia(pri)

      escreval ("Inteligente ou Bonita? [I]/[B]")

      i <- verdadeiro

      leia(seg)

      escreval ("Carinhosa ou Safada? [C]/[S]")

      c <- verdadeiro

      leia(ter)

      andressa <- pri=="l" e seg=="i" e ter=="c"

      eduarda <- pri=="l" e seg=="b" e ter=="s"

      clarisse <- pri=="l" e seg=="i" e ter=="s"

      maria <- pri=="l" e seg=="b" e ter=="c"

      monica <- pri=="m" e seg=="b" e ter=="s"


      leticia <- pri=="m" e seg=="b" e ter=="c"

      ana <- pri=="m" e seg=="i" e ter=="c"

      joana <- pri=="m" e seg=="i" e ter=="s"

      se (andressa = verdadeiro) entao

         escreva ("Seu par perfeito é Andressa")

      fimse

      se (eduarda = verdadeiro) entao

         escreva ("Seu par perfeito é Eduarda")

      fimse

      se (clarisse = verdadeiro) entao

         escreva ("Seu par perfeito é Clarisse")

      fimse

      se (Maria = verdadeiro) entao

         escreva ("Seu par perfeito é Maria")

      fimse

      se (monica = verdadeiro) entao

         escreva ("Seu par perfeito é Mônica")

      fimse

      se (Leticia = verdadeiro) entao

         escreva ("Seu par perfeito é Letícia")

      fimse

      se (ana = verdadeiro) entao

         escreva ("Seu par perfeito é Ana")

      fimse

      se (joana = verdadeiro) entao

         escreva ("Seu par perfeito é Joana")

      fimse

fimalgoritmo

1 answer

0


Debugging your code I noticed that the variables that represent the female names of the type logico were receiving the variable l which in turn was being fed verdadeiro after printing the first request. See below: inserir a descrição da imagem aqui

Using your own model, I undo the way you fed the variables and eliminated the variables l, m, b, i, c, s: logico. Look how it turned out:

se ((pri = "l") e (seg = "i") e (ter = "c")) entao
   andressa <- verdadeiro
senao
   se ((pri = "l") e (seg = "b") e (ter = "s"))entao
      eduarda <- verdadeiro
   senao
      se ((pri = "l") e (seg = "i") e (ter = "s")) entao
         clarisse <- verdadeiro
      senao
         se ((pri = "l") e (seg = "b") e (ter = "c")) entao
            maria <- verdadeiro
         senao
            se ((pri = "m") e (seg = "b") e (ter = "s")) entao
               monica <- verdadeiro
            senao
               se ((pri = "m") e (seg = "i") e (ter = "c")) entao
                  ana <- verdadeiro
               senao
                  se ((pri = "m") e (seg = "b") e (ter = "c")) entao
                     leticia <- verdadeiro
                  senao
                     se ((pri = "l") e (seg = "i") e (ter = "s")) entao
                        joana <- verdadeiro
                     senao
                        se (((pri <> "l") ou (pri <> "m")) ou ((seg <> "i") ou (seg <> "b")) ou ((ter <> "c") ou (ter <> "s"))) entao
                           escreval("Erro: O caracter informando não é válido, tente novamente")
                        fimse
                     fimse
                  fimse
               fimse
            fimse
         fimse
      fimse
   fimse
fimse

See that it worked: inserir a descrição da imagem aqui

And I completed by checking if what was typed is valid: inserir a descrição da imagem aqui

Below is the complete used code:

algoritmo "semnome"
// Função :
// Autor :
// Data : 20/04/2018
// Seção de Declarações 
var
   pri, seg, ter: caracter
   andressa, monica, leticia, eduarda, maria, ana, clarisse, joana: logico

inicio
// Seção de Comandos 
escreval ("----------------------------------")
escreval ("        PAR PERFEITO              ")
escreval ("----------------------------------")

escreval ("Qual tipo de garota você procura? ")
escreval ("Loira ou Morena? [L]/[M]")
leia(pri)

escreval ("Inteligente ou Bonita? [I]/[B]")
leia(seg)

escreval ("Carinhosa ou Safada? [C]/[S]")
leia(ter)

se ((pri = "l") e (seg = "i") e (ter = "c")) entao
   andressa <- verdadeiro
senao
   se ((pri = "l") e (seg = "b") e (ter = "s"))entao
      eduarda <- verdadeiro
   senao
      se ((pri = "l") e (seg = "i") e (ter = "s")) entao
         clarisse <- verdadeiro
      senao
         se ((pri = "l") e (seg = "b") e (ter = "c")) entao
            maria <- verdadeiro
         senao
            se ((pri = "m") e (seg = "b") e (ter = "s")) entao
               monica <- verdadeiro
            senao
               se ((pri = "m") e (seg = "i") e (ter = "c")) entao
                  ana <- verdadeiro
               senao
                  se ((pri = "m") e (seg = "b") e (ter = "c")) entao
                     leticia <- verdadeiro
                  senao
                     se ((pri = "l") e (seg = "i") e (ter = "s")) entao
                        joana <- verdadeiro
                     senao
                        se (((pri <> "l") ou (pri <> "m")) ou ((seg <> "i") ou (seg <> "b")) ou ((ter <> "c") ou (ter <> "s"))) entao
                           escreval("Erro: O caracter informando não é válido, tente novamente")
                        fimse
                     fimse
                  fimse
               fimse
            fimse
         fimse
      fimse
   fimse
fimse



se (andressa = verdadeiro) entao
   escreval ("Seu par perfeito é Andressa")
senao
   se (eduarda = verdadeiro) entao
      escreval ("Seu par perfeito é Eduarda")
   senao
      se (clarisse = verdadeiro) entao
         escreval ("Seu par perfeito é Clarisse")
      senao
         se (Maria = verdadeiro) entao
            escreval ("Seu par perfeito é Maria")
         senao
            se (monica = verdadeiro) entao
               escreval ("Seu par perfeito é Mônica")
            senao
               se (Leticia = verdadeiro) entao
                  escreval ("Seu par perfeito é Letícia")
               senao
                  se (ana = verdadeiro) entao
                     escreval ("Seu par perfeito é Ana")
                  senao
                     se (joana = verdadeiro) entao
                        escreval ("Seu par perfeito é Joana")
                     fimse
                  fimse
               fimse
            fimse
         fimse
      fimse
   fimse
fimse

fimalgoritmo
  • Thanks Paul! really, the variables were loose... Thank you very much!

  • blz @Felipefernandes, if it was fruitful and conclusive, please mark the answer as useful;

  • I’m trying to do it ... but still not figuring out how to make kkkkk first time I use this site

  • already discovered kkkk thanks there, good luck

Browser other questions tagged

You are not signed in. Login or sign up in order to post.