15. Процедуры вывода Write(значение, …); WriteLn(значение, …); Значение – выражение любого простого типа (кроме перечислимого) или строка. Курсор – программно-аппаратное средство указания текущей позиции для вывода на экран монитора ( _ ) Знакоместо – часть экрана монитора (в текстовом режиме работы видеосистемы), предназначенная для вывода одного символа Разрешение экрана 80 х 25 знакомест
Порядок выполнения Вычисление значений Представление значений в виде последовательности символов Вывод полученной последовательности символов на экран в одну строку в порядке перечисления значений начиная с текущей позиции курсора Write – курсор остается в следующей за последним выведенным символом позиции WriteLn – курсор после вывода перемещается в начало следующей строки При выводе осуществляется прокрутка экрана
Примеры a:=123; b:= -56; c:= d; Write(a,b,c); d_ Write(a); Write(b); Write(c); d_ WriteLn(a,b); Write(c); d_ x:=100; y:=-6; WriteLn(Результат=,x-2*y); Результат= 112 _
Модификаторы вывода Для всех типов write(значение:модификатор 1) Для вещественных типов write(значение:модификатор 1:модификатор 2) Модификатор – целая положительная константа Модификатор 1 – длина зарезервированного на экране поля для вывода значения. Значение выводится внутри поля выровненным вправо. Если значение не помещается в отведенное поле, модификатор 1 игнорируется.
Вывод вещественных значений Без указания модификатора 2 вещественные значения выводятся в формате с плавающей точкой E+01 Наличие модификатора 2 указывает на необходимость вывода в форме с фиксированной точкой и ограничивает количество знаков дробной части
Пример вывода с модификаторами v:=123; Write(v:6); ***123_ v:=23200; Write(v*2:4); 46400_ x:=sqrt(234); Write(x); E+01 Write(x:10:3); **** Write(x:3:3);
Пример вывода с модификаторами a:=1; WriteLn(a:5, =, a); WriteLn(aa:5, =, a+1); WriteLn(aaa:5, =, a+2); WriteLn(aaaa:5, =, a+3); WriteLn(aaaaa:5, =, a+4); a = 1 aa = 2 aaa = 3 aaaa = 4 aaaaa = 5 _
16. Процедуры ввода Read(переменная, …); ReadLn(переменная, …); Переменная может быть простого типа (кроме перечислимого и логического) и строкового типа.
Порядок работы процедур Ход программы приостанавливается, пользователь вводит значения переменных и нажимает Enter. Процедура осуществляет разбор введенной последовательности символов Части введенной последовательности, разделенные пробелами, относятся к разным переменным из списка параметров процедуры в порядке их перечисления Каждая выделенная часть последовательности преобразуется во внутренний формат представления в соответствии с типом соответствующей переменной Производится инициализация переменной полученным значением
Порядок работы процедур В случае невозможности преобразования во внутренний формат, возникает ошибка времени выполнения Если введенных символов не хватает для инициализации всех переменных из списка параметров, действия повторяются (но только для тех переменных, которые еще не инициализированы. Для процедуры Read необработанный остаток введенной последовательности остается во входном потоке и будет обработан следующей процедурой ввода. Для процедуры ReadLn необработанный остаток введенной последовательности удаляется из входного потока Допустимо вызывать процедуры без параметров.
Примеры Read(a,b,c); Read(a); Read(b); Read(c); Readln(a,b,c); ReadLn(a); ReadLn(b); ReadLn(c);
17. Символьный тип данных Символьный тип данных применяется для представления отдельных символов в языке Pascal. Описание символьного типа Type Символьный тип = char; Внутреннее представление символьного типа соответствует переменной целого типу byte, значение которой равно номеру символа в таблице ASCII.
Символьный тип данных Константы символьного типа f (символ) #123 (#целая_константа) Символ в составе константы удваивается Операции и ф-ции обработки символьных значений Операции сравнения ( = <> =) Операция конкатенации + Ф-ции Chr(целое_значение) и Ord(значение_символ)
Пример Program SymEx; Var a,b : integer; op : char; Begin Write(a => ); ReadLn(a); Write(b => ); ReadLn(b); Write(Operation => ); ReadLn(op); if op=+ then WriteLn(Result =, a+b); if op=/ and b<>0 then WriteLn(Result =, a/b:10:3); … End.
18. Логический тип данных Логический тип данных применяется для представления результатов операций сравнения и включения и выражения значений условий. Объявление Type логич_тип = boolean; Внутреннее представление соответствует переменной типа byte. Значение true – 1, false – 0. Константы логического типа True False
Логические операции Коньюнкция (логическое И) and Дизъюнкция (логическое или) or and or
Логические операции Инверсия (отрицание) not Исключающее ИЛИ xor not xor
Примеры (x =20) (a>=-1) and (a<5) not((a>1) and (a<5)) or (b=4) to_be or not to_be