2 Лабы (легкие Для Вас Точно)

Тема в разделе "Pascal and Delphi", создана пользователем DjSwat, 11 ноя 2012.

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

    DjSwat Гость

    1 Лаба 2 задание
    http://i48.fastpic.ru/big/2012/1110/f7/958...4deba090ff7.jpg

    1 лаба 2 задание
    Код (Delphi):
    var s,e,c,x:real;
    m:integer;
    begin
    e:=0.0001;
    m:=1;
    s:=1;
    c:=1;
    writeln ('vedite x');
    readln (x);
    if abs(x)<1 then begin
    while abs(c)>e do begin
    c:=x*c;
    if old(m) then s:=s-c else s:=s+c;
    m:=m+1;
    end;
    writeln(s:4:4);
    writeln (1/(1+x):4:4);
    end
    else writeln ('Ne verno, |x|>1');
    readln;
    end.
    но училка сказала, да и я сам понял, что нету, чтобы он считал 1/2 * 3/4 и т.д.
    Гр*цензура*ый этот бесконечный ряд. помогите.

    2 лаба 2 задание
    http://i48.fastpic.ru/big/2012/1110/04/30f...38c50d19104.jpg

    2 лаба 1 задание - чисто проверьте.
    Код (Delphi):
    var d,i,l:integer;
    s,n:real;
    begin
    writeln ('Vedite taimer kruga');
    readln (d);
    n:=d/2;
    if (d>=1) and (d<=5) then begin
    writeln ('    0 |  1 |  2 |  3 |  4 |  5 |  6 |  7 |  8 |  9 |');
    for i:=1 to 10 do begin
    write (d:2,'|');
    for l:=0 to 9 do begin
    s:=pi*sqr(n);
    write (s:6:0,'|');
    n:=n+1;
    end;
    d:=d+10;
    writeln;
    end;
    end
    else writeln ('Diemetr weden ne verno');
    readln;
    end.
    а вторую помогите
     
  2. Senset

    Senset Well-Known Member

    Регистрация:
    11 сен 2006
    Сообщения:
    136
    Симпатии:
    0
    1 Лаба 2 задание
    Всё достаточно просто:
    1) Внимание на картинку
    [​IMG]
    1.1) Накопление числителя выделим в переменную A;
    1.2) Накопление знаменателя выделим в переменную B;
    2) Обозначим начальные условия (sum=0, slag=1);
    3) Будем менять знак слагаемого (slag) каждый раз при проходе через цикл, таким образом избавляемся от переменных связанных со знаком
    4) Суммирование ряда происходит до тех пор, пока слагаемое проходит по точности (т.е. больше неё)... В моем исполнении слагаемое вычисляется до того как сдвигается числитель, т.е. алгоритм цикла спешит завершиться на одно слагаемое раньше, потому добавим после цикла строчку с дополненным слагаемым и при проверке будет очевидно, что точность достугнута
    5) Исходный код (представлен в виде функции для простоты импорта в Ваш проект), где e-точность, x-конкретное значение переменной:
    Код (Delphi):
    function ryad(e,x:real):real;
    var sum,slag:real;
    a,b:integer;
    begin
    if abs(x)>=1 then writeln('bad X')
    else
    begin
    sum:=0;
    a:=1;
    b:=2;
    slag:=1;
    while abs(slag)>e do
    begin
    sum:=sum+slag;
    slag:=-slag*a/b*x;
    a:=a+2;
    b:=b+2;
    end;
    sum:=sum+slag;
    ryad:=sum;
    end;
    end;
     
  3. DjSwat

    DjSwat Гость

    Блин. Как все легко, когда сомтришь на ответ. А вот так мне сложно. Спасибо за объяснение.. А что на счет второго задания?
     
  4. Senset

    Senset Well-Known Member

    Регистрация:
    11 сен 2006
    Сообщения:
    136
    Симпатии:
    0
    Я его не проверял, но формально вроде всё соблюдено:
    два цикла, расчет площади для каждой ячейки, и типа красивый вывод...
    в общем я думаю у Вас все хорошо, но лучше вручную перепроверьте пару значений в таблице (например 1,3; 5,6; строка,столбец) сами
     
Загрузка...
Похожие Темы - Лабы (легкие Для
  1. Oksana
    Ответов:
    27
    Просмотров:
    5.989
Статус темы:
Закрыта.

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