Pascal/Turbo Pascal - numeros primos.

 
Vista:

numeros primos.

Publicado por alvaro (14 intervenciones) el 25/02/2005 23:43:08
buenas. Me han propuesto hacer en el colegio un programa para hallar los x numeros primos. He conseguido uno que parece estar bien a excepcion de q aparte de los primos sale tambien el 4. Lo he arrreglado haciendo un poco la tampa de poner 1,2,3 a mano y que el programa empieze en 5 pero me gustaria que me dijesen como subsanarlo.
(voy a intentar colgar el programa).
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:numeros primos.

Publicado por alvaro (14 intervenciones) el 25/02/2005 23:51:10
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
PROGRAM PRIMOS;
USES CRT;
VAR A,R,X:INTEGER;
BEGIN CLRSCR;
WRITE('1 2');
A:=1;
REPEAT
A:=A+1;
X:=A;
REPEAT
     X:=X-1;
     R:=A MOD X;
UNTIL (X=2) OR (R=0);
IF X=2 THEN WRITE(' ',A);
UNTIL A=1000; (NUMERO A ELEGIR)
REPEAT UNTIL KEYPRESSED;
END.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:numeros primos.

Publicado por Gustavo (1 intervención) el 28/10/2020 15:54:44
Yo lo resolví en tu código agregando al if que si divide entre pares no lo tome en cuenta
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
PROGRAM PRIMOS;
USES CRT;
VAR A,R,X:INTEGER;
 n:integer;
BEGIN CLRSCR;
        readln (n);
        WRITE('1 2');
        A:=2;
        REPEAT
                A:=A+1;
                X:=A;
                REPEAT
                        X:=X-1;
                        R:=A MOD X;
                UNTIL (X=2) OR (R=0) ;
                IF (X=2) and (a mod 2<>0) THEN WRITE(' ',A);
        UNTIL A=n; {NUMERO A ELEGIR}
REPEAT UNTIL KEYPRESSED;
END.

y le agregue la opción de mostrarme la cantidad de números para mostrar
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar