Calcular si un numero es primo en Delphi - Pascal

Por Saiyine  el 2006-10-30 02:29:22 - Secciones:  DELPHI PASCAL NPRIMOS  - Enlace permanente: 717

A petición de un visitante desde google, una sencillisima función para calcular si un número es primo. Tan sencilla, que solo me he permitido una levísima optimización, ya que solo busca posibles divisores entre el 2 y la raiz del número [*].

function esPrimo(x : integer) : boolean;
var
  i,r : longint;
begin
  r:=round(sqrt(x));
  for i:=2 to r do
    if (x mod i=0) then
      begin
        esPrimo:=false;
        exit;
      end;
  esPrimo:=true;
end;
    

Otras optimizaciones por si hay prisa: solo comprobar divisores impares, descartar como primos numeros terminados en 0,2,4,5,6 y 8, crear tablas de primos ya calculados para usar como divisores (google: Siega de Eratostenes), etecé, etecé.

sandra (2007-07-30 05:00:33)

uisiera saber cual es el cofigo para encontrar los numeros primos de cierto numero dado

Saiyine (2007-07-31 11:01:10)

¿En que lenguaje?

Joseph (2007-08-13 08:03:45)

Quiero hacer en breve un programita en Delphi7 para pasar numeros naturales a numeros binarios. Si a alguien le interesa, por ejemplo para una calculadora, que me lo pida. Hoy es 13 de agosto de 2007, creo que lo tendré para el 15.

Alguien quiere compartir alguna idea para cualquier cosa?

Un saludo.

Joseph

Joseph (2007-08-13 08:08:32)

Se me olvido poner mi correo electrónico. Saludos.

joseph_ch_24@hotmail.com

Anonimo (2007-11-22 03:13:10)

:push: :push: 8O 8O 8O 8O 8O 8O 8O 8O 8O 8O 8O 8O 8O 8O 8O 8O 8O 8O 8O 8O 8O 8O 8O 8O 8O 8O 8O 8O 8O 8O 8O 8O 8O 8O 8O 8O 8O :x :x :x :x :x :x :x :x :x :x :x :x :x :x :x :x :x :x :x :x :x :x :x :x :x :x :x :x :x :x :x :x

Anonimo (2007-11-22 05:54:51)

Como se puede hacer el mismo programa pero sin usar * / mod ni div? :huh:

Saiyine (2007-11-23 12:21:52)

Calcular numeros primos sin multiplicar ni dividir es bastante lento, pero se puede hacer:

Por cada número impar, lo sumas a si mismo hasta que es mayor o igual que el numero a comprobar. Si es igual, el numero no es primo. Si es mayor, el numero podria ser primo, asi que pasamos al siguiente numero impar, y, así, hasta que el bucle mayor iguale o supere al posible numero primo.

Un ejemplo en pseudocodigo:

posibleprimo = 117

for (i=2;i<posibleprimo;i++)
{
for (j=i;j<posibleprimo;j=j+i)
{
if (j==posibleprimo) "El numero NO es primo" FIN
}
}

"El numero es primo"


Anonimo (2008-01-28 01:02:36)

8O 8O 8O 8O 8O 8O 8O 8O 8O 8O

Andrea (2008-03-02 11:01:03)

Quisiera saber como se hace para saber si un numero es primo solo con la sentencia while


Gracias

Saiyine (2008-03-03 01:55:49)

En pseudo-codigo tipo C:

$noesprimo = falso;
$i= 2;
while ($noesprimo = (resto($numero,$i)==0)) && ($i<$numero)
$i++;

Como siempre, hacer las cosas tipo C no me parece la manera más limpia, pero hacerse puede hacer...

Anonimo (2008-03-19 05:47:04)

:noworry: :roll: :x :? 8O

danieles. (2008-04-15 08:41:50)

como se puede saber si un numero es o no es primo

carluchiox (2008-04-17 08:33:20)

Hola necesito una formula en c# para
1. Calcular la suma de los valores del intervalo [1 – 180], para cada operación de sumatoria parcial tngo q determinar:

a. Si la misma es un número primo
b. Factorial de la suma parcial
c. Sumatorias parciales culminadas en tres en que cantidad de las mismas
d. Sumatoria parcial múltiplo de cuatro
e. Cuales y cuantas Sumatorias cuyo valores culminan en ocho

Anonimo (2008-04-28 03:48:27)

xD^^ :noworry: :roll: :huh: :push: ¬¬ :OO 8) 8O :( :) :? :o :x :|;) :D :P

informatik (2008-05-10 06:29:37)

hola! necesito ayuda urgenteee...me mandaron hacer este programa: Realice un algoritmo y el programa respectivo que encuentre el primer valor de X para
el cual la fórmula no da un número primo. la formula es x al cuadrado-x+41
estudio 3er sem de informatik y es mi primera programacion!! gracias

Anonimo (2008-06-01 04:03:53)

numeros primos son cuando es dibisible por dos
</st :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D

Anonimo (2008-06-01 04:12:04)

ahora lo voy a escribir en ingles
prime numbers are those that are dibisible by two 8)

Saiyine (2008-06-02 01:36:03)

Un numero primo es aquel que solo es divisible por uno y si mismo, siendo diferente de uno.

Y la versíon en inglés tiene faltas de ortografia, además de ser erronea matematicamente.

Anonimo (2008-06-08 11:24:27)

que tal???
Necesito una rutina en C o C++, con la cual pueda ver si un número previamente introducido es primo o no???

gracias...!!!

Saiyine (2008-06-09 01:56:23)

¿Como por ejemplo esta?

Anonimo (2008-06-10 03:14:28)

como puedo calcular los numeros primos :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D .....

Anonimo (2008-06-26 03:00:06)

como puedo saber si un numero es primo o no el el lenguaje de c++ porfis necesito slep


Tu nombre (Nick):

Tu correo (Email):
  Necesario para tu gravatar!

Tu página (URL):

Escribe aqui tu comentario:

       :noworry: :roll: :huh: :push: ¬¬ :OO 8) 8O :( :) :? :D :P :o :x :| ;) ^^ xD



Vista previa activada.

Vista previa (6/6/6, 6:66)


Patrocinadores

Saiyine recommends the easiest way to earn money with your web: get paid just by having some links! Click this button to check it out.

Text Link Ads

. . .

Descargas

  • ApagaPC
    apagapc241.exe  (2075)
  • LimpiaDocus
    LimpiaDocus001.exe  (1793)
  • RCM
    rcm001.zip  (1660)
  • Popmail
    popmail-0.4-psmn.tar.gz  (1712)
  • Manual de Delphi en PDF
    delphi_pdf.zip  (2210)
  • Evangelio del Perl
    Evangelio_del_perl.pdf  (1823)
  • Excel Simpsons
    Excel Simpsons  (1865)
  • . . .

    Últimos comentarios

  • 803 - nata: Muy buena la traduccion, pero creo que en vez de...
  • 358 - maximiliano : dios castigue al puto que invento proteccion contra escritura jajaja...
  • 358 - leonardo: :( :x tengo un...
  • 803 - Anonimo: amy es lo mejor que ha dado la musica en...
  • 358 - gregory: Ustedes los son unos mamañemoide del planeta mamañema. Estan casado...
  • 707 - miguel cervera: La liga si está correcta, utilicen la diagonal invertida ...
  • . . .

    Recomiendo

  •  Mozilla Firefox 
    DIR (567)
  •  Mozilla Thunderbird 
    DIR (535)
  • KLite 
    klmcodec375.exe (96)
  •  Emule 
    DIR (506)
  •  Knoppix 
    DIR (426)
  •  Knoppix en español (DVD) 
    DIR (767)
  •  Mldonkey 
    DIR (485)
  •  Nucleo linux 
    DIR (486)
  •  Parche linux 
    DIR (486)

    . . .
  • Proyectos online

  • Saiyine Store
  • Kunowalls!!!
  • Fondos de pantalla
  • Picaday: imagenes sexys o chocantes.
  • Scarlett: fotos de Scarlett Johansson
  • WhatsmyIP: obtener tu IP pública
  • Uma Thurman: galeria de Uma Thurman
  • FunPics: imagenes graciosas
  • . . .

    Blogs

  • Por lo que más querais, no entreis a estos: Tapanez, Yhandros, Onez.

  • Otros en español: Chavalina, Testosterona, Kirai, Wardog y el mundo, Mundo Geek, Microsiervos.

  • Mis lecturas en guiri: Coding Horror, MySQL Performance, Slashdot.

    . . .
  • Utilidades

  •  Coral  (600), cacheando webs
  •  Spam.la  (691), correo de usar y tirar
  •  Mailinator  (681), correo de usar y tirar
  •  Bug me not  (631), absurdos registros di NO
  •  Trashmail  (624), correo de usar y tirar

    . . .
  • Página web ©2001-2008 Saiyine generada en 0.06005s, con 1657180 visitas en total, hoy 930 (de un total de 1077 previstas).

    . . .