viernes, 13 de julio de 2012

Números primos en c++

Es un algoritmo bastante simple.
La idea es la siguiente:


1° Se ingresa un número.
2° Va desde 1 hasta número inclusive.
3° Divide al número ingresado por el número de la vuelta.
4° Si el resto de la división del punto 3 da como resultado un 0, entonces se incrementa una variable anteriormente puesta en 0.
5° Al terminar el ciclo exacto, si la variable ya mencionada tiene el valor 2 (es decir si fué incrementada 2 veces), entonces el número es primo, ya que los números que hicieron incrementar esa  variable fué 1 y el número mismo.

En proyecto de pseudocódigo:
ingresa num.
cdiv se asigna con 0.

para i desde 1 hasta  num inclusive hacer
   si num % i es igual a 0 entonces
        cdiv se asigna con cdiv + 1
   fin si
fin para

si cdiv es igual a 2 entonces
   mostrar cdiv
fin si

En este post van a ver 4 versiónes diferentes:  en la primera versión un usuario ingresa un número y se calcula si éste es primo o no. Tanto en el caso que el número fuese primo como en el caso en que no lo fuere muestra un cartel en pantalla indicando su calidad. En la segunda versión, se ingresa un número y se hace un ciclo exacto hasta él, mostrando todos los números que entran en su rango indicando para cada uno de ellos si son primos o no. En la tercer versión, es una modificación del 3ro. Se diferencia que en vez de mostrar los números primos dentro del rango, muestra la cantidad de ellos. Y por último el 4to es una fusión entre el 2do y el 3ro. Se ingresa un número, y muestra la cantidad de números primos y cuales son ellos. Todos ellos fueron hechos por mí, Lucas. Todos estos códigos están bajo la licencia Gnu GplV2 http://www.gnu.org/licenses/gpl-2.0.html

Versión 1:
http://paste.ubuntu.com/1090921/

Versión 2:
http://paste.ubuntu.com/1090918/

Versión 3:
http://paste.ubuntu.com/1092239/

Versión 4:
http://paste.ubuntu.com/1092242/

Si desean saber como funciona estos programas, entonces descarguense un entorno de desarrollo integrado con compilador. En mi caso utilizo el ide Zinjai, se los recomiendo: http://zinjai.sourceforge.net/index.php?page=portada.php

1 comentario:

Dejanos tu comentario

 
Web Analytics