Дискуссионный математический форумМатематический форум
Математический форум Math Help Planet

Обсуждение и решение задач по математике, физике, химии, экономике

Теоретический раздел
Часовой пояс: UTC + 3 часа [ Летнее время ]
новый онлайн-сервис
число, сумма и дата прописью

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ 1 сообщение ] 
Автор Сообщение
 Заголовок сообщения: Интерполяция, полиномы Лагранжа в паскале. Недочет в коде
СообщениеДобавлено: 21 апр 2014, 23:57 
Не в сети
Начинающий
Зарегистрирован:
09 мар 2012, 17:51
Сообщений: 13
Cпасибо сказано: 4
Спасибо получено:
0 раз в 0 сообщении
Очков репутации: 1

Добавить очки репутацииУменьшить очки репутации
В общем программа написана, но криво(ну ни разу не программист я). Только считает неправильно :evil: уже второй день пытаюсь довести до ума, как только не крутил циклы, но каждый раз неправильно получается. Прошу подсказать, что я делаю не так.

Изображение

это для примерной ориентации в истинных значениях функции в точках интерполяции:

Изображение

Сам код:

const n= 6;

function f(x:real):real;
begin
f := cos(exp(x / 2) / 25);
end;

var
i, j, k, a, b: integer;
x: array [1..n] of real;
y: array [1..n] of real;
L: array [1..n] of real;
Lx: array [1..n-1] of real;
xx: real;

begin
a:= 0;
b:= 10;
write('узлы интерполяции: ');

for i := 1 to n do
begin
x[i] := (i - 1) * ((b - a) / (n - 1));
write(i, ')', x[i]:0:5, ' ');
end;

writeln;
write('значение функции в узле: ');

for j:= 1 to n do
begin
i:= j;
y[j]:= f(x[i]);
write(j, ')', y[j]:0:5, ' ');
end;

{for k:=1 to n-1 do // хуярю отдельно базисы потом получаю через сумму произведений выражение для любого хх
begin
Lx[k]:=0;
xx:=(((b-a)/(n-1))/2)+((k-1)*(b-a))/(n-1);
for j:=1 to n do
begin
for i:=1 to n do
begin
if i<>j then
begin
Lx[k]:=Lx[k]+y[j]*((xx-x[i])/(x[j]-x[i]));
end;
end;
end;
end;}
for k:=1 to n-1 do
begin
L[j]:= 1;
Lx[k]:= 0;
xx:=(((b-a)/(n-1))/2)+((k-1)*(b-a))/(n-1);
for j:= 1 to n do
begin

for i:= 1 to n do
begin
if i <> j then
begin
L[j]:=L[j]*((xx-x[i])/(x[j]-x[i]));

end;
end;
end;
Lx[k]:= Lx[k]+y[j]*L[j];
end;

writeln;
writeln;
write('точки вычисления: ');

for k:= 1 to n - 1 do
begin
xx:=(((b-a)/(n-1))/2)+((k-1)*(b-a))/(n-1);
write(k, ')', xx:0:5, ' ');
end;

writeln;
write('приближенное значение: ');
for k:= 1 to n - 1 do
begin
write(k, ')', Lx[k]:0:5, ' ');
end;

end.

Вернуться к началу
 Профиль  
Cпасибо сказано 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему      Страница 1 из 1 [ 1 сообщение ]

 Похожие темы   Автор   Ответы   Просмотры   Последнее сообщение 
Интерполяция многочленом Лагранжа

в форуме Численные методы

ZaRazza

5

474

19 янв 2016, 08:55

Сложить в дополнительном коде

в форуме Информатика и Компьютерные науки

manchester_alan

4

382

21 окт 2016, 22:15

Какая ошибка в коде матлаб? Исправте пліз)

в форуме MATLAB

Vitaliy 1233

0

335

25 апр 2021, 21:51

Деление двоичных чисел в прямом коде с фиксированной запятой

в форуме Информатика и Компьютерные науки

baton

0

211

29 ноя 2020, 19:01

Односвязный список в паскале

в форуме Информатика и Компьютерные науки

netnuclear

0

266

30 ноя 2022, 16:21

Полиномы

в форуме Математическая статистика и Эконометрика

art25685

12

737

11 июл 2016, 17:59

Разложение функции в полиномы

в форуме Ряды

marinaqwert

6

1094

12 янв 2018, 22:18

Полиномы Чебышева-Лагерра

в форуме Функциональный анализ, Топология и Дифференциальная геометрия

Nevereth

5

749

19 дек 2015, 23:20

Поделить многочлены(полиномы) между собой

в форуме Линейная и Абстрактная алгебра

Padawan

10

560

22 янв 2018, 20:07

Связанные полиномы четвёртой степени - полные квадраты

в форуме Теория чисел

3axap

2

228

17 ноя 2020, 13:11


Часовой пояс: UTC + 3 часа [ Летнее время ]



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 17


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  

Яндекс.Метрика

Copyright © 2010-2023 MathHelpPlanet.com. All rights reserved