Помогите найти ошибку в программе на языке Pascal

Тема в разделе "Pascal and Delphi", создана пользователем ALFIR, 29 ноя 2010.

Статус темы:
Закрыта.
  1. ALFIR

    ALFIR Гость

    Вот текст программы, где ошибка??. Помогите пожалуйста, заранее спасибо!)
    Код (Delphi):
    Program PR;
    uses crt;
    var i,n,k:integer;
    eps,x_0,x_1,a,lim:real;
    function step(x,k:integer):longint;
    begin
    if k=0 then step:=1;
    if k>=0 then step:=step(x,k-1)*x;
    end;
    function XN(k:integer):real;
    begin
    xn:=k/step(2,k);
    end;
    begin
    clrscr;
    eps:=0.1;
    n:=0;
    x_0:=1;
    x_1:=2;
    while abs(x_0-x_1)>eps do
    begin
    x_0:=XN(n);
    x_1:=XN(n+1);
    n:=n+1;
    lim:=x_0+x_1;
    writeln(n,' ',x_0:6:2,' ',x_1:6:2,'  ',lim:9:6);
    end;
    writeln('Kol-vo vishislenii e=0.1--->',n,' lim= ',lim:9:9);
    eps:=0.001;
    n:=0;
    x_0:=1;
    x_1:=2;
    while abs(x_0-x_1)>eps do
    begin
    x_0:=XN(n);
    x_1:=XN(n+1);
    n:=n+1;
    lim:=x_0+x_1;
    end;
    writeln('Kol-vo vishislenii e=0.001--->',n,' lim= ',lim:9:9);
    eps:=0.0001;
    n:=0;
    x_0:=1;
    x_1:=2;
    while abs(x_0-x_1)>eps do
    begin
    x_0:=XN(n);
    x_1:=XN(n+1);
    n:=n+1;
    lim:=x_0+x_1;
    end;
    writeln('Kol-vo vishislenii e=0.0001--->',n,' lim= ',lim:9:9);
    readkey;
    end.
     
  2. nayke

    nayke Well-Known Member

    Регистрация:
    4 авг 2010
    Сообщения:
    310
    Симпатии:
    0
    А зачем функция step? может я быстро посмотрев не понял но помоему это x[sup]k[/sup]. И опишите подробнее задачу в чем ошибка.. какие условия..
     
  3. BashOrgRu

    BashOrgRu Well-Known Member

    Регистрация:
    15 мар 2009
    Сообщения:
    78
    Симпатии:
    0
    Замени if k>=0 then step:=step(x,k-1)*x; на
    if k>0 then step:=step(x,k-1)*x;
     
  4. ALFIR

    ALFIR Гость

    спасибо большое!) вроде работает=)

    Добавлено: nayke
    да, это x в степени к
     
  5. nayke

    nayke Well-Known Member

    Регистрация:
    4 авг 2010
    Сообщения:
    310
    Симпатии:
    0
    возведение числа в степень - взятие экспоненты от логарифма Exp(X*Ln(Y)), где X - степень числа, Y - основание.
     
  6. vital

    vital Больной Компом Детектед
    Команда форума Web Team

    Регистрация:
    29 янв 2006
    Сообщения:
    2.472
    Симпатии:
    27
    Ох как не любят преподы эту формулу..=) Не зная ее студенты такие классные алгоритмы пишут=)
     
Загрузка...
Похожие Темы - Помогите найти ошибку
  1. OlgaZag
    Ответов:
    1
    Просмотров:
    1.292
  2. OlgaZag
    Ответов:
    0
    Просмотров:
    524
  3. Google313
    Ответов:
    0
    Просмотров:
    1.000
  4. Marikd
    Ответов:
    2
    Просмотров:
    1.210
  5. ruivit
    Ответов:
    2
    Просмотров:
    1.329
Статус темы:
Закрыта.

Поделиться этой страницей