Autor
|
Tema: Ayuda con un programa en C++ (Leído 2,529 veces)
|
Gagy
Desconectado
Mensajes: 21
|
Me han pedido que haga un programa en C++ tal que así: "Leemos diez números por teclado. El programa tiene que mostrar cuáles son primos y cuántos hay." Necesito hacerlo con el código más simple posible, ya que estoy aprendiendo, con #include<iostream> y #include<cmath> Gracias de antemano.
|
|
|
En línea
|
|
|
|
Xenomorfo77
Desconectado
Mensajes: 61
|
Espero que te sirva si tienes dudas pregunta. Un saludo. #include <iostream> #include <stdlib.h> using namespace std; bool primo(int n) { int res; for(int w=2; w < n-1; w++) { res = n % w; if(res==0) return false; } return true; } int main() { int numero[100]; bool primos = false; int cont = 0; cout << "Introducza los numeros" << endl; for(int j=0;j<10;j++) { cout << "Numero " << j+1 <<": "; cin >> numero[j]; } for(int h=0;h<10;h++) { primos = primo(numero[h]); if(primos==true) { cout << numero[h]<< " "; cont++; } } cout << "Hay " << cont << " numeros primos"<<endl; getchar(); return 0; }
|
|
« Última modificación: 3 Diciembre 2012, 19:31 pm por Xenomorfo77 »
|
En línea
|
|
|
|
Gagy
Desconectado
Mensajes: 21
|
Muchas gracias! Pero hay un problema, cuando ya he introducido todos los números, se me cierra el programa de repente, sin poder leer el resultado. ¿Podrías hacer algo? Por lo demás genial, muchas gracias por ayudarme.
|
|
|
En línea
|
|
|
|
leosansan
Desconectado
Mensajes: 1.314
|
Me han pedido que haga un programa en C++ tal que así: "Leemos diez números por teclado. El programa tiene que mostrar cuáles son primos y cuántos hay." Necesito hacerlo con el código más simple posible, ya que estoy aprendiendo, con #include<iostream> y #include<cmath> La librería math no se usa en este caso y más simple que el de Xenomorfo77 sería sin usar array ni función:#include <iostream> #include <stdio.h> using namespace std; main() { int i,cont=0,j,num,k; for (i=0;i<10;i++){ cout <<"Ingresa el numero "<<i+1<<": "; cin >>num; k=0; for (j=1; j<=num; j++) if (num%j == 0) k++; if (k == 2 || num == 1){ cont++; cout <<"El numero "<<num<<" esprimo"<<endl; } else cout <<"El numero "<<num<<" NO esprimo"<<endl; } cout <<"El numero de primos es :"<<cont<<endl; return 0; }
Saluditos!.
|
|
|
En línea
|
|
|
|
Xenomorfo77
Desconectado
Mensajes: 61
|
Muchas gracias! Pero hay un problema, cuando ya he introducido todos los números, se me cierra el programa de repente, sin poder leer el resultado. ¿Podrías hacer algo? Por lo demás genial, muchas gracias por ayudarme.
Ya he modificado el code para que se pueda ver el resultado un saludo. Si acaso sigue sin irte añade otro getchar() mas.
|
|
« Última modificación: 3 Diciembre 2012, 20:12 pm por Xenomorfo77 »
|
En línea
|
|
|
|
Xenomorfo77
Desconectado
Mensajes: 61
|
La librería math no se usa en este caso y más simple que el de Xenomorfo77 sería sin usar array ni función:#include <iostream> #include <stdio.h> using namespace std; main() { int i,cont=0,j,num,k; for (i=0;i<10;i++){ cout <<"Ingresa el numero "<<i+1<<": "; cin >>num; k=0; for (j=1; j<=num; j++) if (num%j == 0) k++; if (k == 2 || num == 1){ cont++; cout <<"El numero "<<num<<" esprimo"<<endl; } else cout <<"El numero "<<num<<" NO esprimo"<<endl; } cout <<"El numero de primos es :"<<cont<<endl; return 0; }
Saluditos!. Buen code, a veces hago las cosas mas complicadas de lo que son jajaja. Un saludo!
|
|
|
En línea
|
|
|
|
Gagy
Desconectado
Mensajes: 21
|
Muchísimas gracias!! Me habéis salvado, gracias de verdad a los dos.
|
|
|
En línea
|
|
|
|
|
|