Найти - Пользователи
Полная версия: Помогите преобразовать код в класс
Начало » Python для новичков » Помогите преобразовать код в класс
1
DUDOSatacker
from fractions import Fraction
print('Введите первое рациональное число (прим. 1/2):')
a = list(map(int, input().split("/")))
print('Введите второе рациональное число (прим. 2/5)')
b = list(map(int, input().split("/")))
print('Выберите арифметическую операцию (прим. +, -, *, /)')
c = input()
if c == "+":
print(Fraction(a[0], a[1]) + Fraction(b[0], b[1]))
elif c == "-":
print(Fraction(a[0], a[1]) - Fraction(b[0], b[1]))
elif c == "*":
print(Fraction(a[0], a[1]) * Fraction(b[0], b[1]))
elif c == '/':
print(Fraction(a[0], a[1]) / Fraction(b[0], b[1]))
else:
print('Проверьте правильность введенных данных')
FishHook
DUDOSatacker
Класс, это не способ организации кода, нельзя взять любой произвольный кусок листинга программы и сделать из него класс путем какого-то преобразования. Так же, как нельзя из какого-то произвольного текста сделать статью на википедии, а из рандомного набора шестеренок - механизм. Технически можно, конечно, но бессмысленно. Для того, чтобы иметь классы, сначала нужно определить ответственности этих классов и их интерфейсы, через интерфейсы связать классы между собой, а уже потом начать наполнять конкретные методы логикой. У вас есть три переменные. С какой-то вероятностью могу прежположить, что это калькулятор, и можно было бы выделить ответственности Регистр, Аккумулятор, АЛУ, Устройство Ввода, Устройство Вывода и тд. и построить на этой основе программу. Но это только мое предположение и из вашего кода этого напрямую не следует, это вполне может быть и не калькулятор, тогда будут другие ответственности и соответствующие классы. В том виде, в котором вы дали задачу, она бессмысленна чуть менее, чем полностью, и никакие классы вам не нужны.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB