Dev - C++ - ayuda en c++

   
Vista:

ayuda en c++

Publicado por andres199 (2 intervenciones) el 01/12/2015 00:39:17
alguien que me pueda ayudar a solucionar este problema con este codigo


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include <iostream>
using namespace std;
int main()
{
int num,n,c=0,a,con=0;
for(a=1;a<=5;a++)
{
 
cout<<"ingrese un numero";
cin>>num;
for(n=1;n<=num;n++)
{
if(num%n==0)
{
c=c+1;
}
 
}
if(c>0&&c<=2)
{
con=con+1;
}
}
 
 
cout<<con<<" numeros primos";
}





el programa tiene que mostrarme cuantos numeros primo introduce por teclado
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

ayuda en c++

Publicado por agustin (306 intervenciones) el 01/12/2015 05:32:21
Veo un fallo claro, después de ingresar un número y antes de entrar al segundo for tienes que poner c a 0.
Además esto: if(c>0&&c<=2) yo lo pondría asi: if(c<=2) ya que en el for empiezas con 1 y todos los números son divisibles por 1, terminas con el propio número y todos los números son divisibles por si mismos y si c vale más de 2 quiere decir que es divisible por otro y si no pues es primo. No hace falta que compares con 0 a no ser que ingreses un número negativo o un 0 con lo que para ese caso tendrías que gestionarlo a parte ya que si ingreso -4 no es un número primo y el bucle desbordar la variable n por lo que antes de entrar al bucle deberías comprobar que num sea un valor válido.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

ayuda en c++

Publicado por andres199 (2 intervenciones) el 01/12/2015 23:34:16
muchas gracias amigo ... si el problema estava en la variable "c" , gracias por el aporte y esporo poder ayudar cuando os necesiteis;)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar