Читать книгу Полезные программы Python-3. Книга третья - Сергей Фёдорович Гаврилов - Страница 13
Расчет Правильного многогранника
ОглавлениеЛистинг программы.
# -*– coding: cp1251 -*-
import math # Подключили математический модуль
Pii=math.pi # Вытащили число " Пи "
uu=" "
print (uu)
print (uu)
u=" Расчет Правильного многогранника "
print (u)
print (uu)
u=" ...... ...... ...... ...... "
print (u)
print (uu)
u=" Введите Описанный диаметр "
print (u)
u=" при вводе нуля – переход на вписанный диаметр "
print (u)
print (uu)
D=0.00000000
D=input( ) # Вводим число
D=float(D) # – Принудительно в вещественное число
x=0.00000000
y=0.00000000
v=0.00000000
Sk=0.0000000
St=0.00000000
S=0.000000000
Ex=10000000
vv=0 # Флаг расчета при заданном Описанном диаметре
vv=float(vv)
if D==0:
# Далее Cдвиг – четыре пробела в начале каждой строки
u=" ...... ...... ...... ...... "
print (u)
print (uu)
u=" Введите Вписанный диаметр "
# Вписанный диаметр, при четном числе граней,
# является размером под ключ.
print (u)
print (uu)
Sv=0.00000000
Sv=input( ) # Вводим число
Sv=float(Sv) # – Принудительно в вещественное число
u=" Введите число Граней "
print (uu)
print (u)
print (uu)
n=0.00000000
n=input( ) # Вводим число
n=float(n) # Принудительно в вещественное число
sur=2*Pii/n # Угол А в радианах
su=360/n # Угол А в градусах
au=su
yg=au
yr=sur
x=math.cos(sur/2) # Cos Угла А
y=Sv/2
R=y/x
D=R+R
vv=1 # Флаг расчета при заданном Вписанном диаметре
# Далее Cдвига нет…
if vv==0:
# Далее Cдвиг – четыре пробела в начале каждой строки
u=" Введите число Граней "
print (uu)
print (u)
print (uu)
n=0.00000000
n=input( ) # Вводим число
n=float(n) # Принудительно в вещественное число
R=D/2
sur=2*Pii/n # Угол А в радианах
su=360/n # Угол А в градусах
au=su
yg=au
yr=sur
x=math.cos(sur/2) # Cos Угла А
y=R*x
# Далее Cдвига нет ….
Sh=y
Sv=y+y
b=R-y
x=(R*R)-(y*y)
c=math.sqrt(x) # Квадратный корень из " x "
a=c+c
Sm=(a*(R-b)/2)*n # Площадь многогранника
nn=0
# Вывод по Многограннику
u=" Описанный диаметр = "
ss=str(D) # Преобразуем число в строку
u=u+ss
print (u)
print (uu)
u=" Число граней = "
ss=str(n) # Преобразуем число в строку
u=u+ss
print (u)
print (uu)
u=" Высота: Грань – Центр = "
ss=str(Sh) # Преобразуем число в строку
u=u+ss
print (u)
print (uu)
u=" Вписанный диаметр = "
ss=str(Sv) # Преобразуем число в строку
u=u+ss
print (u)
print (uu)
u=" Ширина грани = "
ss=str(a) # Преобразуем число в строку
u=u+ss
print (u)
print (uu)
u=" Площадь Многогранника = "
ss=str(Sm) # Преобразуем число в строку
u=u+ss
print (u)
print (uu)
input( ) # Ожидание нажима Ентер
# Позволяет рассмотреть результаты расчета
# ..... Конец листинга программы .....
# ...... ...... ....... ...... ......