• Jueves 28 de Marzo de 2024, 18:55

Autor Tema:  Problemas con Exponentes (Pow)  (Leído 2219 veces)

Dany Solis

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
Problemas con Exponentes (Pow)
« en: Jueves 13 de Julio de 2017, 18:49 »
0
Hola saludos a todos soy nuevo en este foro, en el cual pretendo ampliar mis conocimientos y porque no demostrar lo aprendido.

Bueno, paso a mi pregunta.

Tengo el siguiente codigo en DevC++, necesito leer un numero ingresado por el teclado y si es primo elevarlo al cuadrado si no es primo entonces elevarlo al cubo.

El problema es que que si ingreso el valor 5 ^2 el resultado deberia de ser 25, 11^2 deberia de ser 121.

Pero me esta dando como resultado para 5^2 me da 24, 11^2 me da 120, para 3 si me da el resultado correcto 9 para 7 tambien me da el resultado correcto 49 por lo cual no se donde este el error.

Espero me puedan ayudar este es el codigo que tengo:

Código: [Seleccionar]
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
#include <windows.h>
#include <math.h>

int main()

{
    system("color 0E");
   
    int Num,i,Divisores,R;
   
    Divisores=0;
   
    printf("Ingrese un numero cualquiera:\n");
    scanf("%d",&Num);
   
    for(i=1;i<=Num;i++)
    {
    if(Num%i==0)
    Divisores++;
    }
   
    if(Divisores==2)
    { 
     R=pow(Num,2);                           
     printf("El numero %d es primo: \n",Num);
     printf("y su potencia al ^2 es %d: \n",R);             
     }
     else
     {
     R=pow(Num,3);   
     printf("El numero %d no es primo: \n",Num);
     printf("y su potencia al ^3 es %d: \n",R);
     }
    getch();
    return 0;
    }


Gracias de antemano por la ayuda que se me pueda brindar....!

DS     :ayuda:

Dany Solis

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
Re:Problemas con Exponentes (Pow)
« Respuesta #1 en: Jueves 13 de Julio de 2017, 20:20 »
0
Listo, solo cambie el tipo de dato de la variable a R a float.

float R;

Con esto solucione mi problema.

Gracias pueden cerrar el hilo.

DS    :bravo:

chenech

  • Miembro activo
  • **
  • Mensajes: 96
    • Ver Perfil
Re:Problemas con Exponentes (Pow)
« Respuesta #2 en: Jueves 13 de Julio de 2017, 20:23 »
0
Buenas tardes, he compilado el código que has puesto sin variar ni una coma y me da los resultados bien.
Me lleva a pensar en el compilador o redondeo o algo así.
Yo uso Borland C++ 5 y ya te digo, da perfecto, no es el programa ni código, sino configuración, compilador, etc.

Un saludo.

Edito: Pues era redondeo :-)
« última modificación: Jueves 13 de Julio de 2017, 20:27 por chenech »