- •Вывод данных
- •Условная инструкция «if»
- •Цикл «for»
- •Цикл «while»
- •Процедуры
- •Команды ввода/вывода
- •Самостоятельные упражнения
- •Тема 5. Решение дифференциальных уравнений в системе Maple
- •Тема 6. Линейная алгебра в системе Maple
- •Матричные и векторные операции
- •Математические операции с матрицами и векторами
- •Команды работы со структурой матриц и векторов
- •Примеры применения некоторых команд линейной алгебры
- •Основные операции векторного анализа
ВВЕДЕНИЕ
В МАТЕМАТИЧЕСКИЕ ВЫЧИСЛЕНИЯ
В СИСТЕМЕ MAPLE
(часть 2)
Тема 4. Программирование в системе Maple
Система программирования Maple содержит все необходимые средства для разработки программ: условные инструкции, циклы, массивы.
Программы набираются непосредственно в рабочем листе и исполняются после нажатия клавиши <Enter>. Чтобы выполнить программу еще один раз необходимо поставить курсор на строку с программой и нажать повторно клавишу <Enter>.
Как и в языке C++, в программах на Maple не важны пробелы, переводы строк и отступы в программах, но для повышения читаемости программы длинные строки рекомендуется разбивать на несколько отдельных строчек, для чего используется комбинация клавиш <Shift>+<Enter>.
Вывод данных
Значение любого выражения, заканчивающегося символом ';' будет выведено на экран, а заканчивающегося символом ':' – не будет выведено. Но внутри инструкций if, for, while символы ';' и ':' эквивалентны: если инструкция if ... end if заканчивается символом ';', то значения всех выражений внутри инструкции if будут напечатаны, независимо от того, какими символами ';' или ':' они разделены. Аналогично и в случае разделителя ':'.
Поэтому чтобы избежать вывода большого количества информации внутри циклов, обычно циклы завершают разделителем ':', а для вывода информации используют функцию print, которая выводит на экран все свои аргументы.
Пример:
> a:=5:
> print("a=",a);
Более подробно о командах ввода-вывода поговорим немного далее.
Условная инструкция «if»
Синтаксис условной инструкции if такой:
> if условие then инструкции end if
где условие может содержать операторы сравнения =, <, >, <=, >=, <>, логические операторы and, or, not, константы true и false.
инструкции – одна или несколько инструкций Maple, разделенных ';' или ':'. После инструкции end if также должен следовать разделитель.
Внутри инструкции if также может встречаться блок else в виде:
> if условие
then инструкции
else инструкции
end if
а также одна или несколько инструкций множественного ветвления
> if условие_0 then инструкции_1
elif условие_1 then инструкции_2
else инструкции_2
end if
Итак, в наиболее общем виде инструкция if выглядит следующим образом:
> if условие then инструкции
elif условие then инструкции
elif условие then инструкции
................
else инструкции
end if
Примеры:
> a := 3; b := 5;
> if (a > b) then a else b end if;
> 5*(Pi+`if`(a > b,a,b));
> x:=`if`(a > b,a,b);
> a := 3; b := 5:
> if (a<b) then a:=2*b
elif (b<a) then b:=2*a
else a:=a+b
end if;
Цикл «for»
Синтаксис цикла for такой:
> for переменная from значение to значение by значение do инструкции end do
где переменная – имя переменной, меняющейся в цикле, from значение – начальное значение переменной, to значение – конечное значение, by значение – величина, на которую изменяется значение переменной с каждой итерацией.
Если опустить параметр from, то начальное значение переменной будет установлено в 1, если опустить параметр to, то цикл будет бесконечным, если опустить параметр by, то переменная будет увеличиваться на 1.
Примеры:
> for i from 1 to 10 do print(i); end do:
> for i from 0 to -10 by -1 do print(i); end do:
Цикл «while»
Синтаксис цикла while такой:
> while условие do инструкции end do
где условие – проверяемое логическое условие. Цикл будет выполняться, пока условие истинно.
Пример:
> i:=1; while i < 10 do i:=i*2; end do;
Для прерывания цикла for и while используется инструкция break. Для продолжения цикла со следующей итерации (аналог инструкции continue в С++) используется инструкция next.
Циклов с пост-условием в Maple нет.