Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ShPOR_po_informatike.docx
Скачиваний:
35
Добавлен:
25.04.2019
Размер:
328.47 Кб
Скачать

45 Охарактеризовать оператор присваивания и операторы ввода и вывода данных языка программирования Pascal. Привести форматы вывода данных

Оператор присваивания (:=) предписывает выполнить выражение, заданное в его правой части и присвоить результат переменной, указанной в левой части. Переменная и выражения должны быть совместимы по типу.

Примеры присваивания: а:=21; х:=a mod 2; y:=sin(x); z:=x+y;

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

В общем случае данная процедура имеет вид Read(a1, а2, а3, … ), где a1, а2, а3, … - список вводимых переменных, например, Read(x, y).

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

В списке ввода значения разделяются между собой пробелами. Присваивание значений выполняется слева направо в соответствии с порядком следования переменных в процедуре Read.

Кроме процедуры Read, Pascal допускает использование процедуры ввода ReadLn (сокращение от ReadLine). Различие между данными процедурами состоит в том, что после выполнения ReadLn дальнейшее считывание данных будет осуществляться с новой строки, т.е. осуществляется переход к следующей строке экрана.

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

В Pascal данная процедура записывается как Write(p1, p2, р3, …), где p1, p2, р3, … - список констант и/или переменных, разделенных запятой, например, Write ('Сумма=', S).

Процедура Write осуществляет вывод значений выражений, приведенных в списке, на текущую строку до ее заполнения. Для перехода к следующей строке экрана используется процедура WriteLn (сокращение от WriteLine).

В процедурах вывода Write и Writeln имеется возможность задания ширины полей вывода данных. Например, если s:=71.341893, то при использовании формата вывода вида Writeln(s:5:2) вывод s будет производиться в форме с фиксированной точкой в 5 позиций (включая отрицательный знак и точку), из которых 2 позиции будет отведено для вывода цифр дробной части, т.е. в виде 71.34.

При выводе значений переменных целого типа задается количество позиций для числа (включая отрицательный знак), например, Writeln(i:8). В случае вывода значений символьных и строковых переменных формат определяет число позиций для вывода значения текста.

Если формат вывода не задавать, то значения целых и строковых переменных выводятся полностью, а вещественных - в форме с плавающей точкой с количеством цифр, соответствующих типу переменной, т.е. парой чисел вида <мантисса>Е<порядок>. Символ «Е» при этом имеет значение «умножить на 10 в степени».

46 Охарактеризовать операторы ветвления языка Pascal

Для организации ветвления в языке программирования Pascal используются так называемые условный оператор и оператор выбора (множественного ветвления).

Условный оператор используется в случаях, когда в алгоритме решения задачи предусмотрено два альтернативных пути, т.е. ход действий зависит от выполнения некоторого заданного условия - так называемого логического выражения (см. рисунок).

Рисунок Блок-схема алгоритма ветвления

Условный оператор языка Pascal имеет следующий общий вид:

IF <условие> THEN <оператор 1> ELSE <оператор 2>;

Здесь IF, THEN, ELSE – зарезервированные слова (если, то, иначе), <условие> – логическое выражение, <оператор1> и <оператор2> – простые либо составные операторы.

Логические выражения могут принимать одно из двух значений: TRUE (истина) и FALSE (ложь). Простейшими логическими выражениями являются выражения отношения, например, Х<5.

Пример. Определить, принадлежит ли заданное вещественное число х интервалу [0.5, 1.5].

Решение задачи:

program pr;

var x:real;

begin

writeln('введите x');

readln(x);

if (x>=0.5) and (x<=1.5) then writeln('принадлежит') else writeln('нет');

end.

Часть «ELSE оператор2» может не использоваться. Данную форму оператора IF называют сокращенной.

Кроме условного оператора, в качестве управляющей структуры часто используется оператор множественного выбора CASE. Эта структура позволяет переходить на одну из ветвей в зависимости от значения заданного выражения (селектора выбора).

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

Вид оператора выбора:

CASE <выражение> OF

A1 : <оператор 1>;

A2 : <оператор 2>;

...

AN : <оператор N>

ELSE <оператор N+1>

END;

Любой из указанных операторов <оператор 1>, <оператор 2> и т.д. может являться как простым, так и составным оператором; <выражение> может иметь любой порядковый тип.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]