Hola que tal buenas
tengo otro peqeuó problemilla con c++
quiero hacer un script que transforme numeros decimales a fracciones. POR EJEMPLO DE 0.5 a 5/10 = 1/2
el problema es que en
no hace bien la comparacion y probado de cambiar la coma y de todo pero no he averiguado que le pasa aqui hay el codigo entero
#include <iostream>
#include <string>
#define cls string limpiarpantalla="cls";+system(limpiarpantalla.c_str ());
using namespace std;
//Pasa numeros decimales a fraccions
int simplifica(float n, float nn) {
float kk,k,a,s,ss = 0;
for (int i=1;i<10;i++) {
s = n/i;
ss = nn/i;
k=0;
k=ss-int(ss);
kk=s-int(s);
if ((k<1)&&(k>0)) {
} else if ((kk>0)&&(kk<1)) {
} else {
cout << endl << s << "/" << ss << endl;
}
}
}
int main () {
float a,b,r1;
cin >> a;
b=a-int(a);
cls
cout << b << endl;
if ((b<0,11)&&(b>0,1)) {
cout << a << " = " << a*10 << "/" << 10 << endl;
r1=a*10;
simplifica(r1, 10);
} else if ((b<0,101)&&(b>0,11)) {
cout << a << " = " << a*100 << "/" << 100 << endl;
r1=a*100;
simplifica(r1, 100);
}
}
MUCHAS GRACIAS
PD:Si no me explique bien perdonenme