¿Cómo funciona la función pow?
Después de compilar el siguiente programa obtengo el resultado "2346" pero esperaba "2345".
#include<math.h>
#include<iostream.h>
int nr_cif(int a)
{
int k=0;
while(a!=0)
{
a = a/10;
k++;
}
return k;
}
void Nr(int &a){
int k = nr_cif(a);
a = a % (int)pow(10,k-1);
}
int main()
{
int a = 12345;
Nr(a);
cout<<a;
}
Después de la depuración, noté que falla después de evaluar: a = a% (int) pow (10, k-1). ¿Por qué se rompe aquí?