Страница 3 из 9
ss=str(Lx) # Преобразуем число в строку
Xord=u+ss
u=Xord+"n"
f.write(uu)
f.write(u)
x=(R*R)-(Lx*Lx)
z=math.sqrt(x)
y=R-z # Прогиб при хорде = Lx*2
ht=b-y # Расчитали величину подьема
u=" На растоянии от центра = "
ss=str(Lx) # Преобразуем число в строку
u=u+ss
print (u)
print (uu)
u=" Величина подьема ( перпендикуляра ) Hm = "
ss=str(ht) # Преобразуем число в строку
u=u+ss
print (u)
f.write(u)
f.write(uu)
print (uu)
u=" ================================================= "
print (u)
f.write(u)
print (uu)
input( ) # Ожидание нажима Ентер
# Далее Конец Cдвига – четыре пробела в начале каждой строки
print (uu)
input( ) # Ожидание нажима Ентер
print (uu)
# ....... ....... ....... ...... ...... ....... ....... ......
f.write(uu)
f.write(uuu)
f.close() # закрыли файл
# ....... ....... ....... ...... ...... ....... ....... ....... ........ ........ ........
u=" ...... ...... ...... Конец программы ...... ...... ...... "
print (u)
print (uu)
input( ) # Ожидание нажима Ентер – Позволяет рассмотреть результаты расчета
# ..... ..... ..... Конец листинга программы ..... ..
Хорда – Прогиб – Радиус
В этой программе объединены общим меню двенадцать небольших программ. Производится расчет при разном наборе исходных данных. Сейчас все привыкли к графическому интерфейсу – пункт меню вычирают мышкой и щелкают кнопкой. Здесь применен древний интерфейс: Пункты меню пронумерованы цифрами ( номерами ). Чтобы выбрать пункт меню – введите цифру номера пункта меню и нажмите Enter.
Листинг программы.
# -*– coding: cp1251 -*-
import math # Подключили математич модуль
global Rad # Радиус – Обьявили глобальную переменную
global Diam # Диаметр
global Xord # Хорда
global Progi # Прогиб
global UgSe # Угол раствора радиусов на хорду
global Dug # Длина дуги над хордой
global PlSe # Площадь сектора на хорду
global PlTr # Площадь Треугольника под хордой
global PlGo # Площадь Горбушки
u=" "
u=" Расчет элементов Хорда – Прогиб – Радиус "
print (uu)
print (u)
print (uu)
u=" ...... ...... ...... ...... ...... ...... ..... ...... "
print (u)
Pii=0.000000
Pii=math.pi # Вытащили число " Пи "
Kvz=0 # Флаг – Если =1 то работа уже выполнена.
print (uu)
u=" 1 – Расчет по Хорде – Радиусу "
print (u)
print (uu)
u=" 2 – Расчет по Хорде и Углу раствора "
print (u)
print (uu)
u=" 3 – Расчет координат Радиусной кривой "
print (u)
print (uu)
u=" 4 – Расчет по Хорде и длине Дуги "
print (u)
print (uu)
u=" 5 – Расчет по Хорде и Прогибу "
print (u)
print (uu)
u=" 6 – Расчет по Радиусу и Углу раствора "
print (u)
print (uu)
u=" 7 – Расчет по Радиусу и Прогибу "
print (u)
print (uu)
u=" 8 – Расчет по Радиусу и длине Дуги "
print (u)
print (uu)
u=" 9 – Расчет по Прогибу и длине Дуги "
print (u)
print (uu)
u=" 10 – Расчет по Прогибу и Углу раствора "
print (u)
print (uu)
u=" 11 – Расчет по Углу раствора и длине Дуги "
print (u)
print (uu)
u=" 12 – Расчет Правильного многогранника "
print (u)
print (uu)
u=" ...... ...... ...... ...... ...... ...... ..... ...... "
print (u)
q=0
q=input( ) # Вводим число
q=float(q) # Принудительно в вещественное число
# ...... ....... ....... ....... ....... ........ .......
if q==1:
Расчет по Хорде – Радиусу
# Далее Cдвиг – четыре пробела в начале каждой строки
print (uu)
print (uu)
u=" Расчет по Хорде – Радиусу "
print (u)
print (uu)
u=" Введите Хорду "
print (u)
print (uu)
a=0.00000000
a=input( ) # Вводим число
a=float(a) # Принудительно в вещественное число
u=" Введите Радиус "
print (u)
print (uu)
R=0.00000000
R=input( ) # Вводим число
R=float(R) # Принудительно в вещественное число
x=0.00000000
y=0.00000000
v=0.00000000
Sk=0.0000000
St=0.00000000
S=0.000000000
x=((R*R)-(a*a/4))
b=R-(math.sqrt(x)) # Квадратный корень из " x "
x=(a/2)/R
y=math.asin(x)
v=math.cos(y)
aur=2*y
au=aur*180/Pii # Угол А в градусах
Kvz=1 # Коэф – Расчет уже выполнен
# Далее Конец Cдвига – четыре пробела в начале каждой строки
else:
# Далее Cдвиг – четыре пробела в начале каждой строки
Kvz=0
# ...... ....... ....... ....... ....... ........ .......
# Далее Конец Cдвига – четыре пробела в начале каждой строки
if q==2:
Расчет по Хорде и углу раствора
# Угол раствора это угол между двумя радиусами идущими к концам хорды.
# Далее Cдвиг – четыре пробела в начале каждой строки
print (uu)
print (uu)
u=" Расчет по Хорде и углу раствора "
print (u)
print (uu)
u=" Введите Хорду "
print (u)
print (uu)
a=0.00000000
a=input( ) # Вводим число
a=float(a) # Принудительно в вещественное число
u=" Введите Угол раствора в градусах "
print (u)
print (uu)
au=0.00000000
au=input( ) # Вводим число
au=float(au) # Принудительно в вещественное число
x=0.00000000
aur=0.00000000
v=0.00000000
y=0.00000000
Sk=0.0000000
St=0.00000000
S=0.000000000
aur=au*Pii/180
x=math.sin(aur/2)
R=(a/2)/x # Нашли радиус
y=(R*R)-(a*a/4)
v=math.sqrt(y) # Квадратный корень из " y "
b=R-v # Нашли прогиб
Kvz=1 # Коэф – Расчет уже выполнен
# Далее Конец Cдвига – четыре пробела в начале каждой строки
else:
# Далее Cдвиг – четыре пробела в начале каждой строки
Kvz=0
# ...... ....... ....... ....... ....... ........ .......
# Далее Конец Cдвига – четыре пробела в начале каждой строки
if q<3:
Вывод по Хорде Прогиб Радиус
# Далее Cдвиг – четыре пробела в начале каждой строки
D=R+R
Sk=Pii*D*D*au/(4*360) # Площадь сектора круга с углом aur
St=(a/2)*(R-b) # Площадь треугольника в секторе
S = Sk-St # Площадь горбушки
L=Pii*D*au/360 # Длина дуги
print (uu)
u=" ,,,, ,,,, ,,,, ,,,,, ,,,,, ,,,, ,,,,, ,,,,, ,,,,, "
print (u)
print (uu)
print (uu)
u=" Хорда = "
ss=str(a) # Преобразуем число в строку
u=u+ss
print (u)
Xord=u
print (uu)
u=" Стрела прогиба = "
ss=str(b) # Преобразуем число в строку
u=u+ss
print (u)
Progi=u
print (uu)
u=" Радиус = "
ss=str(R) # Преобразуем число в строку
u=u+ss
print (u)
Rad=u
print (uu)
u=" Диаметр = "
ss=str(D) # Преобразуем число в строку
u=u+ss
print (u)
Diam=u
print (uu)
u=" Угол раствора хорды = "
ss=str(au) # Преобразуем число в строку
u=u+ss
print (u)
UgSe=u
print (uu)
u=" Длина дуги над хордой = "