Ограничения: время – 2s/4s, память – 32MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод
Послать решение Blockly Посылки Темы Где Обсудить (0)
Напишите программу, реализующую сложение, вычитание, умножение и деление дробей. Формат дробей во входных и выходных данных:
- знак числа (пишется только в случае, когда его отсутствие изменяет число);
- целая часть числа (нулевая целая часть не пишется, если есть числитель и знаменатель);
- пробел (не пишется, если отсутствует целая или дробная часть);
- числитель (если он не равен нулю);
- знак / (если есть числитель);
- знаменатель (если есть числитель).
Примеры представления дробных чисел: –7 3/4, 8 1/2, –7/11, 0, 11.
Ограничения (как на входные, так и на выходные данные): целая часть может принимать значения из диапазона 0…30 000, числитель и знаменатель могут принимать значения от 1 до 30 000, при делении второй операнд не равен нулю.
Ввод
В первой строке вводится дробь (первый операнд), во второй – знак операции ("+" – сложение, "-" – вычитание, "*" – умножение, "/" – деление), в третьей строке – дробь (второй операнд). Обе дроби могут быть сократимы.
Вывод
В единственной строке выводится несократимая правильная дробь (результат) в описанном формате.
Пример ввода
-3 1/6
+
2/4
Источник: Central quarterfinal NEERC, 2003