Programación General > Pascal
Necesito Ayuda
(1/1)
mrrr:
:) Hola que tal!
Necesito hacer un programa que me lea los numeros del 1 al 100 pero que solo me imprima los numeros primos.
Lo puedo hacer solo con funciones o con procedimientos, pero con ninguno de los dos me corre.
¿Que puedo hacer?
Gracias por su ayuda de antemano.
Enko:
Aqui esta el codigo de saber si un numero es primo
--- Código: Text --- {verifica si es divisible por}function esDivisible(const X,n : Integer): Boolean;begin Result := False; if X mod n = 0 then Result := True;end; {verifica si el numero es primo}function esPrimo(const X: Integer): Boolean;var i: integer;begin Result := True; for i:=2 to X-1 do begin if esDivisible(X,i) then Result := False; Exit; end;end; Tendras que leer el numero y comprobar si es divisible, si lo es, lo imprimes sino, no haces nada. :hola:
mrrr:
:D muchas gracias por tu ayuda, la maestra me dijo otra forma de hacerlo, pero con la tuya se me hace que es mas facil.
gacias. ;)
Enko:
--- Citar ---muchas gracias por tu ayuda, la maestra me dijo otra forma de hacerlo, pero con la tuya se me hace que es mas facil.
--- Fin de la cita ---
De nada. Estaría bueno que postearas la respuesta que te dio tu maestra porque la verdad, es que la mia es muy lenta, prueba todas las posibilidades. Es decir, un numero primo solo es primo si es divisible por el 1 y si mismo. Por eso, en el codigo recorro desde el uno hasta el Numero-1, si en algun momento, el resto es cero quiere decir que no es primo. Como observas, es muuuuuuuuy lento, no hay problama con el 5 pero que pasa cuando es 12358497462 por ej.
Navegación
Ir a la versión completa