Найти - Пользователи
Полная версия: Никак не могу решить это задание.
Начало » Центр помощи » Никак не могу решить это задание.
1
Anyuta3
Составить программу для решения приведенного ниже задачи
Придумать и задать входные данные так, чтобы выбор был из 4-7 альтернатив.

Элементы равностороннего треугольника пронумерованы следующим образом: 1 - сторона а, 2 -Радиус R1 вписанной окружности (R1 = a√3 / 6), 3 - радиус R2 описанной окружности (R2 = 2R1), 4-площадь S = a 2√3 / 4. Данный номер одного из этих элементов и его значение. Вывести значения остальных элементов этого треугольника (в том же порядке).
PEHDOM
Anyuta3
1. команду case
Дык никто не может, в пайтоне нет case, поэтому задание невыполнимо по определению.
pokryshkin
PEHDOM
в пайтоне нет case
https://www.python.org/dev/peps/pep-0636/
Rodegast
Case появится токлько в версии 3.10, да и если честно, то не особо он и нужен…
https://leftjoin.ru/all/pattern-matching-v-python/
PEHDOM
pokryshkin это для 3.10, 3.10 cейчас в состоянии beta preview, так что считайте что нету. Как выйдет stable так можно будет говорить что есть. Очень сочневаюсь что школьники учат ЯП по beta preview версии ЯП.
py.user.next
Anyuta3
Элементы равностороннего треугольника пронумерованы следующим образом: 1 - сторона а, 2 -Радиус R1 вписанной окружности (R1 = a√3 / 6), 3 - радиус R2 описанной окружности (R2 = 2R1), 4-площадь S = a 2√3 / 4. Данный номер одного из этих элементов и его значение. Вывести значения остальных элементов этого треугольника (в том же порядке).

Элементы равностороннего треугольника пронумерованы следующим образом:
1 - сторона а,
2 - радиус R1 вписанной окружности (R1 = a√3 / 6),
3 - радиус R2 описанной окружности (R2 = 2R1),
4 - площадь S = a^2 √3 / 4.
Дан номер одного из этих элементов и его значение.
Вывести значения остальных элементов этого треугольника (в том же порядке).

  
>>> def input_data():
...     parts = input('Enter number and value: ').split()
...     if len(parts) != 2:
...         raise ValueError('Incorrect input: ' + str(parts))
...     number = int(parts[0])
...     value = float(parts[1])
...     return (number, value)
... 
>>> def process_data(number, value):
...     if number == 1:
...         side = value
...     elif number == 2:
...         side = value / (3 ** 0.5 / 6)
...     elif number == 3:
...         side = value / (2 * 3 ** 0.5 / 6)
...     elif number == 4:
...         side = (value / (3 ** 0.5 / 4)) ** 0.5
...     else:
...         raise ValueError('Incorrect number: ' + str(number))
...     out = (
...         side,
...         side * 3 ** 0.5 / 6,
...         2 * side * 3 ** 0.5 / 6,
...         side * side * 3 ** 0.5 / 4
...     )
...     return out
... 
>>> def print_data(side, rin, rout, area):
...     fmt = """\
... 1 - {}
... 2 - {}
... 3 - {}
... 4 - {}
... """
...     print(fmt.format(side, rin, rout, area), end='')
... 
>>> def process_all():
...     data = input_data()
...     data_counted = process_data(*data)
...     print_data(*data_counted)
... 
>>> process_all()
Enter number and value: 1 4
1 - 4.0
2 - 1.1547005383792515
3 - 2.309401076758503
4 - 6.928203230275509
>>> 
>>> process_all()
Enter number and value: 2 1.1547
1 - 3.9999981349995655
2 - 1.1547
3 - 2.3094
4 - 6.928196769725997
>>> 
>>> process_all()
Enter number and value: 3 2.3094
1 - 3.9999981349995655
2 - 1.1547
3 - 2.3094
4 - 6.928196769725997
>>> 
>>> process_all()
Enter number and value: 4 6.9282
1 - 3.999999067499674
2 - 1.1547002691895945
3 - 2.309400538379189
4 - 6.9282
>>> 
>>> process_all()
Enter number and value: 1 2 3
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "<stdin>", line 2, in process_all
  File "<stdin>", line 4, in input_data
ValueError: Incorrect input: ['1', '2', '3']
>>> 
>>> process_all()
Enter number and value: 5 2
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "<stdin>", line 3, in process_all
  File "<stdin>", line 11, in process_data
ValueError: Incorrect number: 5
>>>
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