Ви можете визначити об'єм об'єктів на основі заданого набору розмірів:
- Об'єм сфери можна визначити, використовуючи одне число, радіус (
r
) - Об'єм циліндра можна визначити, використовуючи два числа, радіус (
r
) і висоту (h
) - Об'єм коробки можна визначити за допомогою трьох чисел, довжини (
l
), ширини (w
) та висоти (h
) - Об'єм неправильної трикутної піраміди можна визначити за допомогою чотирьох чисел, довжини боків (
a, b, c
) та висоти (h
).
Завдання полягає у визначенні обсягу об'єкта, що задається одним із таких входів:
- Єдине число
(r)
або(r, 0, 0, 0)
=>V = 4/3*pi*r^3
- Два числа
(r, h)
або(r, h, 0, 0)
=>V = pi*r^2*h
- Три числа
(l, w, h)
або(l, w, h, 0)
=>V = l*w*h
- Чотири числа
(a, b, c, h)
=>V = (1/3)*A*h
, деA
задана формула Герона :A = 1/4*sqrt((a+b+c)*(-a+b+c)*(a-b+c)*(a+b-c))
Правила та роз'яснення:
- Вхід може бути як цілими чи / десятковими числами
- Ви можете припустити, що всі вхідні розміри будуть позитивними
- Якщо Pi закодований воно повинно бути з точністю до:
3.14159
. - Вихід повинен мати щонайменше 6 значущих цифр, за винятком чисел, які можна точно представити меншою кількістю цифр. Ви можете виводити
3/4
як0.75
, але4/3
має бути1.33333
(більше цифр у порядку)- Як округлювати неточні значення необов’язково
- Поведінка неправильного введення не визначена
- Стандартні правила вводу / виводу. Вхідним може бути список або окремі аргументи
Це кодовий гольф, тому найкоротше рішення в байтах виграє.
Тестові приклади:
calc_vol(4)
ans = 268.082573106329
calc_vol(5.5, 2.23)
ans = 211.923986429533
calc_vol(3.5, 4, 5)
ans = 70
calc_vol(4, 13, 15, 3)
ans = 24