Hola, estoy rompiéndome la cabeza con esto :huh:
Tengo una estructura llamada racional
Lo pongo en Pascal, pero puede ser valido para cualquier lenguaje
racional = record
numerador:integer;
denominador:integer;
end;
Como se darán cuenta, la estructura representa una fracción. Tiene un entero para el numerador y otro para el denominador.
Ahora bien, necesito hacer una función para que dado un REAL (no String) me devuelva un Racional.
Algo asi:
En Pascal:
function realARacional(r:real):racional;
o en C:
racional realARacional(float r);
(Creo que era asi :-X )
Y la verdad es que no me puedo dar cuenta como hacerlo.
Si tienen algun algoritmo que me sirva (me da igual que lenguaje) se los agradecería.
http://www.profesorenlinea.cl/matematica/Decimalafraccion.htm (http://www.profesorenlinea.cl/matematica/Decimalafraccion.htm)
los reales no son del todo convertibles a racionales, por ejemplo las raices inexactas no puedes llevarlas a fraccion (a menos que los trunques) será llevar de decimal (racional) a fraccion, no?