рограммирование - вычислитель объемов. После появления стажеров-человеков во вселенной Кербина, темпы освоения космоса ускорились настолько, что новые космические станции и базы на планетах стали проектироваться десятками. Инженеры систем жизнеобеспечения просто замучались рассчитывать полезные объемы всех новых станций и попросили помочь им написать программу, которая эти объемы считает автоматически (и тут мы забудем на минутку, что любой нормальный САПР отлично умеет считать объемы, как мы уже видели в "конструкторской" части этого теста! Может быть, у Кербалов это все не так).
Кербальские конструкторы всегда сооружают свою космическую технику из следующих форм: сфер, полусфер, торов (бубликов), цилиндров и усеченных конусов. На входе вашей программы будет список таких форм, с размерами, на выходе - одно число, объем всей конструкции в м3. Заказчики сказали, что можно пренебречь тем, что эти тела в конструкции пересекаются, и просто считать сумму объемов. Формулы для каждого типа тела найдите сами в интернете.
На входе в программу читаем из входного потока:
N - число строк с описаниями геометрических тел
тело 1
тело 2
...
тело N
Одна строка описывает одно тело. Первая буква определяет форму, дальше через пробел идут параметры:
S диаметр - (sphere) сфера заданного диаметра
D диаметр - (dome - купол) полусфера заданного диаметра
С диам1 диам2 выс - цилиндр, конус или усеченный конус, определяется диаметром нижнего и верхнего основания и высотой. Если диам1=диам2, то это цилиндр, если один из диаметров 0 - конус, иначе - усеченный конус.
Т толщ диам - это тор, "толщ" - диаметр сечения, "диам" - диаметр окружности, вокруг которой он закручен (проходит через центр сечения)
На выходе: одна строка с числом - суммарный объем космической станции.
Sample Input 1:
1
S 10
Sample Output 1:
523.5987755982989
Sample Input 2:
1
D 10
Sample Output 2:
261.79938779914943
Sample Input 3:
1
C 4 6 10
Sample Output 3:
198.96753472735355
Sample Input 4:
1
T 2 8
Sample Output 4:
78.95683520871486
Напишите программу. Тестируется через stdin → stdout
Кербальские конструкторы всегда сооружают свою космическую технику из следующих форм: сфер, полусфер, торов (бубликов), цилиндров и усеченных конусов. На входе вашей программы будет список таких форм, с размерами, на выходе - одно число, объем всей конструкции в м3. Заказчики сказали, что можно пренебречь тем, что эти тела в конструкции пересекаются, и просто считать сумму объемов. Формулы для каждого типа тела найдите сами в интернете.
На входе в программу читаем из входного потока:
N - число строк с описаниями геометрических тел
тело 1
тело 2
...
тело N
Одна строка описывает одно тело. Первая буква определяет форму, дальше через пробел идут параметры:
S диаметр - (sphere) сфера заданного диаметра
D диаметр - (dome - купол) полусфера заданного диаметра
С диам1 диам2 выс - цилиндр, конус или усеченный конус, определяется диаметром нижнего и верхнего основания и высотой. Если диам1=диам2, то это цилиндр, если один из диаметров 0 - конус, иначе - усеченный конус.
Т толщ диам - это тор, "толщ" - диаметр сечения, "диам" - диаметр окружности, вокруг которой он закручен (проходит через центр сечения)
На выходе: одна строка с числом - суммарный объем космической станции.
Sample Input 1:
1
S 10
Sample Output 1:
523.5987755982989
Sample Input 2:
1
D 10
Sample Output 2:
261.79938779914943
Sample Input 3:
1
C 4 6 10
Sample Output 3:
198.96753472735355
Sample Input 4:
1
T 2 8
Sample Output 4:
78.95683520871486
Напишите программу. Тестируется через stdin → stdout