
- •Основные понятия языка программирования паскаль
- •Структурное программирование
- •Основные символы языка
- •Элементы языка
- •Интегрированная среда turbo pascal
- •Структура программы в turbo pascal
- •Определение типов
- •Операторы в программе
- •Операторные скобки
- •Операторы ввода
- •Оператор присваивания
- •Оператор условного перехода
- •Оперетор безусловного перехода
- •Организация циклов
- •Использование операторов условного и безусловного перехода
- •Цикл с параметром
- •Цикл с предусловием - цикл while
- •Цикл с постусловием - цикл repeat
- •Оператор выбора варианта
- •Концепция типов данных
- •Стандартные простые типы Целый тип
- •Операции над данными целого типа:
- •Действительный тип
- •Операции над данными действительного типа:
- •Логический тип
- •Символьный тип
- •Символьные строковые константы
- •Нестандартные простые типы (определяемые пользователем)
- •Перечисляемый тип
- •Ограниченный тип (диапазон, интервал)
- •Процедуры и функции
- •Описание процедур
- •Стандартные процедуры
- •Описание функций
- •Стандартные функции
- •Итерация и рекурсия
- •Побочный эффект рекурсии
- •Предварительное описание (ссылки вперед)
- •Регулярные типы Одномерный массив
- •Алгоритмы сортировки массивов
- •1. Метод пузырька (метод обменной сортировки с выбором)
- •Многомерные массивы
- •Упакованные массивы
- •Множественные типы
- •Свойства множеств
- •Операции над множествами
- •Комбинированные типы Описание записей и действия с ними
- •Оператор присоединения.
- •Записи с вариантами
- •Типизированная константа
- •Простая типизированная константа
- •Структурированная (сложная) типизированная константа Типизированная константа массива
- •Типизированная константа записи
- •Типизированная константа множества.
- •Преобразование типов
- •Неявные преобразования типов
- •Использование стандартных функций для преобразования
- •Явные преобразования типов
- •Эквивалентность типов
- •Совместимость типов
- •Файловые типы
- •Определение файлового типа
- •Структура файла
- •Имя файла
- •Описание файлового типа
- •Файловая переменная
- •Операции над файлами
- •Типизированные файлы
- •Ссылочные типы (указатели) Статические и динамические переменные
- •Ссылочные типы (указатели)
- •Удаление узла из стека:
- •Человек
- •Человек
- •Вставка
- •Динамические переменные
- •Процедуры создания и удаления динамических переменных
- •Динамические списковые структуры
- •Однонаправленные списки
- •Двунаправленные списки
- •Очереди
- •Деревья
- •Модульная система turbo pascal
- •Uses mod 1, mod 2, mod 3; (подключение трех модулей) Общая структура модуля
- •Использование идентификаторов модуля
- •Использование модуля в программе
- •Компиляция модулей
- •Системный файл turbo.Tpl
- •Стандартные модули
- •Модуль crt
- •Модуль dos
- •Модуль printer
- •Модуль overlay
- •Модуль string
- •Процедуры модуля graph
- •Графические процедуры
- •Координаты. Окна. Страницы
- •Линии и точки
- •Многоугольники
- •Дуги,окружности, эллипсы
Оператор условного перехода
Кроме перечисленных операторов существуют еще условные операторы, имеющие вид:
IF условие THEN оператор1 ELSE оператор2
Каждый условный оператор осуществляет выбор одной из альтернатив. Этот выбор определяется значением условия, которое стоит после разделителя IF. Условие может принимать два значения: истина или ложь. Если значение условия истина, то выполняется оператор1, а вслед за ним оператор, стоящий за всем условным оператором. Если значение условия ложь, то выполняется оператор2, а вслед за ним оператор, стоящий за всем условным оператором. Таким образом, в результате выполнения условного оператора будет выбран и выполнен один из операторов, стоящих внутри условного оператора. В языке Паскаль разрешается использовать сокращенную форму условного оператора, имеющего вид:
IF условие THEN оператор.
В этой форме условного оператора отсутствует часть ELSE. Соответственно модифицируется и правило его выполнения. Если значение условия есть истина, то выполняется оператор, стоящий внутри условного оператора. В противном случае весь условный оператор пропускается.
Пример. Если Х = 1, сделать Х = 2; если Х = 2, сделать Х = 1.
IF X = 1 THEN X := 2;
IF X = 2 THEN X := 1;
Это неверно при Х=1. Правильное решение:
IF X = 1 THEN X := 2 ELSE
IF X :=2 THEN X :=1;
Процедура вывода WRITELN выдает на печать сообщения. Оно заключается в круглые скобки, а его текст - в апострофы.
После разделителей THEN и ELSE может стоять один оператор. Для того чтобы обойти синтаксическое ограничение, имеется составной оператор, служащий средством группирования других операторов. Составной оператор - это один оператор. Поэтому, если после любого из разделителей THEN или ELSE по сути решения задачи требуется записать более одного оператора, то необходимо использовать составной оператор. Он начинается со слова BEGIN и заканчивается словом END. Между ними может располагаться любая последовательность операторов.
Для ввода и вывода данных предусмотрены процедуры:
READ
READLN
WRITE
WRITELN
Основной процедурой ввода является READ. с ее помощью можно прочитать любое число исходных данных, указав в круглых скобках идентификаторы тех переменных, которым необходимо присвоить значения.
Процедура READLN (А) считывает данные из одной строки и обеспечивает переход к началу следующей строки. Процедура READLN без параметров осуществляет переход к началу следующей строки.
READLN(A, B, C, D); эквивалентно
READ(A); READ(B); READ(C); READ(D); READLN;
Для вывода данных используются процедуры WRITE и WRITELN. Различие между ними такое же, как между READ и READLN. WRITELN начинает сообщение с новой строки, а WRITE помещает в выходную запись сообщения друг за другом.
Пример. X = 5, Y = 7. Вывести эти значения.
WRITЕLN (X, Y); Получим: 57 (два значения без пробела между ними).
WRITELN (‘X=‘,X, ‘Y=‘,Y); Получим: X=5Y=7 (тоже без пробела).
Для того чтобы сделать результаты работы программы более наглядными, в качестве параметров процедур WRITE и WRITELN используются строки, заключенные в апострофы. Последовательность символов, заключенная в апострофы, просто копируется на экран.
Существует еще одна возможность управлять выводом: после переменной через двоеточие указана ширина поля, которое отводится для представления числа.
WRITELN(‘X=‘, X:4,’ Y=‘, Y:4); X= 5 Y= 7
Под представление Х и Y в этом случае отводиться по четыре позиции. Если одно из значений не помещается в указанное поле, то ошибки не возникает. Число все равно будет напечатано, причем под его представление будет отведено столько позиций, сколько необходимо, чтобы представить его полностью. Часто ширина поля не указывается. Тогда по умолчанию отводится некоторое число позиций, в которых и размещается выводимое число.
WRITELN(X:7:3)