Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Пособие по мат_инф.doc
Скачиваний:
184
Добавлен:
17.03.2016
Размер:
2 Мб
Скачать
☆

9.3.2. Операторы ввода

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

По операторам READ, READLN вызывается встроенная процедура ввода данных и программа останавливается в ожидании ввода. В этот момент необходимо набрать на клавиатуре нужное число и нажать клавишу «Ввод».

9.3.3. Операторы вывода

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

Оператор вывода WRITELN выводит в отдельную строку, после вывода результата осуществляет перевод строки и устанавливает курсор в начало следующей строки экрана. Пример записи оператора вывода переменных X,Y,Z:

WRITELN(X,Y,Z);

Если в программе необходимо вывести текст на экран, следует этот текст взять в апострофы. В частности подсказка на экран для ввода данных записывается оператором:

WRITELN(‘ввести X,Y,Z’);

9.3.4. Комментарий

Комментарий в Турбо Паскале – это произвольная последовательность любых символов, обрамленная фигурными скобками. Комментарий разрешается вставлять в любое место программы, где по смыслу должен стоять пробел. В качестве ограничителей комментария допускается использование фигурных скобок «{» и «}», а также пары символов «(*» – слева от комментария и «*)» – справа от него:

{Это – комментарий}. (*Это тоже комментарий*).

9.4. Программы линейных алгоритмов

Пример 1.

Вычислить: . Значение А ввести в градусах.

Решение.

PROGRAM PR1;

VAR

r,a,x,y:real;

BEGIN

{линейный алгоритм}

Writeln (‘ввести a, x, y’);

Read (a, x, y);

a:=a*pi/180;

r:=(ln(x)*ln(x)-cos(a*a)+sqrt(y+x*x)) / ((exp(x)+exp(-x))/2);

Writeln (‘r=’, r: 9:5, ‘a=’, a: 7: 3,’x=’, x: 7:3,’y=’, y: 7: 3);

END.

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

9.5. Операторы передачи управления

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

9.5.1. Оператор безусловного перехода

Действие оператора GOTO состоит в передаче управления соответствующему оператору. Структура оператора:

GOTO метка;

Метка в Турбо Паскале – это произвольный идентификатор, позволяющий именовать некоторый оператор программы и таким образом ссылаться на него. Метка располагается непосредственно перед помечаемым оператором и отделяется от него двоеточием. Перед тем как появиться в программе, метка должна быть задана в разделе описанания. Описание меток состоит из зарезервированного слова LABEL (метка), за которым следует список меток.

Пример 2.

LABEL 1; {в разделе описания};

goto 1; {в разделе операторов} {перейти на метку 1}

1: read(x,y); {строка с меткой 1 в разделе операторов}

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

1) метка, на которую ссылается оператор GOTO, должна быть задана в разделе описаний и она обязательно должна встретиться где-нибудь в теле программы;

2) метки, описанные в процедуре (функции), локализуется в ней, поэтому передача управления извне процедуры (функции) на метку внутри нее невозможна.

Однако в программировании не рекомендуется использование оператора Goto, т.к. это затрудняет понимание программ, делает ее запутанной и сложной в отладке. Современная технология структурного программирования основана на принципе программирования без GOTO.