Линейную интерполяцию применяем для определения значения коэффициента находящегося между двемя табличными значениями.
Листинг программы.
# -*– coding: cp1251 -*-
import math # Подключили математич модуль
# Эти первые две строки листинга определяют таблицу кодировки символов
# и подключают библиотеку для математических расчетов.
# Эти две строки, точно без изменения, применяют во всех листингах программ.
uu=” “ # Далее идет вывод на экран заголовка программы.
print (uu)
print (uu)
u=" Расчет линейной интерполяции "
print (u)
print (uu)
# Далее вводим в программу исходные данные для расчета.
print (uu)
u=" Введите X1 "
print (u)
print (uu)
x1=0.00000000
x1=input( ) # Вводим число
x1=float(x1) # Принудительно в вещественное число
print (uu)
u=" Введите X2 "
print (u)
print (uu)
x2=0.00000000
x2=input( ) # Вводим число
x2=float(x2) # Принудительно в вещественное число
print (uu)
u=" Введите Xx "
print (u)
print (uu)
xx=0.00000000
xx=input( ) # Вводим число
xx=float(xx) # Принудительно в вещественное число
print (uu)
u=" ........................................................................ "
print (u)
print (uu)
u=" Введите Y1 "
print (u)
print (uu)
y1=0.00000000
y1=input( ) # Вводим число
y1=float(y1) # Принудительно в вещественное число
print (uu)
u=" Введите Y2 "
print (u)
print (uu)
y2=0.00000000
y2=input( ) # Вводим число
y2=float(y2) # Принудительно в вещественное число
# Далее идет расчет по формуле..
yx=(((y2-y1)*(xx-x1))/(x2-x1))+y1
# Далее выводится на экран результат расчета
u=" ........................................................................ "
print (u)
print (u)
print (uu)
print (uu)
u=" X1 = ", x1," Y1 = ",y1," "
print (u)
print (uu)
u=" X2 = ", x2," Y2 = ",y2," "
print (u)
print (uu)
u=" Xx = ", xx," Yx = ",yx," "
print (u)
print (uu)
u=" ..... ..... ..... ..... ..... ...... ...... "
print (u)
print (u)
print (uu)
print (uu)
input( ) # Ожидание нажима Ентер
# Далее делаем еще один расчет на тех же исходных данных и выводим результаты.
Pii=math.pi # Вытащили число " Пи " и поместили в переменную Pii …
cc=((x2-x1)*(x2-x1))+((y2-y1)*(y2-y1))
c=math.sqrt(cc) # Квадратный корень из " cc "
cs=str(c) # Преобразуем число в строку
u=" Длина линии x1;y1 – x2;y2 = "+cs
print (uu)
print (u)
a=(y2-y1)/(x2-x1)
aur=math.atan(a) # Угол aur в радианах через арс тангенс
au=aur*180/Pii # Угол au в градусах ( переводим ).
aus=str(au) # Преобразуем число в строку
u=" Угол линии x1;y1 – x2;y2 с осью Х = "+aus+" градус "
print (uu) # Выводим пустую строку
print (u) # Выводим результат – угол в градусах
print (uu)
print (uu)
input( ) # Ожидание нажима Ентер что бы можно было прочитать результаты.
# ..... ..... ..... Конец листинга программы ..... ....