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

2. Простейшие операторы языка

Оператор – основная единица программы и имеет множество разновид­ностей. Рассмотрим пока самые простые.

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

переменная:=выражение

Такая запись означает, что выражение, стоящее справа, вычисляется и его результат присваивается переменной, стоящей слева. Примеры операторов: Z:=2, А:=3.5+exp(8), S:=X*4+Y/2.

Присваивание не является равенством в обычном смысле. Здесь справа и слева от знака равно можно указывать одну и туже переменную. Например, допустимо: М:=М+2, X:=X/3. Эти выражения следует понимать так, что новое содержимое ячейки М будет равно старому, увеличенному на два, и новое Х будет равно старому, деленному на три. Например, если ранее было М=3 и Х=12, то после вычислений получим М=3+2=5 и Х=12/3=4.

Оператор вывода. Для анализа результатов вычислений необходимо вывести их на внешний носитель – бумагу или экран дисплея. Для этой цели используется оператор.

WRITE(список_выводимых_переменных)

WRITELN(список_выводимых_переменных)

Так оператор WRITELN(a,m) читается – “Печатать перемен­ные А, М”.

Различие двух форм оператора заключается в том, что вторая разновид­ность после вывода данных переводит курсор на новую строку (line). Оператор writeln может использоваться и без аргументов (и без скобок). Тогда при выводе будет формироваться только пустая строка. В оператор могут включаться не только переменные, но и константы и выражения. Например, если Х=12, а Y=100, то применение оператора WRITE('X=', x, ' Y=', y, ' СУММА=', x+y) даст такой результат: X=12 Y=100 СУММА=112.

С помощью оператора можно указать не только что будет выведено, но и как, т.е. отформатировать вывод. После имени вещественной переменной мож­но (через двоеточие) задать два числа. Первое из них задаст общую длину вывода числа, второе – размер дробной части. После имени целочис­ленной переменной нужно задать только одно число. Напри­мер, оператор WRITE(k:6,z:8:2) при выводе отведет для целочисленной переменной K 6 позиций, а для вещественной пе­ре­менной Z – 8, из которых 2 под дробную часть. Лишние позиции, отведенные под целую часть, заместятся пробелами.

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

READLN(список_вводимых_переменных)

Встречая такой оператор, компьютер останавливается и ждет вашего ввода. Число вводимых данных по количеству и типу должно соответст­вовать списку переменных. Если список содержит более одной переменной, действия пользователя зависят от типов, вводимых данных. Числовые значения разделяются нажатием Enter или пробелом, а в конце Enter. Если вводятся данные типа char – символы набирать следует подряд. Данные типа string разделяются пробелом. Оператор может и не иметь аргументов вовсе (readln()). Тогда все, что вы можете сделать, это нажать Enter.

Пример: READLN(r,l). Дословно, оператор интерпретируется так: “Читать в память компьютера, введенные с клавиатуры, переменные R и L”. Пусть в нашей программе R=5 и L=8.4. Тогда пользователь должен ввести 5 и 8.4 через пробел или Enter.

С тем, чтобы пользователь понимал, чего от него хочет компьютер, а не видел лишь черный экран с курсором, удобно прежде оператора ввода разместить оператор вывода с необходимым текстом-подсказкой.

EXITОператор завершения используется для принудительного завершения программы/процедуры в любом ее месте.

READKEY – Оператор ожидания нажатия клавиши может использоваться для создания паузы в программе, например, для того, чтобы разглядеть, что выведено на экране.

CLRSCRОператор очистки освобождает экран и устанавливает курсор в левый верхний угол.

Этот оператор и оператор readkey находятся в библиотеке CRT Паскаля и, чтобы ими воспользоваться, следует ее подключить оператором USES CRT.

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

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

BEGIN...END

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

Запись операторов. Оператор может занимать любое количество строк и для переноса на другую строку не нужно никаких символов переноса. Все операторы Паскаля завершаются знаком “точка с запятой”. Однако после оператора begin и перед оператором end точку с запятой можно не ставить.

Структура программы на Паскале имеет две части: описатель­ную (пункты 1,2,3) и вычислительную и состоит из следующих элементов (рис. 2.1):

1. Задается имя программы (необязательно).

2. Присоединяются нужные модули и библиотеки Паскаля (необязательно).

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

4. Оператором Begin открывается вычислительная часть.

5. Внутри блока помещаются операторы собственно программы.

6 . Оператором End (с точкой) завершается вся программа.

Теперь напишем простую программу (рис. 2.2) вычисления площади круга S произвольного радиуса R по известной формуле S=πR2. Программу назо­вем KRUG. Переменные S и R обозначим как вещественные, поскольку они могут иметь дроб­ную часть. Ввод радиуса осуществляется оператором readln(r). Чтобы пользователь понимал, что именно он должен ввести, прежде операто­ром write(‘радиус=’) на экран выводится слово “радиус=”. В конце програм­мы видим оператор readkey. Он нужен для удобства отладки. Встречая его, компьютер ожидает от пользователя нажатия любой клавиши. В это время он может без спешки осмотреть результаты счета. Если этого не сделать Паскаль сразу же вернет нас в окно редактирования и тогда окно выдачи придется вызывать клавишами Alt+F5, что неудобно. Остальное очевидно.

Замечание. В текстах следующих примеров для компактности мы не буд­ем использовать операторы очистки экрана, задержки readkey и, в большинстве случаев, операторы-подсказки ввода, однако студент должен это делать.