Результаты исследования учащихся в проекте Осваиваем Delphi: различия между версиями
(→Результаты проведённого исследования) |
(→Результаты проведённого исследования) |
||
Строка 39: | Строка 39: | ||
Ln(z)= | Ln(z)= | ||
+ | |||
+ | Алгоритм решения задачи | ||
+ | алг. Интерполяция | ||
+ | арг. n:цел, x,y:вещтаб[1..n] | ||
+ | z: вещ | ||
+ | рез. L:вещ. | ||
+ | раб. i,j:цел. | ||
+ | p, s:вещ. | ||
+ | нач. | ||
+ | ввод n | ||
+ | нц для i от 1 до n | ||
+ | Ввод (x[i], y[i]); | ||
+ | кц | ||
+ | L:=0; | ||
+ | нц для j от 1 до n | ||
+ | P:=1; s:=1; | ||
+ | нц для i от 1 до n | ||
+ | если i<>j | ||
+ | то p:=p*(z-x[i]) | ||
+ | s:=s*(x[j]-x[i]) | ||
+ | все | ||
+ | кц | ||
+ | L:=L+y[j]*p/s; | ||
+ | кц | ||
+ | Вывод L | ||
+ | Кон. | ||
==Вывод== | ==Вывод== |
Версия 10:36, 31 октября 2009
Содержание
Авторы и участники проекта
Сухонина Евгения, Бачинина Наталья и участники группы "Математики"
Тема исследования группы
Создаем математическую модель
Проблемный вопрос (вопрос для исследования)
Как на языке Delphi составить математическую модель?
Гипотеза исследования
Нужно найти идею интересную для многих и выбрать подходящее решение составления математической модели.
Цели исследования
-Подобрать примеры задач из курса математики, для которых будет создаваться модели для программирования на Delphi;
-Выполнить постановку задачи;
-Разработать алгоритм выполнения действий;
-Написать программу задачи;
-Вывод исследования.
Результаты проведённого исследования
Рассмотрим использование языка Delphi для решения математических задач на примере задачи интерполирование функции.
Постановка задачи "Интерполяция фунции"
Задача интерполирования состоит в том, чтобы по значениям функции f(x) в некоторых точках отрезка восстановить ее значения в остальных точках отрезка. Интерполирование применяется при сгущении таблиц, когда вычисление функции f(x) трудоемко и необходимо составить таблицу с меньшим шагом. Под интерполированием понимается нахождение аналитической кривой, проходящей через строго заданные множество точек на плоскости. Пусть функция у=f(x)задана таблично. При этом требуется получить значение функции у=f(x) для такого значения аргумента х, которое входит в отрезок [х0, xn], но не совпадает ни с одним из значений хi i=0, 1,2,.. ,n т.е. х [х0, хn], х≠хi, i=0, 1, 2,...,n. Будем искать значение функции в точке z, если z в интервале хi < z < хi+1. Задача заключается в нахождении такого интерполирующего многочлена, значения которого в узлах интерполяции совпадут с соответствующими значениями функции. Одно из возможных методов – использование многочлена Лагранжа. Функция φj (z) носят название Лагранжовых коэффициентов. В данном программном комплексе задача интерполирования решается с помощью формулы
Ln(z)=
Алгоритм решения задачи алг. Интерполяция
арг. n:цел, x,y:вещтаб[1..n] z: вещ рез. L:вещ. раб. i,j:цел. p, s:вещ.
нач. ввод n
нц для i от 1 до n Ввод (x[i], y[i]); кц
L:=0;
нц для j от 1 до n P:=1; s:=1; нц для i от 1 до n если i<>j то p:=p*(z-x[i]) s:=s*(x[j]-x[i]) все кц L:=L+y[j]*p/s; кц
Вывод L Кон.