Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: abner30 en 11 Junio 2011, 21:14 pm



Título: Numeros Primos C++ [resuelto]
Publicado por: abner30 en 11 Junio 2011, 21:14 pm
Tengo que hacer un programa en C++ (usando Visual C++) que me diga si un número es primo o nó, por medio de una clase. Todo bien si en número no es primo pero cuando lo es ne devuelve simbolos raros en vez de 's'. Porfavor ayuda, no se que estoy haciendo mal  :-(

Código
  1. #include <iostream>
  2. #include <math.h>
  3.  
  4. class CaracteristicaNumeros
  5. {
  6. int n; //declarando n se resolvio el problema, los 2 for funcionan como quiero
  7.  
  8. public:
  9.  
  10. char calc_primo(int n)
  11. {
  12. int x;
  13. if (n > 1)
  14. {
  15. for (x = 2; x <= n-1; x++)
  16. {
  17. if (n % x == 0 && n == x)
  18. return 'n';
  19. if (n % x == 0 && n != x)
  20. return 's';
  21. }
  22.  
  23. /*
  24. si cambio el for por este me dice que los multiplos de 9 y los que terminan en 5 son primos;
  25. pero 9 % 3 == 0 y 15 % 5 == 0 ?
  26.  
  27. al final use este for:
  28.  
  29. for (x = 2; x <= n-1; x++)
  30. {
  31. if (n % x == 0)
  32. {
  33. return 'n';
  34. break;
  35. }
  36. }
  37. return 's';
  38. */
  39.  
  40. }
  41. else
  42. return 'n';
  43. }
  44.  
  45. };
  46.  
  47. int _main()
  48. {
  49. int a;
  50. CaracteristicaNumeros objCN;
  51.  
  52. using namespace std;
  53.  
  54. do
  55. {
  56. cin >> a;
  57. cout << objCN.calc_primo(a) << "\n";
  58. }while(1==1);
  59. return 0;
  60. }
  61.  


Título: Re: ya lo tengo que alguien elimine esto =S
Publicado por: leogtz en 12 Junio 2011, 01:06 am
Cuando se resuelven las cosas, lo correcto es poner cómo lo resolviste, no pedir que te eliminen el mensaje, o ¿cómo apoyas a la comunidad?


Título: Re: Numeros Primos C++ [resuelto]
Publicado por: abner30 en 12 Junio 2011, 02:35 am
ups lo siento... la verdad, pero si les hace sentir mejor ya puse cual era el problema.
No se mucho de C++ pero parece un error muy tonto y se solucionó facil  :-[