Home › Fóruns › Programação Básica › M02A05 – Condições Aninhadas – EXERCÍCIO 022 – Ordem Crescente.
- Este tópico contém 4 respostas, 2 vozes e foi atualizado pela última vez 10 meses, 2 semanas atrás por Tutora Jessica.
-
AutorPosts
-
-
8 de janeiro de 2024 às 09:35 #129959Henrique BichoffParticipante
Bom dia prof, tenho uma pequena dúvida neste exercício.
programa { funcao inicio() { escreva("\t\t\t{EXERCÍCIO 022 - Ordem crescente}") //Variaveis inteiro N1, N2 //Entrada de Dados escreva("\nDigite um Número: ") leia(N1) escreva("Digite outro Número: ") leia(N2) //Saída de Dados se (N1 != N2) { escreva("\nOs números em ordem são ", N1, " e ", N2) } senao se ( N2 > N1) { escreva("\nOs números em ordem são ", N2, " e ", N1) } senao se (N1 == N2) { escreva("\nNão existe ordem para números iguais!") } escreva("\n") } }
Assim que comecei meu código, na linha onde está o primeiro “se (N1 != N2)” antes de utilizar este operador “!=” eu tinha colocado o “<“. Porém deu errado, toda vez que eu iniciava o programa e colocava os números ele sempre me mostrava o N1 sempre a frente do N2 ignorando a ordem crescente. Eu achei que tinha errado, então eu troquei o “<” por “!=” e deu certo! Porém eu não entendi o por quê…
Então fui para o vídeo onde o Guanabara mostra a resposta e vi que ele fez exatamente igual a mim, ele também utilizou o operador “<” onde eu coloquei o “!=”. Porém o dele deu certo e o meu não, agora eu estou confuso. Não sei se fiz algo de errado ao colocar o operador “<” e também não sei o porquê o código deu certo quando eu alterei para “!=”, me ajuda kkkk.
- Este tópico foi modificado 10 meses, 2 semanas atrás por Henrique Bichoff.
-
8 de janeiro de 2024 às 10:49 #129971Tutora JessicaModerador
Olá Henrique, quais foram os números que você testou?
Eu fiz o teste e funcionou, no caso você só precisaria trocar o primeiro senao se por (N1 > N2)
e o se com (N1 < N2).-
8 de janeiro de 2024 às 11:24 #129976Henrique BichoffParticipante
Jessica, era isso mesmo. foi falta de atenção minha, peço desculpas. Já deu certo aqui, obrigadoo!
-
-
8 de janeiro de 2024 às 11:16 #129975Henrique BichoffParticipante
Então, no começo eu fiz exatamente assim, agora eu alterei de novo da mesma forma como você explicou. Mas no meu console está assim:
Digite um número: 20 Digite outro número: 30 Os números em ordem são 20 e 30
porém, se eu inverter a sequência e colocar o 30 primeiro e o 20 depois o console só mostra “Programa Finalizado”. Deve ser algum bug.
-
8 de janeiro de 2024 às 11:46 #129978Tutora JessicaModerador
Olá Henrique, fiz o teste da forma que colocou aqui e funcionou direitinho, observe o código como estou utilizando:
programa { funcao inicio() { escreva("\t\t\t{EXERCÍCIO 022 - Ordem crescente}") //Variaveis inteiro N1, N2 //Entrada de Dados escreva("\nDigite um Número: ") leia(N1) escreva("Digite outro Número: ") leia(N2) //Saída de Dados se (N1 < N2) { escreva("\nOs números em ordem são ", N1, " e ", N2) } senao se ( N1 > N2) { escreva("\nOs números em ordem são ", N2, " e ", N1) } senao se (N1 == N2) { escreva("\nNão existe ordem para números iguais!") } escreva("\n") } }
-
-
AutorPosts
- Você deve fazer login para responder a este tópico.