elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Programa que imprima los 1000 primeros numeros primos
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Programa que imprima los 1000 primeros numeros primos  (Leído 23,096 veces)
muymuyperdido

Desconectado Desconectado

Mensajes: 45


Ver Perfil
Programa que imprima los 1000 primeros numeros primos
« en: 24 Noviembre 2012, 20:30 pm »

Almacenandolos en un vector, no sé como plantearlo
Si alguien es capaz de hacerlo por favor ayuda, o al menos unas pautas para no perderme.
Gracias!


En línea

Ferno


Desconectado Desconectado

Mensajes: 375


Ver Perfil
Re: Programa que imprima los 1000 primeros numeros primos
« Respuesta #1 en: 24 Noviembre 2012, 20:44 pm »

Bueno, podrías intentear hacer algo de código.

Una pequeña ayuda... sin que importe la eficiencia. Puedes hacer un loop con un flag (que sería más bien un contador) que te diga si has llegado a los 1000 números primos almacenados o no (o ver el último índice de tu vector). Dentro de este loop, tomarás números del 0 hasta el que sea (hasta que se cumpla la condición de corte) y llamarás a una función que verifique si es primo o no. Si es primo, lo almacenas en el vector y aumentas en 1 el flag.


En línea

muymuyperdido

Desconectado Desconectado

Mensajes: 45


Ver Perfil
Re: Programa que imprima los 1000 primeros numeros primos
« Respuesta #2 en: 24 Noviembre 2012, 20:48 pm »

Es que no he estudiado esas funciones, sé lo básico...printf, scanf, for, do while, while, vectores...no más.
En línea

Ferno


Desconectado Desconectado

Mensajes: 375


Ver Perfil
Re: Programa que imprima los 1000 primeros numeros primos
« Respuesta #3 en: 24 Noviembre 2012, 21:09 pm »

Y con eso es suficiente!
La función para saber si un número es primo o no tenés que escribirla vos!

Sólo debes saber cuándo un número es primo y codear dichas condiciones para testear si un número recibido por parámetro es primo o no. Dependiendo si lo es o no devuelves algún tipo de valor.
En línea

muymuyperdido

Desconectado Desconectado

Mensajes: 45


Ver Perfil
Re: Programa que imprima los 1000 primeros numeros primos
« Respuesta #4 en: 24 Noviembre 2012, 21:14 pm »

Si, el codigo para saber si es primo o no lo sé, pero eso he de meterlo en una función para almacenarlos todos en un vector (que almacene eso, los 1000 primeros primos)
En línea

Ferno


Desconectado Desconectado

Mensajes: 375


Ver Perfil
Re: Programa que imprima los 1000 primeros numeros primos
« Respuesta #5 en: 24 Noviembre 2012, 21:18 pm »

Bueno si sabes hacer al menos esa parte, programalo y postealo acá. Y codeá como se te ocurre a partir de eso guardar los valores. A partir de ahí se te puede ayudar mejor!

Saludos
En línea

leosansan


Desconectado Desconectado

Mensajes: 1.314


Ver Perfil
Re: Programa que imprima los 1000 primeros numeros primos
« Respuesta #6 en: 24 Noviembre 2012, 22:29 pm »

A la vista del código que pones en el post "Programa con funciones en función de una opción" salta a la vista que más bien parece una falta de fe en ti mismo o que te has bloqueado. Así que ahí va una posible solución a tu problema, calcula los N primos indicados guardándolos en un array como pedias:
Código
  1. #include <stdio.h>
  2. #include <math.h>
  3. int main()
  4. {
  5.    int i,j=0,N,primos[1001];
  6.    printf ("Introduzca un numero:");
  7.    scanf ("%d",&N);
  8.    for (i=0;j<N;i++){
  9.        if (esPrimo(i)!=0) {
  10.            primos[j]=i;
  11.            j++;
  12.        }
  13.    }
  14.    for (i=0;i<N;i++)
  15.        printf ("%d   ",primos[i]);
  16.    return 0;
  17. }
  18. int esPrimo(int n)
  19. {
  20. int rq ,i;
  21. rq = (int) sqrt (n);
  22. for ( i = 2; i <= rq; i++)
  23. {
  24. if (fmod(n,i) == 0)
  25. return 0;
  26. }
  27. return n;
  28. }
Saluditos!.
« Última modificación: 24 Noviembre 2012, 22:50 pm por leosansan » En línea

Beakman

Desconectado Desconectado

Mensajes: 190



Ver Perfil WWW
Re: Programa que imprima los 1000 primeros numeros primos
« Respuesta #7 en: 24 Noviembre 2012, 23:30 pm »

A la vista del código que pones en el post "Programa con funciones en función de una opción" salta a la vista que más bien parece una falta de fe en ti mismo o que te has bloqueado. Así que ahí va una posible solución a tu problema, calcula los N primos indicados guardándolos en un array como pedias:
Código
  1. ( ... )
Saluditos!.



Qué gracia tiene si le regalás el programa? Esto no lo ayuda en nada. Al contrario, lo perjudica.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines