Pascal/Turbo Pascal - numeros primos

 
Vista:
sin imagen de perfil

numeros primos

Publicado por marios (58 intervenciones) el 10/04/2014 23:17:08
hola ramon queria preguntarte como podria ser la solucion de este problema.

Un primo gemelo es un número primo que difiere de otro número primo por dos. Esto excluye al par (2,3). Algunos ejemplos de números primos gemelos son:
(3, 5), (5, 7), (11, 13), (17, 19)
El número inicial debe ser menor que el número final y debe haber una diferencia de por lo menos 2 números entre cada uno. Ejemplo 3 y 5. muestre en pantalla a traves de un programa pascal el total de numero primos gemelos, mostrando a su vez cada par obtenido.
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
sin imagen de perfil

numeros primos

Publicado por Diego (98 intervenciones) el 11/04/2014 17:16:04
Si eso es todo lo que dice el enunciado entonces no hay mucno que hacer ay que lo numeros son infinitos y lo primos tienen una particularidad bastante apreciada en la informatica.

A menos que indiques cuantos números primos se tienen que imprimir no te alcazará la memoria de la pc para realizar todos lo numeros.
ej :
97367 97369 ambos primos pero son bastantes ejecuciones del modulo hasta llegar hasta estos numeros.
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
sin imagen de perfil

numeros primos

Publicado por marios (58 intervenciones) el 11/04/2014 17:50:24
suponer que se pide para los primeros 100 primos. gracias
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

numeros primos

Publicado por ramon (2158 intervenciones) el 14/04/2014 00:50:47
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
{Mira esto}
 
 program primosjemelos;
  uses
    crt;
  var
    k, i, h, cont, num : integer;
    acumula : array[1..100] of integer;
    si : boolean;
 
 
  function esprimo(n : integer) : integer;
  var
    h, es : integer;
   begin
      es := 0;
      esprimo := 0;
    for h := 2 to n - 1 do
    begin
       if n mod h = 0 then
       es := 1
    end;
      if es = 1 then
      esprimo := 0
    else
      esprimo := n;
  end;
 
 
  begin
      clrscr;
      cont := 1;
      randomize;
      h := 1;
  repeat
     repeat
     num := random(190) + 1;
     si := true;
     for i := 1 to cont do
     begin
     if acumula[i] = num then
     si := false;
     end;
    until si = true;
     if esprimo(num) > 0 then
     begin
        acumula[h] := num;
        h := h + 1;
      if h > 100 then
        h := 100;
     end;
     cont := cont + 1;
  until cont > 180;
 
  for i := 1 to h - 1 do
   for cont := h - 1 downto i + 1 do
   if acumula[i] > acumula[cont] then
   begin
       k := acumula[i];
       acumula[i] := acumula[cont];
       acumula[cont] := k;
   end;
  for i := 1 to h - 1 do
  write(' ',acumula[i]);
  writeln;
  writeln('  Esisten Primos Jemelos En Estos Numeros ');
  writeln;
  k := 2;
  i := 1;
  cont := 0;
  repeat
     if acumula[k] - 2 = acumula[i] then
     begin
       write('    ',acumula[i],'-',acumula[k]);
       cont := cont + 1;
     end;
     i := i + 1;
     k := k + 1;
  until k > h - 1;
  if cont = 0 then
  write(' En Esta Serie No');
  readkey;
  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