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



              

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


Как только эта разность станет равна или меньше указанной точности eps цикл заканчивается.

2-й способ

Program Problem2b;

     uses WinCrt;

     var

        u         :  longint;

        x,  eps :  real;

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

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

           var

               x1, x2 : real;

           begin

               x1 := 1;

               repeat

                  x1 := (1/2)*(x1 + u/x1);

                  x2 := (1/2)*(x1 + u/x1)

               until abs(x2 - x1) <= eps;

               x := x2

           end;

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

     begin

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

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

        Square_root2(eps, u , x );

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

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

     end.

Разберите содержание этих программ и выполните их на компьютере. В чем отличие этих двух способов? Какой из них вы считаете более рациональным и почему?

Измените каждую из этих программ так, чтобы на экран выдавались последовательно десятичные приближения корней с недостатком? С избытком?

Если вы внимательно разобрались в составлении и работе предыдущих программ, то могли заметить, что в программе примера 2, несмотря на то, что математически последовательность задана формулой n-го члена, используется рекуррентное соотношение. Указывается начальное значение a := 1, а затем каждый цикл предыдущее значение умножается на постоянный множитель: 

 

Таким образом, при составлении программ чаще всего будет использоваться рекуррентное соотношение. Возникает закономерный вопрос. Как перейти от задания последовательности формулой n-го члена к рекуррентному соотношению?

Разберем этот процесс на частном примере.

Пример..

Пусть задана последовательность с помощью формулы n-го члена, например:

 Находим с ее помощью (n - 1)-й член:




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