Геометрия многогранника



Листинг программы.

# -*– coding: cp1251 -*-

# Проверено 24-06-2014 г..

import sys # Подключили основные библиотеки

import math # Подключили математич модуль

import os # Подключили модуль работы с файлами

Pii=math.pi # Вытащили число " Пи "

uu=" "

print (uu)

print (uu)

print (uu)

u1=" Расчет геометрии многогранника "

print (u1)

print (uu)

u=" Введите число граней "

print (uu)

print (u)

n=0.00000

n=input( )

n=float(n) # Принудительно в вещественное число

ur=Pii/n # Половина угла на грань

u=" Введите описанный диаметр "

print (uu)

print (u)

u=" при вводе нуля – переход на вписанный диаметр "

print (uu)

print (u)

d=0.00000

dv=0.0000

d=input( )

d=float(d) # Принудительно в вещественное число

if d>0:

# Далее Cдвиг – четыре пробела в начале каждой строки

x=math.cos(ur)

r=(d/2)*x

dv=r+r

R=d/2

# Далее Конец Cдвига – четыре пробела в начале каждой строки

if d==0:

# Далее Cдвиг – четыре пробела в начале каждой строки

u=" Введите Вписанный диаметр "

print (uu) # Вписанный диаметр при четном числе граней это размер под ключ

print (u)

dv=input( )

dv=float(dv) # Принудительно в вещественное число

x=math.cos(ur)

R=(dv/2)/x

d=R+R

r=dv/2

# Далее Конец Cдвига – четыре пробела в начале каждой строки

print (uu)

print (uu)

u=" .... .... ..... .... ..... ..... ..... ..... ..... ..... "

print (u)

print (uu)

u=" Описанный диаметр = "

t=str(d) # Преобразуем число в строку

u2=u+t # сложим строки

print (uu)

print (u2)

u=" Вписанный диаметр = "

# При четном числе граней вписанный диаметр = размеру под ключ.

t=str(dv) # Преобразуем число в строку

u3=u+t # сложим строки

print (uu)

print (u3)

u=" Центральный угол опирающийся на грань = "

x=ur*360/Pii

t=str(x) # Преобразуем число в строку

u4=u+t # сложим строки

print (uu)

print (u4)

u=" Ширина грани = "

x=(R*R)-(r*r)

sg=2*(math.sqrt(x))

t=str(sg) # Преобразуем число в строку

u5=u+t # сложим строки

print (uu)

print (u5)

u=" Площадь многогранника = "

x=(sg*r*n)/2

t=str(x) # Преобразуем число в строку

u6=u+t # сложим строки

print (uu)

print (u6)

# ..... ..... ..... ..... ....

print (uu)

u=" .... .... ..... .... ..... ..... ..... ..... ..... ..... "

print (u)

print (uu)

print (uu)

# ..... ..... ..... ..... ....

f = open('Rezult.txt', 'w') # Открыли файл для записи

# Записываем числа в текстовом виде

u=uu+"\n" # Добавим код перевода строки

f.write(u)


u=u1+"\n" # Добавим код перевода строки

f.write(u1)

uu=" "+"\n"

f.write(uu)

uuu=" ...... ...... ...... ..... "+"\n"

f.write(uuu)

u=u2+"\n"

f.write(u)

u=u3+"\n"

f.write(u)

u=u4+"\n"

f.write(u)

f.write(uuu)

u=u5+"\n"

f.write(u)

u=u6+"\n"

f.write(u)

f.write(uuu)

f.close() # закрыли файл

input( ) # Ожидание нажима Ентер

# ..... ..... ..... ..... ....

input( ) # Ожидание нажима Ентер

# Контрольный расчет:

# Расчет геометрии многогранника

# ...... ...... ...... .....

# Описанный диаметр = 100.0

# Вписанный диаметр = 80.90169943749474

# Центральный угол опирающийся на грань = 72.0

# ...... ...... ...... .....

# Ширина грани = 58.778525229247315

# Площадь многогранника = 5944.10322684471

# ...... ...... ...... .....

# ..... ..... ..... Конец листинга программы ..... ....

Загрузка...