Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.05.2010, 18:42   #1
Harrr
Новичок
Джуниор
 
Регистрация: 17.05.2010
Сообщений: 2
Вопрос Работа с функциями Pascal

в программе
function integral(a:real; b: real; h: real):real;
var
x, y:real;
begin
x:=a;
y:=0;
while x<b do begin
y:=y+x*x*h;
x:=x+h;
end;
integral:=y;
end;

label l1;
var a,b,h,x,y, eps, y1 : real;
n: integer;
begin
writeln('Vvedite nijniy predel a ');
readln(a);
writeln('Vvedite verhniy predel b ');
readln(b);
writeln('Vvedite tochnost eps ');
readln(eps);
writeln('Vvedite kolichestvo otrezkov n ');
readln(n);
h:=(b-a)/n;
y1:=integral(a,b,h);
l1: n:=n*2;
h:=(b-a)/n;
y:=integral(a,b,h);
if (abs(y-y1)>eps) then begin goto l1; y1:=y; end;
Writeln('Integral= ', y:6:2);
end.
выполнение зависает на строке x:=x+h;
есть подозрение, что в функцию integral не передаются значения некоторых переменных. помогите, пожалуйста!
Harrr вне форума Ответить с цитированием
Старый 17.05.2010, 22:26   #2
Z1000000
Форумчанин
 
Регистрация: 04.05.2010
Сообщений: 495
По умолчанию

Код:
if (abs(y-y1)>eps) then begin goto l1; y1:=y; end;
В этой строке никогда не выполняется операция y1:=y;
y1:= в программе не пересчитывается. И погрешность вычисления не уменьшается. Надо так.
Код:
if (abs(y-y1)>eps) then begin  y1:=y; goto l1; end;
Нажми на весы, поставь +
Для благодарностей : WebMoney WMR R252732729948
Z1000000 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с функциями(С++) Scarletred Помощь студентам 5 06.04.2010 13:29
РАБОТА С ФУНКЦИЯМИ В С++ серг Помощь студентам 4 03.03.2010 22:26
Работа с массивами и функциями (С++) mannheimer Помощь студентам 5 03.03.2010 12:06
Работа с функциями Worms Общие вопросы Delphi 1 02.12.2007 15:51