Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.98/55: Рейтинг темы: голосов - 55, средняя оценка - 4.98
3 / 3 / 0
Регистрация: 20.03.2020
Сообщений: 85

Сократить дробь

16.11.2020, 19:06. Показов 13316. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Вася не очень "дружит" с дробями. Но понимает: для того, чтобы их вычитать или складывать, нужно сначала привести к общему знаменателю. Помоги Васе написать программу, которая не только может вычесть две несократимые дроби, но и выведет результат в несократимом виде.

Формат ввода
На вход подается 4 числа: числитель и знаменатель первой дроби, затем числитель и знаменатель второй дроби.

Формат вывода
Выводится строка: числитель результата/знаменатель результата в несократимом виде.

Пример 1
Ввод
13
21
3
7
Вывод
4/21
Пример 2
Ввод
7
8
3
8
Вывод
1/2
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
16.11.2020, 19:06
Ответы с готовыми решениями:

Сократить дробь
Даны два натуральных числа n и m. Сократите дробь (n / m), то есть выведите два других числа p и q таких, что (n / m) = (p / q) и...

Сократить дробь
Написал функцию вычисления НОД, чтобы сократить дробь, но выводит TypeError: unsupported operand type(s) for /: 'int' and 'NoneType',...

Нужно сократить дробь
a = int(input()) ch0 = int(input()) zn0 = int(input()) ch_o = ch0 zn_o = zn0 for i in range(a - 1): ch = int(input()) ...

3
Status 418
Эксперт Python
4584 / 2350 / 601
Регистрация: 26.11.2017
Сообщений: 5,262
Записей в блоге: 3
16.11.2020, 19:35
Python
1
2
3
4
5
6
from fractions import Fraction
x1 = int(input())
y1 = int(input())
x2 = int(input())
y2 = int(input())
print(Fraction(x1, y1)-Fraction(x2, y2))
3
2 / 2 / 0
Регистрация: 03.04.2022
Сообщений: 5
03.04.2022, 16:52
Возможно не самое идеальное решение, но вроде работает.
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
x_1 = int(input())
y_1 = int(input())
x_2 = int(input())
y_2 = int(input())
x_3 = x_1 * y_2 - x_2 * y_1
y_3 = y_1 * y_2
delitel = y_3
while delitel >= 1:
    a = y_3
    b = x_3
    while a % b != 0:
        c = a % b
        a, b = b, c
    delitel = b
    if x_3 % delitel == 0 and y_3 % delitel == 0:
        x_3 = x_3 // delitel
        y_3 = y_3 // delitel
    break
print(str(x_3) + "/" + str(y_3))
2
0 / 0 / 0
Регистрация: 11.06.2023
Сообщений: 7
16.06.2023, 20:25
Цитата Сообщение от eaa Посмотреть сообщение
from fractions import Fraction
Не знал о такой библиотеке. Спасибо!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
16.06.2023, 20:25
Помогаю со студенческими работами здесь

Даны два натуральных числа a и b, обозначающие соответственно числитель и знаменатель дроби. Сократить дробь, используя
Даны два натуральных числа a и b, обозначающие соответственно числитель и знаменатель дроби. Сократить дробь, используя функцию определения...

Десятичная дробь
Дробь 1/8 может быть представлена в виде конечной десятичной дроби 0,125, а дробь 1/7 – в виде бесконечной десятичной дроби...

Периодическая дробь
Приведите периодическую десятичную дробь к обыкновенному виду. Формат ввода Одна периодическая десятичная дробь. Дробная часть...

Сократить текст
На ввод дается программа на языке Python. Необходимо убрать лишние пробелы, убрать комментарии (текст после #), не трогать текст внутри...

Сократить код
Написал простенький код, который перемножает 2 числа. Можно как либо сократить? import math n1 = int(input('Введите...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru