Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Паскаль.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
467.46 Кб
Скачать

Символьные выражения

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

Оператор присваивания придает переменной конкретное значение, например: x:=2; y:=5. Присваивание заполняет участок памяти, отведенный для переменной, новым значением, одновременно уничтожая старое. Поскольку задача любой программы - получить в определенном месте памяти нужное значение, редкая программа обходится без оператора присваивания.

Присваивать можно значение другой переменной или результат вычисления арифметического выражения. a:=b; a:=b+c; x:=y+2-z.

Общая схема оператора присваивания такова: имя := выражение

2. Оператор ввода данных.

Мало программ обходятся без ввода данных и совсем нет таких, которые не выводят полученные результаты. Ввод данных с клавиатуры дисплея выполняется оператором READ (список переменных), где список переменных - последовательность имен переменных, разделенных запятыми.

При выполнении оператора READ программа останавливается и ждет, пока информация не будет введена с клавиатуры. Вводимая информация разделяется пробелами или нажатием клавиши "Enter". Заканчивают ввод всегда клавишей Enter.

Дополнительный оператор ввода - READLN (список переменных). После ввода данных происходит переход на следующую строку.

3. Оператор вывода данных.

Вывод данных на экран дисплея выполняется оператором WRITE (список печати) Элементами списка могут быть: переменные, числа, выражения, текст, заключенный ' ', элементы списка отделяются друг от друга запятой.

Оператор WRITELN отличается от WRITE тем, что после вывода всех значений переводит курсор в начало следующей строки.

Примеры.

  1. WRITE('Ответ=', Y)

  2. WRITE('Ответ=', 2*3.14/(1.34+56.3)) В операторе вывода можно задать формат вывода. WRITE(X:N:M) x- переменная вещественного типа n- выражения целого типа, характеризующие ширину поля вывода m-число будет выводиться с m знаками после запятой Примеры.

  3. WRITE('A=', A:2, 'B=',B:3,'C=',C:1)

  4. WRITELN(A, B); WRITE(C)

  5. WRITELN(A<B:7)

  6. WRITE(Y:5:3, X:7:2)]

1. УСЛОВНЫЙ ОПЕРАТОР

Условный оператор позволяет проверить некоторые условия и в

зависимости от результата проверки выполнить то или иное действие.

Условный оператор - это средство ветвления вычислительного процесса.

Базовая структура алгоритма типа развилки, имеет два вида: полная и

неполная.

Вид

Блок-схема Общий вид оператора:

развилки

Полная

+ - IF <P> THEN <S1> ELSE <S2>;

P где IF (если) THEN (то) ELSE (иначе) –

S1 S2 служебные слова языка Паскаль; Р –

некоторое логическое условие; S1,

S2 – любые операторы языка.

а)

Не полная

+ - IF <P> THEN <S1>;

P

S1

б)

+ P - IF < P > THEN <S1>;

где P – некоторое логическое условие

S1 (отрицание условия P или

противоположное условию P);

Развилка может иметь вложенную структуру, любой степени

вложенности. Любой из операторов S1 или S2 может быть условным, причём

не обязательно в нём будет присутствовать часть ELSE <S…>. Подобная

неоднозначность решается следующим образом: любая встретившаяся часть

4

ELSE соответствует ближайшему к ней «сверху» части THEN условного

оператора.

При необходимости выполнить в условном операторе несколько

операторов их заключают в операторные скобки BEGIN - END, в противном

случае в условном операторе выполняется только первый после ключевого

слова THEN или ELSE оператор.

2. ОПЕРАТОР БЕЗУСЛОВНОГО ПЕРЕХОДА

В программе можно осуществить переход на помеченный оператор

(не зависимо от какого либо условия), прервав последовательное выполнение

программы. Для этого служит простой оператор безусловного перехода.

Общий вид оператора: GOTO <метка>;

Метка назначается пользователем и представляет собой целое число

без знака, содержащее не более четырёх цифр или обычный идентификатор и

отделяется от оператора двоеточием.

Например: GOTO 120;

GOTO 250;

Используемые в программе метки должны быть описаны в разделе

описания меток. Для приведённого примера раздел меток выглядит так:

LABEL 120, 250;

Язык ПАСКАЛЬ является структурированным, поэтому особой

необходимости в операторе безусловного перехода нет. Использовать его

следует в редких случаях, например, для выхода к концу программы или

процедуры в случае неправильного задания данных или выхода из цикла.

Неправильное использование оператора GOTO усложняет программу за счёт

многократных переходов вперёд или назад по программе, затрудняет её

чтение, отладку и проверку на правильность.

. ОПЕРАТОР ВАРИАНТА

Условный оператор позволяет при выполнении программы выбирать

одно из двух возможных действий. Если же необходимо сделать много

6

взаимоисключающих проверок, то удобнее воспользоваться оператором

выбора варианта.

Общий вид оператора варианта:

CASE <ключ выбора> OF

<список меток>: <оператор(ы)>;

<список меток>: <оператор(ы)>;

ELSE <оператор(ы)>

END;

Ключ выбора (селектор) представляет собой выражение скалярного

типа (но не вещественного). Выполнение оператора варианта начинается с

вычисления значения ключа выбора. Затем для использования выбирается

оператор, одна из меток которого совпадает с полученным значением. После

выполнения этого оператора (он может быть простым или составным)

управление передаётся на оператор, следующий за оператором варианта.

Если же значение ключа выбора не совпало ни с одной из меток, управление

передаётся оператору, стоящему за словом Else. Часть Else может

отсутствовать.

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

Назначение:

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

Формат:

{ <Оператор1>

<Оператор2>

. . .

<ОператорN>

}

Аргументы

<Оператор>

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

Пример:

if(x + y < z)

{ x = x + 3;

y = y - 3;

}