Ir ao conteúdo
  • Cadastre-se

Repetição em Pascal


Stocker2603

Posts recomendados

Olá amigos,

Professor passou como trabalho desenvolver um algoritmo que dado um numero, dizer se este numero é primo ou não...

Consegui fazer o algoritmo, mas estou tendo problemas no final, pois está dando loop infinito na repetição, se alguem souber como consertar eu agradeço! Qualquer duvida na estrutura é só perguntar, estou no 1o semestre, então não tenho muita prática.

program ex2;
uses crt;

var x,z: integer;
y,q,r: real;
primo,nprimo: string;
begin
clrscr;
write('Informe um numero: ');
randomize;
readln(x);
primo:= ' é primo';
nprimo:= ' não é primo';
if (x=2) or (x=3) or (x=5) or (x=7) or (x=11) then
begin
writeln (x,primo)
end
else
begin
y:= sqrt(x);
z:= round(y);
q:= (x/z);
if q>z then
writeln (x,primo);
if round (z)>z then
writeln(x,nprimo)
else
begin
while (z<>0) do begin; /// Problema começa aqui!
r:= x mod z;
begin
if r=0 then
writeln(x,primo)
else
z:= (z-1);
end;
end;
end;
end;
readkey;
end.

Link para o comentário
Compartilhar em outros sites

Arquivado

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

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...