Rafael está iniciando seus estudos em lógica de programação e está bem animado na realização dos exercícios. Em uma determinada aula, seu professor solicitou que ele realizasse um programa com o intuito de listar os números de 0 a 100 e apresentasse na tela para o usuário quais destes números são pares e quais são ímpares. Rafael se sentiu desafiado, pois nesse exercício foi solicitado que ele trabalhasse com duas estruturas de algoritmos diferentes.
Bom, realizada a leitura do nosso estudo de caso e supondo que você seja Rafael, realize um algoritmo em pseudocódigo que resolva o problema acima
Alguém poderia me ajudar no problema acima estou iniciando agora logica de programação.
Respostas
Resposta:
Algoritmo “ParOuImpar”
inicio
para num ← 0 ate 100 faca
se num mod 2 = 0 entao
escreval(num, “ é par!”)
senao
escreval(num, “ é ímpar!”)
fimse
fimpara
fimalgoritmo
Explicação:
Não entendo muito da sintaxe do pseudocódigo, é uma das maiores aleatoriedades já inventadas rsrs, muito melhor aprender lógica direto com uma linguagem real, mas infelizmente em muitos lugares o pseudocódigo é obrigatório.
Agora sobre a questão, a ideia é bem simples, queremos que o nosso código liste os números de 0 a 100 e fala qual é par e qual é ímpar, poderíamos fazer isso 100 vezes ir lá colocar o número e verificar se ele é ímpar ou par, um por um, mas isso seria extremamente ineficiente. É por este motivo que nós utilizamos os laços de repetição e neste caso como sabemos o intervalo em o programa deve se repetir este laço será o para, pois sabemos que ele vai começar em 0 e ir até 100.
para num ← 0 ate 100 faca
fimpara
Perceba que dentro do para a gente tem uma variável de nome num que pode ser qualquer outro nome, mas para este exemplo vou usar num, essa variável vai aumentar +1 toda vez que o laço de repetir e veja só ela vai passar exatamente pelos números que nós queremos. Tendo isso em mente nós poderíamos verificar se num é par ou é ímpar.
E aí vem o truque, dentro dos operadores nós temos o mod que calcula o resto da divisão e veja só, todo número par dividido por 2 tem resto 0 e todo número ímpar tem resto 1.
se num mod 2 = 0 entao
fimse
Então essa estrutura acima vai verificar se a variável num MOD 2 tem resto igual a 0, se este for o caso nós envíamos a mensagem:
escreval(num, “ é par!”)
Que basicamente é a concatenação da variável num com o texto " é par!". Ao final temos a seguinte estrutura:
se num mod 2 = 0 entao
escreval(num, “ é par!”)
fimse
Agora se este não for o caso e o resto por diferente de 1 nós podemos colocar outra mensagem, pois significa que este número é ímpar então abrimos um senão e mudamos apenas a mensagem:
senao
escreval(num, “ é ímpar!”)
Ao final montamos a estrutura encadeada do se:
se num mod 2 = 0 entao
escreval(num, “ é par!”)
senao
escreval(num, “ é ímpar!”)
fimse
E por fim fechamos o laço para e o código:
fimpara
fimalgoritmo