Операторы Вывода Write/WriteLn
Pascal
Pascal – это язык программирования высокого уровня, отлично подходит для начинающих программистов.
Алфавит Turbo Pascal:
─ латинские буквы от A до Z
─ арабские цифры 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
─ знаки препинания . , : ; ..
─ знаки арифметических операций + – * /
─ знаки логических операций > < = >= <= <>
─ специальные символы ( ) { } [ ] ' := (* *)
─ основные элементы Паскаля
Структура программы:
1. Блок Program <имя>; Заголовок программы (необязателен)
2. Программный блок, состоящий в общем случае из 7 разделов:
─ раздел описания используемых модулей Uses ...;
─ Метки Label ...;
─ Константы Const ...;
─ Типы Type ...;
─ Переменные Var ...;
─ Процедуры Procedure ...;
─ Функции Function ...;
─ Раздел операторов
Begin
<Операторы программы>
End.
Идентификатор (имя) - имя какого-либо элемента программы, которое должно удовлетворять следующим требованиям:
• длина имени не должна превышать 63 символа,
• первым символом не может быть цифра,
• переменная не может содержать пробел;
• имя не должно совпадать с зарезервированным (служебным) словом,
• прописные и строчные буквы воспринимаются одинаково.
Зарезервированные (служебные) слова - это слова, использующиеся только по своему прямому назначению. Их нельзя использовать в качестве переменных, так как они выполняют определенную смысловую нагрузку.
Примеры зарезервированных слов: AND, GOTO, PROGRAM, ELSE, IF, RECORD, NOT, ARRAY, REPEAT, UNTIL, BEGIN, IN, SET, END, CASE, CONST, USES, INTERFACE, STRING, LABEL, THEN, OF, DIV, TO, VAR, DO, TYPE, WHILE, DOWNTO, FILE, FUNCTION, PROCEDURE и другие.
Раздел Const - вид данных, который является постоянным на всем протяжении выполнения программы, описывают константы после зарезервированного слова Const.
Раздел Var - вид данных, который может изменять свое значение в ходе программы, описывают переменные после зарезервированного слова Var.
Раздел операторов Begin end.
Тело программы. Оператор – это инструкция, которую должен выполнить Pascal. Программа состоит из последовательности операторов.
Операторы. Исполняемые операторы должны заканчиваться – ;
Существует несколько типов операторов:
Оператор присваивания – это последовательность из переменной, знака присваивания ( := ) и арифметического выражения. Например, x:=x+1;
Пустой оператор – оператор ; не выполняющий никакого действия.
Комментарии – это пояснения, вставляемые в текст программы. Комментарий - любой текст, заключённый в {} или (* *) или //. Комментарии не выполняются программой.
Типы данных
Для временного хранения информации в операторах памяти машины в языке Паскаль используются константы и переменные. Они могут быть различных типов:
─ целых чисел (Byte, ShortInt, Word, Integer, LongInt);
─ действительных чисел (real);
─ символьный тип (char);
─ строковый (string);
─ логический (boolean);
─ сложные (комбинированный (record), множественный (set) и другие).
Целые типы:
Название | Длина в байтах | Диапазон значений |
Byte | 0 ... 255 | |
ShortInt | -128 ... 127 | |
Word | 0 ... 65535 | |
Integer | -32768 ... 32767 | |
LongInt | -2147483648 ... 2147483647 |
Над целыми типами определены такие операции:
- "+" - сложение;
- " * " - умножение;
- " - " вычитание;
- div - целочисленное деление;
- mod - получение остатка от целочисленного деления.
Вещественные типы (real):
Вещественные типы представляются с некоторой точностью, которая зависит от компьютера. Вам необходимо знать, что вещественный тип разделяется на несколько типов, но использовать мы будем вещественные данные только типа Real, которые занимают 6 байт, имеют диапазон возможных значений модуля от 2.9Е-39 до 1.7Е+38 и точность представления данных - 11...12 значащих цифр.
В языке Паскаль числа могут быть представлены в двух видах:
1. с фиксированной точкой и
2. с плавающей запятой.
Числа с фиксированной точкой изображаются десятичным числом с дробной частью, которая может быть и нулевой. Например: 27.9, 5.00
Такие большие числа как 137.000.000 можно записать в виде чисел с десятичным порядком 1.37·108. Такие числа имеют вид mEp. Здесь m - мантисса; E - признак записи числа с десятичным порядком; p - степень числа 10. Получится 1.37Е+8. Такие числа, представленные с десятичным порядком и называются числами с плавающей точкой.
Например:
Математическая запись | Запись на Паскале |
4·10-4 | 4E -4 |
0,62·105 | 0.62E+5 |
-10,88·1012 | -10.88E12 |
Компьютер, по умолчанию, представляет действительные числа в виде чисел с плавающей точкой. Такое представление чисел не очень нравится пользователям. Поэтому мы будем “заставлять” компьютер выдавать действительные числа в более привычном варианте следующим образом:
R:m:n
где R - действительное число, m - количество позиций, отводимых для целой части, n - количество позиций, отводимых для дробной части.
Например, если мы хотим вывести на экран число Chislo с фиксированной точкой, причем знаем, что для вывода целой части этого числа достаточно 7 мест, а вывод дробной части ограничим сотыми, то мы запишем вывод так:
Write (Chislo:7:2) |
Символьный тип (char):
Значениями данного типа является множество всех символов компьютера: русская или латинская большая или маленькая буква, цифра, знак препинания, специальный знак (например, "+", "-", "*", "/", "", "=" и др.) или пробел " ". Каждый из символов имеет уникальный номер от 0 до 255, т. е. внутренний код, который возвращает функция ORD. Символьная константа или символьная переменная - любой символ языка, заключённый в апострофы. Например:
Var Simvol : char; |
Строковый тип (string):
Значением строковой величины является строка переменной длины (быть может пустая). Строковая константа или строковая переменная представляет собой произвольную последовательность символов, заключенную в апострофы. Например:
Var Stroka : string; |
Логический тип (boolean):
Логический тип данных часто называют булевым по имени английского математика Д. Буля, создателя математической логики. В языке Паскаль имеются две логические константы TRUE и FALSE. Логическая переменная принимает одно из этих значений и имеет тип Boolean. Для сравнения данных предусмотрены следующие операции отношений: <, <=, =, <>, >, >=. А также существуют специфичные для этого типа логические операции OR - или; AND - и; NOT - не.
При проверке некоторых условий результат операции может быть истинным или ложным. Например: 3>5 ложь.
Пример: Создадим программу, в которой опишем несколько переменных разного типа, введем в них значения и выведем на экран.
Program TipDann; Var Chislo1 : Integer; Chislo2 : Real; Simvol : Char; Stroka : String; Logika : Boolean; Begin ClrScr; Chislo1:=12; Chislo2:=Chislo1*2; Chislo2:=Chislo2/5; Simvol:=‘d’; Stroka:=‘Строчка’; Logika:= Chislo1> Chislo2; WriteLn (‘Вывод значений:’); WriteLn (‘Значение переменной Chislo1 : ’,Chislo1); WriteLn (‘Значение переменной Chislo2 :’,Chislo2:5:2); WriteLn (‘Значение переменной Simvol : ’,Simvol); WriteLn (‘Значение переменной Stroka : ’,Stroka); WriteLn (‘Значение переменной Logika : ’,Logika); End. |
Внимательно рассмотрите каждую строчку программы. Обратите особое внимание на описание переменных: Chislo1 - переменная целого типа, Chislo2 - действительного, Simvol - символьного, Stroka - строкового, Logika - логического. Далее в основной программе идет присвоение переменной Chislo1 целого числа 12, переменной Chislo2 - целого числа 24. Обратим внимание, что переменной действительного типа Chislo2 присвоено целое число; никакой ошибки нет, т. к. множество целых чисел является подмножеством множества действительных чисел. Следующая строчка еще более интересная: переменной Chislo2 присваивается значение той же переменной, только деленной на 5.
Такое присваивание используют в программах, если предыдущее значение этой переменной уже не понадобится и для более рационального использования описанных переменных. Для того чтобы переменной символьного типа присвоить какой-либо символ (например, d), надо этот символ записать в апострофах (знак «’»). Аналогично поступают с переменными строкового типа (смотри следующую строку программы). А про переменные логического типа мы знаем, что им можно присваивать только два значения: True и False. В этой программе мы присвоим значение результата сравнения двух переменных, здесь оно будет равно True. А теперь выведем присвоенные значения на экран.
Операторы Вывода Write/WriteLn
Мы уже использовали операторы Write и WriteLn, но нам необходимо подробнее остановиться на правилах применения этих операторов.
Write (англ. писать) - оператор, который используется для вывода информации на экран. Оператор WriteLn выполняет то же самое действие, но так как у него есть еще окончание Ln (line - англ. линия, строка), то после вывода на экран нужного сообщения, он дополнительно переводит курсор на следующую строчку.
Общий вид:
Write (список выражений)
WriteLn (список выражений)
Процедуры Write и WriteLn используются не только для вывода результата, но и для вывода различных сообщений или запросов. Это позволяет вести диалог с пользователем, сообщать ему, когда ему нужно ввести значения, когда он получает результат, когда он ошибся и др.
Например, при выполнении процедуры
WriteLn(‘Найденное число‘,а), будет напечатана строчка, заключенная в апострофы, а затем выведено значение переменной а.
Оператор WriteLn можно применить и без параметров. В этом случае напечатается строка, состоящая из пробелов, и курсор будет переведен на другую строку. Это иногда нам нужно для лучшего восприятия ввода данных.