|
Формат команды: Do[expr, {i, imin, imax, di}] – подсчитывается выражение expr для значений i, принимающих значения от imin до imax с шагом di. Значения imin и di можно не указывать, если эти значения равны 1. Индекс i можно не указывать, если expr от него не зависит, так что минимальный формат цикла имеет вид: Do[expr, {imax}] – вычисления повторяются imax раз.
Do[ body, {i {i1, i2, i3, …}}] – для I используютя значения из списка значений.
Более общий формат команды: Do[expr, {i, imin, imax}, {j, jmin, jmax}] – для каждого значения i вычисления повторяются при меняющихся значениях j.
Пример 7.3
Напишем еще одну программу вычисления “машинного эпсилон”:
In[ ]: = ep2=1.; Do[If[1.+ep2>1., ep2=ep2/2, Break[]], {70}]; 2 ep2
Out[ ] = 2.84217*10-14
Алгоритм программы совпадает с алгоритмом предыдущей программы для вычисления машинного эпсилон, однако, поскольку цикл Do не содержит встроенной проверки условий выполнения операций цикла, программа включает условную функцию If. Eсли условие e2>1.0 выполнено, производятся действия цикла; как только условие нарушается, происходит выход из цикла по команде Break[ ].
7.4. Функция If
Общий формат функции: If[test, then, else, unknown].Максимальное количество аргументов – четыре, но применимы также более короткие форматы: If[test, then, else] и If[test, then]. Если условие test выполнено, то вычисляется выражение then, иначе вычисляется else. Предусмотрен также случай, когда логическое значение условия test не может быть определено. Например, значение высказывания x<5 не определено, если не известно значение x. Более общая форма функции If учитывает эту возможность: если истинность условия test не определена, то вычисляется выражение unknown. Каждый из аргументов: then, else и unknown – может включать несколько операторов, отделенных друг от друга точкой с запятой. Функция If допускает вложения.
Дата добавления: 2015-07-08; просмотров: 366 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Функции комплексного аргумента | | | Немедленное и задержанное присваивание |