Программируем

Пожалуйста, зарегистрируйтесь или войдите под уже созданным логином. Вы получите полный доступ ко всем статьям форума.

Join the forum, it's quick and easy

Программируем

Пожалуйста, зарегистрируйтесь или войдите под уже созданным логином. Вы получите полный доступ ко всем статьям форума.

Программируем

Вы хотите отреагировать на этот пост ? Создайте аккаунт всего в несколько кликов или войдите на форум.
Программируем

На нашем форуме программистов вы сможете найти софт для программирования и другие программы. На форуме обсуждаются многие языки программирования, задачи и их решения. Используются языки: C, Assembler, Pascal, Delphi, Flash и другие.

Последние темы

» Арена искусственных интеллектов Gridwars
Проверьте прогу. EmptyСр Окт 12, 2016 2:43 am автор SeriousPasha

» требуется несколько JS разработчиков
Проверьте прогу. EmptyПт Окт 07, 2016 10:19 pm автор mrktwn1

» Защита приложения от взлома
Проверьте прогу. EmptyЧт Июн 18, 2015 10:28 pm автор stradi

» Ищите программиста или дизайнера?
Проверьте прогу. EmptyПт Мар 27, 2015 6:25 am автор фриланс

» Создание и продвижение сайтов, их развитие.
Проверьте прогу. EmptyСр Мар 25, 2015 12:40 am автор asdfghhgfdsa

» Исходники для студентов + скайп-консультации,помощь в написании программ
Проверьте прогу. EmptyВт Окт 07, 2014 11:25 pm автор Horpion

» IT- технологии для развития бизнеса
Проверьте прогу. EmptyПн Июн 23, 2014 6:11 pm автор dvos12

» Стенли Кубрик "С Широко закрытыми Глазами"
Проверьте прогу. EmptyЧт Июн 12, 2014 2:01 am автор Vertuozzz

» Каталог популярных хостинг компаний
Проверьте прогу. EmptyСб Май 10, 2014 7:18 pm автор naik

Самые активные пользователи

Aster (142)
Проверьте прогу. Bar_leftПроверьте прогу. BarПроверьте прогу. Bar_right 
Exkalibur (89)
Проверьте прогу. Bar_leftПроверьте прогу. BarПроверьте прогу. Bar_right 
Чебурашка (63)
Проверьте прогу. Bar_leftПроверьте прогу. BarПроверьте прогу. Bar_right 
Administrator (34)
Проверьте прогу. Bar_leftПроверьте прогу. BarПроверьте прогу. Bar_right 
ak95 (8)
Проверьте прогу. Bar_leftПроверьте прогу. BarПроверьте прогу. Bar_right 
Пушкин (7)
Проверьте прогу. Bar_leftПроверьте прогу. BarПроверьте прогу. Bar_right 
K4_ (7)
Проверьте прогу. Bar_leftПроверьте прогу. BarПроверьте прогу. Bar_right 
LuDa (7)
Проверьте прогу. Bar_leftПроверьте прогу. BarПроверьте прогу. Bar_right 
Goldcoding (6)
Проверьте прогу. Bar_leftПроверьте прогу. BarПроверьте прогу. Bar_right 
Admin (6)
Проверьте прогу. Bar_leftПроверьте прогу. BarПроверьте прогу. Bar_right 

Партнеры

Проверьте прогу. Top100 Rambler's Top100

Участников: 3

    Проверьте прогу.

    avatar
    K4_
    Новичек
    Новичек


    Сообщения : 7
    Очки : 8
    Репутация : 0
    Дата регистрации : 2010-05-28
    Возраст : 37
    Откуда : Украина г.Кременчуг

    Проверьте прогу. Empty Проверьте прогу.

    Сообщение автор K4_ Пт Май 28, 2010 2:25 am

    Ребята проверьте пожалуйста правильность прожки:
    Код:

    uses crt;
      eps=1e-3;
    an:real;
    n,summa:inereg;
      begin
      Summa:=0;
      n:=1;
      while an>=eps do
        begin
          summa:=summa+an;
          writeln<'n=',n:2,'an=',an:8:5,'summa=',summa:8:5>;
          n:=n+1
          an:=an*exp<n*ln<n>>/exp<n*ln<n+1>>;
        end;
      readkey;
      END.
    Aster
    Aster
    Admin
    Admin


    Сообщения : 142
    Очки : 274
    Репутация : 11
    Дата регистрации : 2010-01-07

    Проверьте прогу. Empty Re: Проверьте прогу.

    Сообщение автор Aster Пт Май 28, 2010 2:40 am

    K4_ пишет:Ребята проверьте пожалуйста правильность прожки:
    uses crt;
    eps=1e-3;
    an:real;
    n,summa:inereg;
    begin
    Summa:=0;
    n:=1;
    while an>=eps do
    begin
    summa:=summa+an;
    writeln<'n=',n:2,'an=',an:8:5,'summa=',summa:8:5>;
    n:=n+1
    an:=an*exp<n*ln<n>>/exp<n*ln<n+1>>;
    end;
    readkey;
    END.

    Желательно оформлять программы в постах в тегах
    Код:
    .

    А по теме:
    1) eps это константа.
    2) что такое ln и exp. Насколько я понимаю, это функции и к тому же не встроенные, поэтому нужно их описать.
    3) К тому же объясните, в чем баг этой программы. Работает она или нет?
    Aster
    Aster
    Admin
    Admin


    Сообщения : 142
    Очки : 274
    Репутация : 11
    Дата регистрации : 2010-01-07

    Проверьте прогу. Empty Re: Проверьте прогу.

    Сообщение автор Aster Пт Май 28, 2010 2:43 am

    K4_ пишет:Ребята проверьте пожалуйста правильность прожки:
    uses crt;
    eps=1e-3;
    an:real;
    n,summa:inereg;
    begin
    Summa:=0;
    n:=1;
    while an>=eps do
    begin
    summa:=summa+an;
    writeln<'n=',n:2,'an=',an:8:5,'summa=',summa:8:5>;
    n:=n+1
    an:=an*exp<n*ln<n>>/exp<n*ln<n+1>>;
    end;
    readkey;
    END.

    Кстати еще exp<n*ln<n+1>> не может быть равном нулю, иначе будет ошибка деления на ноль.
    Aster
    Aster
    Admin
    Admin


    Сообщения : 142
    Очки : 274
    Репутация : 11
    Дата регистрации : 2010-01-07

    Проверьте прогу. Empty Re: Проверьте прогу.

    Сообщение автор Aster Пт Май 28, 2010 2:49 am

    У тебя выдает ошибку какую-нибудь или в чем вообще проблема?)
    avatar
    K4_
    Новичек
    Новичек


    Сообщения : 7
    Очки : 8
    Репутация : 0
    Дата регистрации : 2010-05-28
    Возраст : 37
    Откуда : Украина г.Кременчуг

    Проверьте прогу. Empty Re: Проверьте прогу.

    Сообщение автор K4_ Пт Май 28, 2010 2:53 am

    Aster пишет:У тебя выдает ошибку какую-нибудь или в чем вообще проблема?)
    да, пишет что после an:real выдает ошибку error 90: "="expected
    Aster
    Aster
    Admin
    Admin


    Сообщения : 142
    Очки : 274
    Репутация : 11
    Дата регистрации : 2010-01-07

    Проверьте прогу. Empty Re: Проверьте прогу.

    Сообщение автор Aster Пт Май 28, 2010 2:56 am

    K4_ пишет:
    Aster пишет:У тебя выдает ошибку какую-нибудь или в чем вообще проблема?)
    да, пишет что после an:real выдает ошибку error 90: "="expected

    Var перед переменными
    Const перед eps
    И тип не intereg, а integer

    Попробуй.

    Сейчас тему перенесу в вопросы и ответы.
    Aster
    Aster
    Admin
    Admin


    Сообщения : 142
    Очки : 274
    Репутация : 11
    Дата регистрации : 2010-01-07

    Проверьте прогу. Empty Re: Проверьте прогу.

    Сообщение автор Aster Пт Май 28, 2010 3:00 am

    Перенесено.
    avatar
    K4_
    Новичек
    Новичек


    Сообщения : 7
    Очки : 8
    Репутация : 0
    Дата регистрации : 2010-05-28
    Возраст : 37
    Откуда : Украина г.Кременчуг

    Проверьте прогу. Empty Re: Проверьте прогу.

    Сообщение автор K4_ Пт Май 28, 2010 3:04 am

    Попробуй.

    Сейчас тему перенесу в вопросы и ответы.[/quote]
    Хе) там вроде так, только теперь в другом ошибка( :
    там где begin
    summa:=summa+an; (error 26: Type mismatch)
    Aster
    Aster
    Admin
    Admin


    Сообщения : 142
    Очки : 274
    Репутация : 11
    Дата регистрации : 2010-01-07

    Проверьте прогу. Empty Re: Проверьте прогу.

    Сообщение автор Aster Пт Май 28, 2010 3:05 am

    K4_ пишет:Попробуй.

    Сейчас тему перенесу в вопросы и ответы.
    Хе) там вроде так, только теперь в другом ошибка( :
    там где begin
    summa:=summa+an; (error 26: Type mismatch)[/quote]

    У тебя summa типа integer, а an типа real. Сделай summa тоже типа real.
    avatar
    K4_
    Новичек
    Новичек


    Сообщения : 7
    Очки : 8
    Репутация : 0
    Дата регистрации : 2010-05-28
    Возраст : 37
    Откуда : Украина г.Кременчуг

    Проверьте прогу. Empty Re: Проверьте прогу.

    Сообщение автор K4_ Пт Май 28, 2010 3:10 am

    Aster пишет:
    K4_ пишет:Попробуй.

    Сейчас тему перенесу в вопросы и ответы.
    Хе) там вроде так, только теперь в другом ошибка( :
    там где begin
    summa:=summa+an; (error 26: Type mismatch)

    У тебя summa типа integer, а an типа real. Сделай summa тоже типа real.[/quote]
    Заработало) спасибище огромное)
    Aster
    Aster
    Admin
    Admin


    Сообщения : 142
    Очки : 274
    Репутация : 11
    Дата регистрации : 2010-01-07

    Проверьте прогу. Empty Re: Проверьте прогу.

    Сообщение автор Aster Пт Май 28, 2010 3:13 am

    Если все правильно работает, то хорошо.
    Незачто)
    avatar
    K4_
    Новичек
    Новичек


    Сообщения : 7
    Очки : 8
    Репутация : 0
    Дата регистрации : 2010-05-28
    Возраст : 37
    Откуда : Украина г.Кременчуг

    Проверьте прогу. Empty Re: Проверьте прогу.

    Сообщение автор K4_ Пт Май 28, 2010 3:45 am

    Aster пишет:Если все правильно работает, то хорошо.
    Незачто)
    Блин, и если несложно последнюю прожку проверить, Правильно ли она сделана по методу Симпсона:
    uses crt;
    var x:real;
    const n=60;
    function f1(x:real):real;
    begin
    f1:=(SQR(x)-1)*exp(-2*x*ln(10))
    end;

    function f2(x:real):real;
    begin
    f2:=1/(x*exp(2*ln(ln(x))));
    end;

    funcion f3(x:real;
    begin
    f3:=exp(3*ln(sin(x/2+pi/4)/cos(x/2+pi/4)));
    end;

    procedure Simps(F:func;a,b:real;n:integer;var INT:real;
    var
    sum,h:real;
    j:integer;
    begin
    if odd(n) then n:=n+1;
    h:(b-a)/n;
    sum:=0.5*(F(a)+F(b));
    for j:=1 to N-1 do
    sum:=sum+(j mod 2+1)*F(a+j*h);
    INT:=2*h*sum/3;
    end;
    begin
    WriteLn;
    Read;
    Simps(f1,f2,f3,n,I);
    WriteLn('I=',I:8:3);
    End.
    Administrator
    Administrator
    Admin
    Admin


    Сообщения : 34
    Очки : 142
    Репутация : 4
    Дата регистрации : 2010-01-07

    Проверьте прогу. Empty Re: Проверьте прогу.

    Сообщение автор Administrator Пт Май 28, 2010 4:13 am

    Какая ошибка здесь?
    Поставьте недостающие скобки, типы, равно и т.д.
    avatar
    K4_
    Новичек
    Новичек


    Сообщения : 7
    Очки : 8
    Репутация : 0
    Дата регистрации : 2010-05-28
    Возраст : 37
    Откуда : Украина г.Кременчуг

    Проверьте прогу. Empty Re: Проверьте прогу.

    Сообщение автор K4_ Пт Май 28, 2010 4:47 am

    Administrator пишет:Какая ошибка здесь?
    Поставьте недостающие скобки, типы, равно и т.д.
    uses crt;
    type
    func=function(x:real):real;
    var x:real;
    const n=60;
    function f1(x:real):real;
    begin
    f1:=(SQR(x)-1)*exp(-2*x*ln(10))
    end;

    function f2(x:real):real;
    begin
    f2:=1/(x*exp(2*ln(ln(x))));
    end;

    funcion f3(x:real):real;
    begin
    f3:=exp(3*ln(sin(x/2+pi/4)/cos(x/2+pi/4)));
    end;

    procedure Simps(F:func;a,b:real;n:integer;var INT:real;
    var
    sum,h:real;
    j:integer;
    begin
    if odd(n) then n:=n+1;
    h:=(b-a)/n;
    sum:=0.5*(F(a)+F(b));
    for j:=1 to N-1 do
    sum:=sum+(j mod 2+1)*F(a+j*h);
    INT:=2*h*sum/3;
    end;
    begin
    WriteLn;
    Read;
    Simps(f1,f2,f3,n,I);
    WriteLn('I=',I:8:3);
    End.
    error 143: Invalid procedure or function reference.
    Aster
    Aster
    Admin
    Admin


    Сообщения : 142
    Очки : 274
    Репутация : 11
    Дата регистрации : 2010-01-07

    Проверьте прогу. Empty Re: Проверьте прогу.

    Сообщение автор Aster Пт Май 28, 2010 1:48 pm

    K4_ пишет:
    Aster пишет:Если все правильно работает, то хорошо.
    Незачто)
    Блин, и если несложно последнюю прожку проверить, Правильно ли она сделана по методу Симпсона:
    uses crt;
    var x:real;
    const n=60;
    function f1(x:real):real;
    begin
    f1:=(SQR(x)-1)*exp(-2*x*ln(10))
    end;

    function f2(x:real):real;
    begin
    f2:=1/(x*exp(2*ln(ln(x))));
    end;

    funcion f3(x:real;
    begin
    f3:=exp(3*ln(sin(x/2+pi/4)/cos(x/2+pi/4)));
    end;

    procedure Simps(F:func;a,b:real;n:integer;var INT:real;
    var
    sum,h:real;
    j:integer;
    begin
    if odd(n) then n:=n+1;
    h:(b-a)/n;
    sum:=0.5*(F(a)+F(b));
    for j:=1 to N-1 do
    sum:=sum+(j mod 2+1)*F(a+j*h);
    INT:=2*h*sum/3;
    end;
    begin
    WriteLn;
    Read;
    Simps(f1,f2,f3,n,I);
    WriteLn('I=',I:8:3);
    End.

    Вот смотри:
    в основной проге ты ссылаешься на процедуру simps, в параметрах которой ты передаешь функции... Зачем? Тем более, что, если ты так делаешь, нужно вместо simps(f1, f2...)писать simps(f1(параметры), f2(параметры)...).
    Но у тебя в процедуру передается функция f:func. Не передавай ее вообще. То есть, процедура будет выглядеть так:
    Код:

    procedure Simps(a,b:real;n:integer;var INT:real);
    var sum,h:real;
        j:integer;
    begin
      if odd(n) then n:=n+1;
      h:(b-a)/n;
      sum:=0.5*(F1(a)+ F1(b));
      for j:=1 to N-1 do
        sum:=sum+(j mod 2+1)*F1(a+j*h);
      INT:=2*h*sum/3;
    end;

    Вместо f(a), f(b), f(a+j*h) надо поставить f1(a), f1(b), f1(a+j*h), а f:func вообще убрать.

    Ну и в основной программе в процедуру simps f не передавать.

    Ошибка скорее всего в этом. flower
    avatar
    K4_
    Новичек
    Новичек


    Сообщения : 7
    Очки : 8
    Репутация : 0
    Дата регистрации : 2010-05-28
    Возраст : 37
    Откуда : Украина г.Кременчуг

    Проверьте прогу. Empty Re: Проверьте прогу.

    Сообщение автор K4_ Вт Июн 01, 2010 3:46 am

    Aster пишет:
    Вот смотри:
    в основной проге ты ссылаешься на процедуру simps, в параметрах которой ты передаешь функции... Зачем? Тем более, что, если ты так делаешь, нужно вместо simps(f1, f2...)писать simps(f1(параметры), f2(параметры)...).
    Но у тебя в процедуру передается функция f:func. Не передавай ее вообще. То есть, процедура будет выглядеть так:
    Код:

    procedure Simps(a,b:real;n:integer;var INT:real);
    var sum,h:real;
        j:integer;
    begin
      if odd(n) then n:=n+1;
      h:(b-a)/n;
      sum:=0.5*(F1(a)+ F1(b));
      for j:=1 to N-1 do
        sum:=sum+(j mod 2+1)*F1(a+j*h);
      INT:=2*h*sum/3;
    end;

    Вместо f(a), f(b), f(a+j*h) надо поставить f1(a), f1(b), f1(a+j*h), а f:func вообще убрать.

    Ну и в основной программе в процедуру simps f не передавать.

    Ошибка скорее всего в этом. flower


    Так что эт получается так:
    uses crt;
    var x:real;
    const n=60;
    function f1(x:real):real;
    begin
    f1:=(SQR(x)-1)*exp(-2*x*ln(10))
    end;

    function f2(x:real):real;
    begin
    f2:=1/(x*exp(2*ln(ln(x))));
    end;

    funcion f3(x:real;
    begin
    f3:=exp(3*ln(sin(x/2+pi/4)/cos(x/2+pi/4)));
    end;

    procedure Simps(a,b:real;n:integer;var INT:real);
    var sum,h:real;
    j:integer;
    begin
    if odd(n) then n:=n+1;
    h:(b-a)/n;
    sum:=0.5*(F1(a)+ F1(b));
    for j:=1 to N-1 do
    sum:=sum+(j mod 2+1)*F1(a+j*h);
    INT:=2*h*sum/3;
    end;
    только теперь выдает Error 10: Unexpected end of file.
    Aster
    Aster
    Admin
    Admin


    Сообщения : 142
    Очки : 274
    Репутация : 11
    Дата регистрации : 2010-01-07

    Проверьте прогу. Empty Re: Проверьте прогу.

    Сообщение автор Aster Вт Июн 01, 2010 1:52 pm

    Выложи плиз полный код проги.

      Текущее время Чт Янв 16, 2025 10:38 am