Программирование в математическом пакете Mathcad. Воскобойников Ю.Е - 18 стр.

UptoLike

18
Оператор цикла while выполняется следующим образом: об-
наружив оператор while, MathCAD проверяет указанное условие.
Если оно истинно, то выполняется тело цикла и снова проверяет-
ся условие. Если оно ложно, то цикл заканчивается.
Пример 2.12 . Составим программу-функцию, реализующую
итерационную процедуру приближенного вычисления корня
квадратного, описанную в примере 2.9.
Как видно из текста
программы-
функции нет
необ-
ходимости хранить
в памяти все при-
ближенные реше-
ния x
0,
x
1,
x
2 ,
... , и
т.д. Достаточно
хранить предыду-
щее ( “старое” )
значение xc и по-
следующее (“но-
вое”) значение xn.
Обращение к
описанной программе будет иметь вид
=sqroot( ),9 0.0001 3
=sqroot( ),25 0.0001 5
=sqroot( ),123 0.0001 11.091
К сожалению организация итерационного цикла с помощью
оператора while , без дополнительных средств контроля может
привести к зацикливанию. Например, задав при обращении к
программе eps < 0 получаем зацикливание.
Поэтому в MathCAD имеется специальный оператор break,
который позволяет выйти из цикла или приостановить исполне-
ние программы при выполнении заданного в операторе break ус-
ловии. Для ввода оператора
break необходимо щелкнуть на кноп-
ке break
панели Программирования (нельзя вводить этот опе-
ратор с клавиатуры по символам). Оператор break используется
в левом поле ввода условного оператор if, а в правом размещает-
sqroot( ),a eps xc 1.0e10
xn a
while
xc xn
xn
xc
a
xc
2
>abs( )xn xc eps
xn
     Оператор цикла while выполняется следующим образом: об-
наружив оператор while, MathCAD проверяет указанное условие.
Если оно истинно, то выполняется тело цикла и снова проверяет-
ся условие. Если оно ложно, то цикл заканчивается.

     Пример 2.12 . Составим программу-функцию, реализующую
итерационную процедуру приближенного вычисления корня
квадратного, описанную в примере 2.9.
                                                 Как видно из текста
                                                 программы-
                                                 функции нет необ-
                                                 ходимости хранить
 sqroot( a , eps)    xc 1.0e10                   в памяти все при-
                     xn a                        ближенные реше-
                                                 ния x0, x1, x2 , ... , и
                     while abs( xn xc ) > eps
                                                 т.д.        Достаточно
                          xc xn                  хранить предыду-
                                     a           щее ( “старое” )
                                xc               значение xc и по-
                                     xc          следующее         (“но-
                          xn
                                   2             вое”) значение xn.
                     xn
                                                      Обращение к
описанной программе будет иметь вид
               sqroot( 9 , 0.0001) = 3        sqroot( 25 , 0.0001) = 5
               sqroot( 123 , 0.0001) = 11.091
     К сожалению организация итерационного цикла с помощью
оператора while , без дополнительных средств контроля может
привести к зацикливанию. Например, задав при обращении к
программе eps < 0 получаем зацикливание.
     Поэтому в MathCAD имеется специальный оператор break,
который позволяет выйти из цикла или приостановить исполне-
ние программы при выполнении заданного в операторе break ус-
ловии. Для ввода оператора break необходимо щелкнуть на кноп-
ке break панели Программирования (нельзя вводить этот опе-
ратор с клавиатуры по символам). Оператор break используется
в левом поле ввода условного оператор if, а в правом размещает-

                                     18