Операторы языка программирования.
Основные (базисные) операторы языка программирования подразделяются на: операторы присваивания, управляющие операторы, операторы вызова процедуриоператоры ввода-вывода.
6.10.1.Оператор присваивания.
Данный оператор позволяет изменить текущее значение переменной, при этом старое значение, которое она имела, безвозвратно пропадает.
Его структура: <имя переменной> <присвоить> <выражение>.
Пример: F=sin(x), где F – имя переменной, sin(x) – выражение.
Примечание.
В блок-схеме алгоритма для отображения оператора присваивания используется блок «процесс».
6.10.2.Управляющие операторы.
Операторы этого типа предназначены для явного указания последовательностей действий в соответствии с алгоритмом. Управляющие операторы подразделяются напоследовательности, условные операторыициклы.
§ Оператор последовательность объявляет некоторую последовательность операторов в виде одного оператора. Это необходимо при использовании последовательностей операторов в других управляющих операторах.
§ Условный оператор предписывает выбор направления выполнения алгоритма в зависимости от некоторых условий. Эти условия записываются в виде логических выражений и всегда принимают одно из двух значений: истинно или ложно. При этом происходит разветвление порядка выполнения последовательности вычислений. Синтаксис условного оператора примерно одинаков во всех языках программирования – он представляет собой следующую конструкцию.
еслиусловие истинно
то выполнить оператор1
иначе выполнить оператор2
Примечание.
В блок-схеме алгоритма для отображения управляющих операторов используется блок «решение».
§ Циклыбывают двух видов:с фиксированным числом повторений(с параметром)иусловные операторы цикла.
§ Оператор цикла с параметром состоит из заголовка цикла, определяющего число повторений, и тела цикла — повторяемого оператора или последовательности операторов. Заголовок состоит из трех частей: параметра цикла (присваивания ему начального значения), конечного значения, по достижению которого тело цикла выполнится в последний раз, и приращения параметра, определяющего, на сколько он будет изменяться после каждого выполнения тела цикла.
Примечание.
В блок-схеме алгоритма для отображения операторов цикла используется блок «модификация».
Часто встречаются ситуации, когда число повторений заранее неизвестно — надо выполнять цикл, пока не произойдет некоторое событие, т.е. не выполнится некоторое условие. В этом случае используются операторы:
§ Оператор цикла с постусловиемопределяет многократное выполнение одной и той же последовательности действий с проверкой истинности условия после тела цикла.
§ Оператор цикла с предусловием, когда,наоборот, проверка истинности производится до выполнения тела цикла. В заголовке цикла указывается только условие – пока его значение равно «истина», цикл будет выполняться.
Примечание.
В блок-схеме алгоритма для отображения операторов цикла с условием используется блок «решение» (для проверки истинности условия) и операторы, из которых состоит тело цикла. Пример алгоритма с использованием оператора цикла с постусловием приведен на рисунке 6.11.
Оператор вызова процедур. Операторы ввода-вывода.
Этот оператор предназначен для выполнения отдельно заданной последовательности операторов — подпрограммы-процедуры.
Примечание.
В блок-схеме алгоритма для отображения оператора вызова процедуры используется блок «предопределенный процесс».
§ Операторы вводапредназначены для ввода значений переменных с клавиатуры.
§ Операторы выводавыводят указанные в операторе значения на экран монитора.
Примечание.
В блок-схеме алгоритма для отображения операторов ввода/вывода можно использовать одноименный блок «ввод-вывод».
Подпрограммы.
Если группа одних и тех же действий повторяется в разных местах программы, то целесообразно их выделить в подпрограмму.
Определение. Подпрограмма— это часть программы, оформленная в виде отдельной синтаксической конструкции и снабженная именем. Подпрограмма является вспомогательным алгоритмом. Подпрограмма представляет собой отдельный программный модуль, который реализует отдельный алгоритм.
Подпрограмма описывается в разделе описаний основной программы.
Подпрограмма состоит из нескольких частей: заголовка (который определяет вид подпрограммы), имени, списка параметров (параметры могут отсутствовать), тела подпрограммы (операторов, которые будут выполняться при ее вызове), завершения подпрограммы. Параметры разделяются на аргументыирезультаты.
В процессе выполнения подпрограммы аргументы не меняются. Чтобы работа подпрограммы имела смысл, она должна получить данные из внешней программы. Данные передаются подпрограмме в виде параметров (аргументов). Во время написания подпрограммы заранее неизвестно, какие конкретно параметры она будет получать во время вызова ее из основной программы, их значения будут переданы из основной программы. Поэтому, параметры, которые указываются в заголовке программы, называются формальными. Они нужны только для описания тела подпрограммы. А конкретные параметры, которые указываются в момент вызова подпрограммы, называются фактическими. При выполнении подпрограмма работает с фактическими параметрами. Все переменные, описанные в разделе описаний основной программы, доступны во всех описанных в ней подпрограммах, если описание переменных предшествует описанию подпрограмм. Эти переменные называются глобальными. Переменные, объявленные в разделе описаний подпрограммы, как и параметры подпрограммы, доступны только в теле этой подпрограммы. Поэтому они называются локальнымипеременными.
Подпрограммы бывают двух видов: процедурыифункции.
§ Процедурапросто выполняет группу операторов, входящих в нее.
§ Функциявычисляет некоторое значение и передает его (возвращает) в главную программу. Это значение имеет определенный тип, поэтому и сама функция имеет тип. Любая функция в основной программе используется в составе выражений.
Подпрограмма активизируется только в момент ее вызова из основной (внешней) программы. Операторы, находящиеся внутри подпрограммы, выполняются, только если эта подпрограмма вызвана. Пока выполнение подпрограммы полностью не закончится, оператор главной программы, следующий за программой вызова подпрограммы, выполняться не будет.
Подпрограммы могут быть вложенными, то есть входить в состав других подпрограмм, а не только основных программ. В некоторых языках программирования допускается вызов подпрограммы из себя самой. Это называется рекурсией.
Понятие подпрограммы, как обособленной именованной части программы со своим собственным локальным контекстом имен является в большинстве языков программирования основным средством структурирования программ.