A maior rede de estudos do Brasil

Como criar um algoritmo que mostre se um numero é par ou impar usando o Case?

Estou aprendendo a criar algoritmo em Pascal, mas quando uso a função Mod não dá! Com If dá, mas no Case não.

Alguém pode criar pra mim?

Algoritmos

ESTÁCIO


34 resposta(s) - Contém resposta de Especialista

User badge image

Passei Direto

Há mais de um mês

Vamos escrever o algoritmo em Pascal. É importante ficar atento ao formato de um programa padrão em Pascal e às estruturas para não cometer erros simples que o deixam confuso em relação ao que realmente está errado. No programa abaixo é lido um número n e escrita sua paridade:

 

program paridade;

var

    n: Integer;

begin

    Read(n);

    case n Mod 2 of

         0 : Write('par');

         1 : Write('impar');

    end;

end.

 

Se for inserido um número par, o programa escreverá par. Se for inserido um número ímpar, o programa escreverá impar. Esse algoritmo foi testado no site https://ideone.com.

Vamos escrever o algoritmo em Pascal. É importante ficar atento ao formato de um programa padrão em Pascal e às estruturas para não cometer erros simples que o deixam confuso em relação ao que realmente está errado. No programa abaixo é lido um número n e escrita sua paridade:

 

program paridade;

var

    n: Integer;

begin

    Read(n);

    case n Mod 2 of

         0 : Write('par');

         1 : Write('impar');

    end;

end.

 

Se for inserido um número par, o programa escreverá par. Se for inserido um número ímpar, o programa escreverá impar. Esse algoritmo foi testado no site https://ideone.com.

User badge image

Paulo Bogado

Há mais de um mês

Não conheço pascal, vou mostrar em C, daí você transpõe pra pascal. A lógica é simples. Acho que será fácil transpor.

 

int num = 5; //número que quero testar

int i; //variável para pegar o valor do módulo do numero anterior.

 

i = 5 % 2; //aqui i receberá 1, pois é o resto da divisão.

 

switch (i){

          case 1: printf("%d eh um numero impar", num);

                break;

          case 0: printf("%d eh um numero par", num);

                break;

}

User badge image

ArreniusCarlos Santos

Há mais de um mês

No visualG se faz assim:

var
modulo, numero:inteiro
inicio
escreval("Digite o número: ")
leia(numero)
modulo <- numero mod 2

se (modulo = 0) entao
   escreval("O número é Par")
senao
     escreval("O número é ímpar")
fimse
fimalgoritmo

 

Utilizando a opção de conversão de código do próprio visualG, o código em s PASCAL fica assim:

var
modulo, numero:integer;
begin
   writeln('Digite o número: ');
   readln(numero);
   modulo := numero mod 2;

   case (modulo) of
   0 :
   begin
      writeln('O número é Par');
   end;
   1 :
   begin
      writeln('O número é ímpar');
   end;
   end;

User badge image

ArreniusCarlos Santos

Há mais de um mês

Desculpe, postei o código em visualG errado, utiliando "se... então", o codigo utilizando o "switch.. case" é esse :

var
modulo, numero:inteiro
inicio
escreval("Digite o número: ")
leia(numero)
modulo <- numero mod 2

escolha (modulo)
   caso 0
     escreval("O número é Par")
   caso 1
     escreval("O número é ímpar")
fimescolha

fimalgoritmo

Essa pergunta já foi respondida por um dos nossos especialistas