Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Основы алгоритмизации.docx
Скачиваний:
5
Добавлен:
01.07.2025
Размер:
1 Мб
Скачать
☆

Тема 2.2.1. Операторы языка Паскаль.

Операторы языка. Простые и составные операторы. Операторы ввода и вывода. Оператор присваивания. Составной оператор.

После изучения темы студент должен

знать:

  • Основные операторы;

  • Оператор ввода-вывода;

  • Оператор присваивания;

  • Составной оператор;

уметь

  • Составлять программы линейной структуры.

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

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

Язык содержит следующие операторы:

  • Оператор ввода и вывода

  • Оператор присваивания

  • Оператор процедуры

  • Оператор перехода

  • Составной оператор

  • Оператор варианта

  • Оператор цикла с постусловием

  • Оператор цикла с предусловием

  • Оператор цикла с параметром

  • Оператор над записями

  • Пустой оператор

Первые три оператора считаются простыми операторами, остальные структурными. Последнее означает, что в состав этих операторов могут входить другие операторы. Операторы входящие в структурные, в свою очередь могут быть структурными. «Глубина вложенности » операторов не ограничивается.

Любому оператору может предшествовать метка. В этом случае метка отделяется от оператора символом ‘:’. Метки можно использовать для передачи управления на помеченные операторы из других точек программы.

Помимо перечисленных операторов , язык Pascal содержит два оператора специального вида:

  • Машинный код

  • Ассемблерный оператор

С помощью оператора первого вида можно включать в программу фрагменты, составленные из команд центрального процессора. Ассемблерный оператор позволяет записывать отдельные части Pascal-программ с использованием языка ассемблера.

Операторы ввода и вывода

Для ввода и вывода данных используются стандартные процедуры:

Read,

Readln,

Write и

Writeln.

Read (Список ввода); Readln(Список ввода); - ввод данных;

Write(Список вывода); Writeln(Список вывода); - вывод данных.

Процедуры Readln и Writeln отличаются от Read и Write тем, что после ввода (вывода) указанного списка данных курсор перемещается на новую строку.

Список ввода содержит последовательность имён переменных, значения которых должны быть введены в процессе выполнения программы.

Список вывода может содержать значения выводимых на экран дисплея переменных, выражений или сообщения. Текст сообщений может содержать допустимые символы языка или русский текст и заключается в апострофы: 'текст'.

Например, в программе стоит оператор: Read(a,b,c);

Пользователь должен ввести значения переменных a, b и c, в соответствии с типом, указанным в подразделе Var. Курсор остается на той же строке, где располагаются значения переменных. В том случае если используется оператор Readln(a,b,c); - действия пользователя те же, но курсор после ввода перемещается на следующую строку экрана. Числовые данные при вводе отделяются друг от друга пробелами.

При выводе данных, как правило, выводятся как значения переменных,

так и пояснения. Например, необходимо вывести полученное значение Y:

Writeln(' Полученное значение Y = ',Y);

В результате выполнения на экране появится сообщение, заданное в апострофах, и значение переменной Y. После чего курсор будет установлен в начало новой строки. Процедуры Write и Writeln удобно использовать для вывода сообщений перед вводом данных с клавиатуры, что упрощает ввод данных. Например, перед вводом данных в предыдущем примере перед процедурой ввода Read нужно поставить:

Writeln(' Введите a, b и c');

Оператор присваивания

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

переменная

Идентификатор функции

:=

выражение

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

Присваивание допустимо для всех типов, кроме файловых

Например:

А:=0.5; - переменной А будет присвоено конкретное значение, равное 0,5.

Х:= 2*А+1; - переменной Х, после вычисления правой части, будет присвоено найденное значение.

Составной оператор

Этот оператор является структурным оператором и задает последовательное выполнение операторов, входящих в него, в порядке «один за другим». Операторы, входящие в составной оператор, заключаются между служебными словами begin и end и отделяются друг от друга символом «;», как показано на следующей синтаксической диаграмме:

end

begin

;

Оператор

Составной оператор применяется в тех случаях, когда синтаксис языка Pascal допускает использование только одного оператора, в то время как семантика программы требует задания некоторой последовательности действий. Это приводит к некоторой перегруженности Pascal-программ служебными словами begin и end и свидетельствует об определенной архаичности синтаксиса языка.

Пример составного оператора

Begin (обмен значений переменных X и Y )

Z:=X;

X:=Y;

Y:=Z;

End

Оператор процедуры

Этот оператор, называемый также вызовом процедуры, задает выполнение операторов, определенных в теле процедуры. После завершения выполнения процедуры управление передается на оператор, следующий за оператором процедуры.

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

Идентификатор функции

(

Фактический параметр

)

,

Примеры операторов процедуры

Exit Program

Multiply_Matrixes (A,B)

Контрольные вопросы

  1. Понятие оператора, перечислите известные вам операторы?

  2. Простые и составные операторы, примеры?

  3. Оператор ввода-вывода, структурная схема, примеры

  4. Оператор присваивания, структурная схема, примеры?

  5. Составной оператор, структурная схема, примеры?

  6. Оператор процедуры, структурная схема, примеры?

Самостоятельная работа