Купить Matlab  |  Mathematica  |  Mathcad  |  Maple  |  Statistica  |  Другие пакеты Поиск по сайту
Internet-класс  |  Примеры  |  Методики  |  Форум  |  Download
https://hub.exponenta.ru/


Программирование
  • Создание программ
  • Условные операторы
  • Циклы
  • Программы в программах
  • Примеры программ

    В начало книги

  •  

    Список встроенных функций

    Циклы
    К предыдущему разделуК следующему разделу

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

    • Если заранее точно известно необходимое число выполнений цикла, то целесообразно использовать цикл типа for.
    • Если цикл должен завершиться по выполнении некоторого условия, причем момент выполнения этого условия заранее не известен, то целесообразно использовать цикл типа while.

    Циклы “while”

    Цикл типа while управляется истинностью некоторого условия, вследствие чего нет необходимости знать заранее число выполнений цикла. Важно только, чтобы где-нибудь внутри цикла или в другом выполняемом участке программы присутствовал оператор, делающий условие цикла ложным. В противном случае цикл будет выполняться бесконечно. Если выполняемая программа зациклилась, то ее можно остановить нажатием клавиши [Esc].

    Чтобы записать цикл типа while, нужно:

    • Щёлкнуть по кнопке “while” в панели  программирования.

    14-07-1.gif (1014 bytes)

    • Напечатать условие выполнения в верхнем поле ввода. Обычно это — логическое выражение, подобное показанному.

    14-07-2.gif (1146 bytes)

    • Записать в оставшемся поле ввода выражение, подлежащее повторяющемуся вычислению. Введение дополнительных полей ввода осуществляется путем нажатия кнопки “Add Line” на панели программирования.

    14-07-3.gif (1199 bytes)

    На Рисунке 5 показана чуть более объемная программа, включающая цикл типа while. Обнаружив заголовок цикла типа while, Mathcad проверяет условие цикла. Если оно истинно, то Mathcad выполняет тело цикла и снова проверяет условие. Если оно ложно, то Mathcad заканчивает выполнение цикла.

    14-08.gif (7836 bytes)

    Рисунок 5: Использование цикла типа “while” для отыскания первого вхождения заданного числа в матрицу.

    Оператор “break”

    Часто удобно выйти из цикла или остановить исполнение программы при выполнении некоторого условия. Например, для программы на Рисунке 5 существует возможность зацикливания. Если каждый элемент из v меньше, чем thresh, то условие никогда не станет ложным и поиск выйдет за пределы вектора, что приведет к сообщению об ошибке “индекс вне границ”. Чтобы это не случилось, можно использовать оператор break, как показано на Рисунке 6.

    Программа на Рисунке 6 возвратит 0 в случае, если не будет найдено ни одного элемента, превосходящего thresh. В противном случае она возвращает индекс и значение первого элемента, превосходящего thresh.

    Чтобы ввести оператор break, нужно щёлкнуть по кнопке “break” на панели программирования. Подчеркнем, что в примере на Рисунке 6 нужно сначала щёлкнуть по кнопке “break” и только потом по кнопке “if”.

    14-09.gif (7335 bytes)

    Рисунок 6: Пример из Рисунка 5, измененный таким образом, чтобы возвращались индекс и значение элемента массива. Оператор “break” использован для предотвращения ошибки в тех случаях, когда величина thresh оказывается слишком большой.

    Циклы “for”

    Цикл типа for является циклом, число выполнений которого определено заранее. Число выполнений определятся переменной цикла, задаваемой в его начале.
    Для создания цикла типа for:looping;for loopfor loop

    • Щёлкните по кнопке “for” на панели  программирования.

    14-10-1.gif (1008 bytes)

    • Напечатайте в поле ввода слева от знака О  имя переменной цикла.

    14-10-2.gif (980 bytes)

    • Введите в поле справа от знака О диапазон значений, в котором должна  изменяться переменная цикла. Форма задания  диапазона в точности такая же, как и для дискретного аргумента. Подробности см. в Главе “Дискретные аргументы”

    14-10-3.gif (1022 bytes)

    • В оставшееся поле ввода впечатайте выражение, подлежащее повторяющимся вычислениям. Обычно оно включает в себя переменную цикла. Дополнительные поля ввода можно создать щелчком по кнопке “Add Line” в панели программирования.

    14-10-4.gif (1052 bytes)

    В верхней половине Рисунка 7 показан цикл типа for, используемый для сложения последовательности целых чисел. Неопределенная переменная на Рисунке 7 напоминает о том, что определение переменной цикла является локальным для программы, ее содержащей, и не видно нигде вне программы.

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

    14-11.gif (6699 bytes)

    Рисунок 7: Использование цикла типа “for” с переменными цикла двух различных видов.

    В начало страницы  К предыдущему разделуК следующему разделу

    Список встроенных функций

    | На первую страницу | Поиск | Купить Matlab

    Исправляем ошибки: Нашли опечатку? Выделите ее мышкой и нажмите Ctrl+Enter


    Copyright © 1993-2024. Компания Softline. Все права защищены.

    Дата последнего обновления информации на сайте: 04.03.17
    Сайт начал работу 01.09.00