Hola a tod@s quieria saber como puedo sacar de un numero con decimales su division mas esacta es decir:
me dan 0.333 y quiero obtener 1/3.
Si m podeis ayudar. un saludo y Gracias
| |||
| cuestion sobre decimales en C# Hola a tod@s quieria saber como puedo sacar de un numero con decimales su division mas esacta es decir: me dan 0.333 y quiero obtener 1/3. Si m podeis ayudar. un saludo y Gracias |
| |||
| bueno probe algo y aca tienes esto solo es los decimales finitos, no los periodicos:
Código:
espero qu e te sirva.. :) float a,b,c;
a=0.75;
b=a;
c=0;
int count=1;
while(b!=c){
b*=10;
c=int(b);
count*=10;
}
int as;
as=int(b);
//verificamos si el menor puede dividir abajo para factorizar
if((count%as)==0){
count/=as;
as/=as;
}
//como los unicos primos posibles de dividir es el 2 y 5 preguntamos si es
//posible, y los factorizamos
while(((count%5)==0)&&((as%5)==0)){
count/=5;
as/=5;
}
while(((count%2)==0)&&((as%2)==0)){
count/=2;
as/=2;
}
printf("la fracción es:%d/%d",as,count);
|
Este tema le ha gustado a 1 personas (incluyéndote)