![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
Женя |
![]()
Сообщение
#1
|
Гость ![]() |
Условие:
--- Пусть функция y(x) задана таблицей: Xi X1 X2 X3 ... Xm Yi Y1 Y2 Y3 ... Ym Составить программу для вычисления значения этой функции в произвольной точке X1<=X<=Xm по формуле линейной интерполяции: Цитата X - Xi Y(X) = Yi + --------- * (Yi+1 - Yi) Xi+1 - Xi , где Xi<=X<=Xi+1 Расчёт функции оформить в виде подпрограммы. Таблица и значение аргумента вводятся, результат расчёта выводить в главной программе. > i+1, 2, 3, m, i - это всё нижний индекс. --- Вот начал делать, и что-то не получается.. пожалуйста, проведите корректировку: Код program inter; type mas=array [1..10] of real; var x,y: mas; i,m,n:integer; g:real; Procedure Input (m1:integer; var x1:mas); var i:integer; begin writeln ('Введите значения X: '); for i:=1 to m1 do readln (x1[i]); end; Procedure Input1 (m1:integer; var y1:mas); var i:integer; begin writeln ('Введите значения Y: '); for i:=1 to m1 do readln (y1[i]); end; Function Summa (m1,n1:integer;x1,y1:mas):real; var i:integer; s:real; begin for i:=1 to m1-1 do begin if x1[i+1]-x1[i]=0 then begin writeln('y(x) - не существует.'); end else s:=y1[i]+((x1[n1]-x1[i])/(x1[i+1]-x1[i]))*(y1[i+1]-y1[i]); end; summa:=s; end; begin writeln ('Введите количество элементов X, Y: '); readln(m); Input (m,x); Input1 (m,y); Writeln ('Введите произвольную точку: '); readln(n); g:=summa (m,n,x,y); writeln ('Значения равны: ',g:10:5); readln end. Заранее благодарен! Сообщение отредактировано: volvo - 22.12.2004 0:28 |
![]() ![]() |
Jill |
![]()
Сообщение
#2
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 105 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
volvo, посмотри, пожалуйста
почему-то процедура Lagrange на гора результаты выдавать не хочет - как ввели координаты, так и выводим... :-( в чем загвозка? подскажи, плз! ВОПРОС СНЯТ - У МЕНЯ ВСЕ ПОЛУЧИЛОСЬ!!!!!!!!! ![]() ![]() ![]() Сообщение отредактировано: Jill - 6.01.2006 15:41 Прикрепленные файлы ![]() |
![]() ![]() |
![]() |
Текстовая версия | 27.07.2025 11:14 |