Информатика 2011-2012 / Информатика-2-сем(2011) / Задания и примеры / приложение-Лагранж
.docЗадание:
Функция задана таблицей
X |
3,5 |
3,55 |
3,6 |
3,65 |
3,7 |
3,8 |
Y |
5,26 |
5,71 |
6,19 |
6,71 |
7,26 |
8,49 |
Разработать алгоритм вычисления функции при значении аргумента х = 3,57. Вычисления вести по формуле Лагранжа:
Решение:
Эскиз экранной формы представлен на рис. 1.
1. Расставим имена объектов на эскизе экранной формы.
Рис. 1
Рис. 1.
2. Программный код
Dim x(6), y(6), x1, p, y1 As Single, i, k As Integer
Private Sub Command1_Click()
For i = 0 To 5
x(i) = Val(Text1(i).Text)
y(i) = Val(Text2(i).Text)
Next
Решить.Enabled = True
End Sub
Private Sub Form_Load()
Command1.Enabled = False
Решить.Enabled = False
Text4.Visible = False
Label4.Visible = False
MsgBox "Внимание!!При вводе десятичного числа - разделительный знак (.)"
End Sub
Private Sub Text1_Change(Index As Integer)
Command1.Enabled = True
End Sub
Private Sub выход_Click()
t = MsgBox("Вы действительно хотите выйти ??", vbYesNo)
If t = vbYes Then End
End Sub
Private Sub Решить_Click()
Text4.Visible = True
Label4.Visible = True
x1 = Val(Text3.Text)
y1 = 0
For i = 0 To 5
p = 1
For k = 0 To 5
If i <> k Then p = p * (x1 - x(k)) / (x(i) - x(k))
Next
y1 = y1 + y(i) * p
Next
y1 = Int(y1 * 100) / 100
Text4.Text = Str(y1)
End Sub
Private Sub Удалить_Click()
Text3.Text = ""
Text4.Text = ""
End Sub
3. Работа приложения
3.1. При загрузки формы появляется окно сообщений Рис 1. После щелчка мышью по кнопке «ОК» появится окно Приложения Рис. 2.
Рис 1
Рис 2
3.2. Заполним значениями таблицу данных и щелкнем кнопку «Сохранить данные в массивы Х и У». Далее введем значения Х и щелкнем меню « Решить», после чего в этом окне появится соответствующее значение Y, рис 3.
Рис 3.
3.3. Щелкнем меню «Выход» и кнопку «Да», что повлечет закрытие приложения, рис 4.
Рис. 4.
Вывод:
Приведенное Windows-приложение дает возможность пользователям ПК создавать свои приложения, решающие подобные задачи.