Dev - C++ - Hacer un programa que simplifique fracciones c++

 
Vista:

Hacer un programa que simplifique fracciones c++

Publicado por Gabriel (1 intervención) el 07/09/2018 05:44:30
Hola, soy algo nuevo en c++ pero ya lo entendí, el problema es que, se me ocurrió la idea de hacer un programa que pueda realizar operaciones con fracciones, y ya prácticamente lo tengo, el problema es que la función que hice para simplificar sólo funciona con fracciones positivas, al momento de introducir una fracción negativa, no muestra resultado y se termina el programa.
Necesito ayuda, ¿alguien que pueda decirme un algoritmo para simplificar fracciones?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 209
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Hacer un programa que simplifique fracciones c++

Publicado por Martín (115 intervenciones) el 07/09/2018 18:40:32
Hola; para simplificar fracciones se puede dividir el numerador y el denominador por su MCD (máximo común divisor) (aunque también ví que hay quién lo llama "máximo divisor común", bueno, como sea. Una función para calcularlo puede ser:

1
2
3
4
int MCD(int a, int b)
{
    return b ? MCD(b, a%b) : a;
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 1
Ha disminuido su posición en 18 puestos en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Hacer un programa que simplifique fracciones c++

Publicado por Daniel (5 intervenciones) el 01/10/2018 00:08:53
Lo que se me ocurre es incluir en el algoritmo un If que vea si la fraccion(o division del numerador entre el denominador) es mayor, igual o menor que cero. Si es menor significa que es un numero negativo, simplemente lo multiplicas por -1 para volverlo positivo y usas tu algoritmo de simplificacion que ya tienes. El resultado los vuleves a multiplicar por -1.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar