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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 01.02.2012, 19:06   #1
k4k7u3
Пользователь
 
Регистрация: 28.11.2010
Сообщений: 13
Печаль Опять ошибка(Pascal)

Подскажите пожалуйста почему возле последнего end'a с точкой, светит ошибку ''Ожидалась ';''????
program lab_1;
var a,b,c,y,y1eps,x1,x:real;i:integer;
function f(x:real):real;
begin
f:=(x*x*x*x)-(45*x*x*x)+(593*x*x)-(1731*x)-6210;
end;
function fsh(x:real):real;
begin
fsh:=(12*x*x-270*x+1186);
begin
i:=0;
eps:=0.0001;
writeln ('Введите крайний левый интервал');
readln (a);
writeln ('Ведите крайний правый интервал');
readln (b);
y:=f;
y1:=fsh;
if y*y1 > 0 then
begin
repeat
x:=(b-(f(b)*(a-b))/(f(a)*f(b)));
b:=x;
x1:=(b-(f(b)*(a-b))/(f(a)*f(b)));
until
Abs((x-x1)<eps);
writeln('x',i+1,'=',((b-(f(b)*(a-b))/(f(a)*f(b)))):2:4);
end
else
begin
repeat
x:=(a-(f(a)*(b-a))/(f(b)*f(a)));
a:=x;
x1:=(a-(f(a)*(b-a))/(f(b)*f(a)));
until
Abs((x-x1)<eps);
writeln('x',i+1,'=',((b-(f(b)*(a-b))/(f(a)*f(b)))):2:4);
end;
readln;
end.
k4k7u3 вне форума Ответить с цитированием
Старый 01.02.2012, 19:12   #2
whatever
a.k.a. Skull
Форумчанин
 
Регистрация: 17.11.2009
Сообщений: 963
По умолчанию

Потому, что программы надо писать в нормальном виде
Код:
program lab_1;
var
  a,b,c,y,y1eps,x1,x:real;  //Кстати, запятую забыл
  i:integer;

 function f(x:real):real;
  begin
     f:=(x*x*x*x)-(45*x*x*x)+(593*x*x)-(1731*x)-6210;
   end;

 function fsh(x:real):real;
   begin
     fsh:=(12*x*x-270*x+1186);
       begin
         i:=0;
         eps:=0.0001;
         writeln ('Введите крайний левый интервал');
         readln (a);
         writeln ('Ведите крайний правый интервал');
         readln (b);
         y:=f;
         y1:=fsh;
         if y*y1 > 0 then
           begin
             repeat
               x:=(b-(f(b)*(a-b))/(f(a)*f(b)));
               b:=x;
               x1:=(b-(f(b)*(a-b))/(f(a)*f(b)));
             until Abs((x-x1)<eps);//А тут скобки неправильно
             writeln('x',i+1,'=',((b-(f(b)*(a-b))/(f(a)*f(b)))):2:4);
           end
         else
           begin
             repeat
               x:=(a-(f(a)*(b-a))/(f(b)*f(a)));
               a:=x;
               x1:=(a-(f(a)*(b-a))/(f(b)*f(a)));
             until Abs((x-x1)<eps);//И тут тоже
             writeln('x',i+1,'=',((b-(f(b)*(a-b))/(f(a)*f(b)))):2:4);
           end;
     readln;
   end;
И все сразу стало понятно.
P.S. Если не понял - код я не менял. Какбэ намекаю, что тело программы не написано.
Все тривиальное просто

Последний раз редактировалось whatever; 01.02.2012 в 19:21.
whatever вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
опять я опять мемо nyasha2013 Помощь студентам 2 19.05.2011 21:09
Установка Indy 10 На Delphi 7. Опять ошибка. Dionix Общие вопросы Delphi 4 10.07.2010 10:47
Опять ошибка ddd329 Общие вопросы C/C++ 0 14.06.2010 22:39
И опять мэйлы.. Опять... Pusher PHP 6 28.06.2008 03:08