Паскаль. Основы программирования



              

Глава Числовые последовательности - часть 5


      begin

         write('Введите подкоренное выражение '); readln(u);

         write('Введите число членов последовательн. '); readln(n);

         Square_root(n, u);

      end.

Вычислим приближенное значение квадратного корня из заданного числа с указанной точностью eps. Теперь нам не надо выводить на экран все члены последовательности, а выдать только одно значение удовлетворяющее указанной точности.

Например, поставлена задача получить квадратный корень из 2 с точностью до 0.01. На экран должно быть выдано значение этого корня (причем совсем не обязательно, чтобы в его записи было два знака после запятой, их может быть больше, но мы будем заведомо знать, что знаки после сотых долей не являются точными).

Такие программы

можно составить двумя способами.

Способ первый состоит в том, что цикл будет продолжаться до тех пор, пока разность между квадратом получаемого результата и подкоренным выражением по абсолютной величине не станет меньше или равна указанной точности eps. Тогда цикл заканчивается и выдается результат.

1-й способ

 

Program

Problem2a;

     uses WinCrt;

     var

        u        :  longint;

        x, eps :  real;

{----------------------------------------------------------------------------------------}

     Procedure Square_root1(eps, u : real; var x : real);

            begin

                 x := (u + 1)/2;

                 repeat

                    x := (1/2)*(x + u/x)

                 until abs(x*x - u) <= eps

            end;

{---------------------------------------------------------------------------------------}

     begin

        write('Введите подкоренное выражение '); readln(u);

        write('Задайте точность вычисления '); readln(eps);

        Square_root1(eps, u, x);

        writeln('Квадратный корень из ', u, ' равен ', x:12:12);

        writeln(' с точностью до ', eps:3:12)

      end.

Во втором способе вычисляются два члена последовательности и их разность по абсолютной величине сравнивается с заданной точностью.


Содержание  Назад  Вперед