De fração para número misto

Published by Matt in

Crie uma função que receba uma string que representa uma fração e retorne uma string que represente essa entrada como um número misto.

  • Números mistos têm a forma 1 2/3 — observe o espaço entre a parte inteira e a parte fracionária.
  • As frações resultantes devem estar completamente simplificadas (consulte o exemplo 2).
  • Se o resultado for um número inteiro sem resto fracionário, retorne apenas a parte inteira (consulte o exemplo 3).
  • Se o resultado for apenas fracionário, sem uma parte inteira, retorne apenas a parte fracionária (consulte o exemplo 4).
  • Se o resultado for negativo, a parte inteira deverá conter o sinal negativo. Se o resultado não tiver uma parte inteira, o numerador da parte fracionária deverá conter o sinal negativo (consulte os exemplos 5 - 7).

Exemplos

mixed_number("5/4") ➞ "1 1/4"

mixed_number("6/4") ➞ "1 1/2"

mixed_number("8/4") ➞ "2"

mixed_number("4/6") ➞ "2/3"

mixed_number("-1/4") ➞ "-1/4"

mixed_number("-5/4") ➞ "-1 1/4"

mixed_number("-8/4") ➞ "-2"

Observações

Todas as entradas fornecidas terão um formato semelhante, os números negativos serão fornecidos apenas na parte do numerador, e nenhuma entrada conterá espaços, caracteres inválidos ou denominadores iguais a zero.