Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
2_Интегрирован. система Mathcad.doc
Скачиваний:
64
Добавлен:
09.04.2015
Размер:
4.81 Mб
Скачать

3.1.2. Операторы циклов for и while

3.1.2.1. Цикл с использованием оператора for используется в случаях, когда заранее известно число повторений.

Вызов оператора for осуществляется с помощью соответствующей кнопки на панели программирования:

for ■  ■

В левое поле ввода после оператора for записывается имя переменной, в правое  диапазон значений:

for i  1 .. 5

В свободном поле ввода записывается тело цикла:

for i  1 .. 5

s ← s + i

Символ «», используемый в программе, означает присваивание значения локальной переменной (рис. 9) и устанавливается из палитры программирования.

Рис. 9. Кнопка «»  локальное присваивание

Пример 1. Вычислить сумму значений Решение:

n:=40

sum(n):= s ← 0

for i  1 .. 40

s ← s + i

sum(n) = 820

Последнее поле ввода в цикле всегда должно содержать значение, вырабатываемое и возвращаемое программой (в данном примере это переменная s).

Пример 2. Вычислить сумму значений Решение:

n:=10

P(n):= P ← 1

for a  1 .. 10

P ← P * (a+1)

P(n) = 3.992107

3.1.2.2. Цикл с использованием оператора while выполняется до тех пор, пока истинно условие, указанное после оператора.

Вызов оператора осуществляется с помощью соответствующей кнопки на панели программирования:

while ■

В поля ввода вводится условие выполнения цикла и тело цикла. Составим программу с использованием цикла while для задания, приведенного выше:

s(n) = 820

Данная программа так же, как и программа с использованием оператора for, в последнем поле ввода содержит значение, вырабатываемое и возвращаемое программой (это переменная s). Отличительные особенности использования цикла while:

  1. осуществляется проверка условия перед началом исполнения тела цикла;

  2. в случае использования в условии некоторой переменной необходимо предусматривать изменение значения этой переменной (в данном примере это i ← i + 1);

  3. интервал изменения параметра цикла 0 ≤ i ≤ 39, так как после проверки условия тело цикла выполняется еще один раз, то переменная i увеличивает свое значение на единицу.

3.1.3. Оператор прерываний break

Программный оператор breakиспользуется для прерывания выполнения программы. При обнаружении программой Mathcad оператораbreakвыполняются следующие действия:

  1. переход к последнему оператору и завершение программы;

  2. переменные, используемые в программе, получают последнее значение, выработанное к этому моменту.

Ввод оператора break осуществляется с помощью соответствующей кнопки на палитре программирования.

Пример3. Вычислить факториал (произведение)pr!, т. е.pr(n):=1*2*3*….*n.

Используем в программе для решения данной задачи локальную и глобальную переменные р.

Локальная переменная  переменная, область видимости которой ограничена. Такая переменная создается и получает значение в программе Mathcad, созданной с помощью кнопки «Add line», вне программы такая переменная не существует.

Глобальная переменная  переменная, значение которой может использоваться как в программе, так и вне ее.

Последовательность действий при составлении программы:

  1. присвоить значение глобальной переменной: р := 5;

  2. задать имя функции и в скобках ввести список параметров  pr(n), затем ввести оператор присваивания «:=»;

  3. создать новую строку программы при помощи кнопки «Add Line»;

  4. в верхнее поле ввести начальное значение локальной переменной: р←1;

  5. в следующее поле ввести оператор for и записать тело цикла: p← p*i.

Следует обратить внимание на то, что значение p не изменилось после выполнения программы, так как р := 5  это глобальная переменная, тогда как в программе p←1 – это локальная переменная (ее значение изменяется в программе и передается функции pr(n):

Решение: