🔍 Как сократить дробь в Python: простые способы и примеры кода
Чтобы сократить дробь в Python, вы можете воспользоваться функцией fractions.gcd()
из модуля fractions
. Программа находит наибольший общий делитель числителя и знаменателя дроби и затем делит оба числа на этот делитель.
from fractions import Fraction
def сократить_дробь(num, den):
gcd = fractions.gcd(num, den)
num //= gcd
den //= gcd
return num, den
числитель = 10
знаменатель = 25
сокращенная_дробь = сократить_дробь(числитель, знаменатель)
print(f"Сокращенная дробь: {сокращенная_дробь[0]}/{сокращенная_дробь[1]}")
В данном примере функция сократить_дробь()
принимает числитель и знаменатель дроби, находит их наибольший общий делитель и затем делит оба числа на этот делитель. Программа выводит сокращенную дробь.
Детальный ответ
Как сократить дробь в Python
Дроби в программировании являются одним из основных типов данных, и иногда нам может потребоваться сократить дробь до наименьших целых значений. В Python эта задача может быть легко выполнена с помощью встроенной функции math.gcd(). Давайте рассмотрим подробнее, как использовать эту функцию для сокращения дробей в Python.
Когда мы говорим о "сокращении дроби", мы подразумеваем нахождение наибольшего общего делителя (НОД) числителя и знаменателя и деление обоих на этот НОД. В Python мы можем использовать функцию math.gcd(a, b) для нахождения НОД двух чисел.
Вот пример кода, который демонстрирует, как сократить дробь с помощью функции math.gcd():
import math
def сократить_дробь(числитель, знаменатель):
наибольший_общий_делитель = math.gcd(числитель, знаменатель)
сокращенный_числитель = числитель / наибольший_общий_делитель
сокращенный_знаменатель = знаменатель / наибольший_общий_делитель
return int(сокращенный_числитель), int(сокращенный_знаменатель)
числитель = 8
знаменатель = 12
сокращенная_дробь = сократить_дробь(числитель, знаменатель)
print(f'Сокращенная дробь: {сокращенная_дробь[0]}/{сокращенная_дробь[1]}')
Здесь мы определяем функцию сократить_дробь(числитель, знаменатель), которая принимает числитель и знаменатель дроби. Затем мы используем функцию math.gcd() для нахождения НОД и делим числитель и знаменатель на этот НОД для получения сокращенной дроби. Наконец, мы возвращаем сокращенный числитель и знаменатель.
В приведенном выше коде мы используем числитель 8 и знаменатель 12. После сокращения дроби результат будет 2/3.
Теперь вы знаете, как сократить дробь в Python, используя функцию math.gcd(). Это довольно простой способ сделать ваш код более эффективным и удобочитаемым. Помните, что функция math.gcd() работает только с целыми числами, поэтому, если вам нужно сократить дробь с плавающей запятой, вам может потребоваться выполнить дополнительные преобразования.