Найти - Пользователи
Полная версия: Помогите решить задачку!
Начало » Центр помощи » Помогите решить задачку!
1
Alex73
Уважаемые , подскажите , как решить . Заранее вам благодарен
Условие задания: напишите свой первый класс Triangle, в котором есть поля angle_1, angle_2, angle_3 и который при инициализации проверяет, что все введенные числа положительные и что сумма углов треугольника равна 180°.
В случае, если треугольник может существовать, конструктор класса должен напечатать текст Triangle initialized, а если такой треугольник существовать не может, то Initialization failed.


Sample Input 1: 90 30 60

Sample Output 1:Triangle initialized

Sample Input 2: 120 90 60

Sample Output 2:Initialization failed

ZerG
СОгласно математических постулатов треугольник может существовать если сумма длины двух его сторон больше третьей.
Таким образом нужно всего лишь проверить 3 варианта
a +b > c
a +c > b
b + c > a
если все три условия истинны - Треугольник может существовать
Ну а дальше - дело пары минут

 class Triangle:
    def __init__(self, a, b, c) -> None:
        self.a = a
        self.b = b
        self.c = c
    def check(self):
        if (self.a + self.b) > self.c and (self.a + self.c) > self.b and (self.b + self.c) > self.a:
            return "Triangle initialized"
        else:
            return "Initialization failed "
    def __repr__(self) -> str:
        return self.check() 
false_tr = Triangle(90, 30, 60)
print(false_tr)
true_tr = Triangle(120, 90, 60)
print(true_tr)
Дальше добавьте остальные проверки и получите готовый результат
py.user.next
Alex73
Уважаемые , подскажите , как решить . Заранее вам благодарен
Условие задания: напишите свой первый класс Triangle, в котором есть поля angle_1, angle_2, angle_3 и который при инициализации проверяет, что все введенные числа положительные и что сумма углов треугольника равна 180°.
В случае, если треугольник может существовать, конструктор класса должен напечатать текст Triangle initialized, а если такой треугольник существовать не может, то Initialization failed.
Sample Input 1: 90 30 60
Sample Output 1:Triangle initialized
Sample Input 2: 120 90 60
Sample Output 2:Initialization failed

ZerG
СОгласно математических постулатов треугольник может существовать если сумма длины двух его сторон больше третьей.
Таким образом нужно всего лишь проверить 3 варианта
a +b > c
a +c > b
b + c > a
если все три условия истинны - Треугольник может существовать
Ну а дальше - дело пары минут
Ну ты даешь! Там вообще вводятся углы только.

1) вводятся углы
2) где оно должно проверять, какие углы вводятся?
3) где оно должно запретить инициализацию?

Так что вариант только один:
  
>>> class Triangle:
...     def __init__(self, angle_a, angle_b, angle_c):
...         if (angle_a > 0 and angle_b > 0 and angle_c > 0 and
...             angle_a + angle_b + angle_c == 180):
...             self.angle_a = angle_a
...             self.angle_b = angle_b
...             self.angle_c = angle_c
...             print('Triangle initialized')
...         else:
...             print('Initialization failed')
... 
>>> t = Triangle(10, 90, 80)
Triangle initialized
>>> t.angle_a, t.angle_b, t.angle_c
(10, 90, 80)
>>> 
>>> t = Triangle(10, 90, 70)
Initialization failed
>>> 
>>> t = Triangle(-10, 90, 100)
Initialization failed
>>>
ZerG
py.user.next
Ох ты ж
Я еще удивился что нужно вводить стороны а проверять углы - но да не суть
Акела промахнулся
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