- •Алгоритмы.
- •Условие
- •Типы данных.
- •Целые числа.
- •Вещественный тип данных.
- •Символьные и строковые типы данных.
- •Булевские данные.
- •Указатели.
- •Идентификаторы.
- •Операторы.
- •Операторы присваивания.
- •Арифметические операторы.
- •Побитовые операторы.
- •Операторы отношений.
- •Логические операторы.
- •Адресные операторы.
- •Операторы над множествами.
- •Строковые операторы.
- •Создание программ в среде turbo pascal Структура программ.
- •1: WriteLn(' I меньше 10 ');
- •Тип константы компилятор определяет по типу значения. Описание типов используется при создании типов данных, отличных от базовых.
- •Обзор управляющих структур языка pascal
- •Интегрированная среда turbo pascal Назначение и состав среды.
- •Строка статуса
- •Справочник.
- •Работа с блоками текста
- •Компиляция и выполнение
- •Выполнение по шагам и трассировка
- •Управляющие структуры языка Паскаль. Условные операторы.
- •Пустой оператор
- •Условный оператор
- •If Flag then Writeln(‘Истинно’)
- •If not Flag then Writeln(‘Ложно’)
- •Оператор выбора
- •Операторы цикла Оператор цикла с предусловием (while)
- •Оператор цикла с постусловием (repeat…until)
- •Оператор цикла с параметром (for...Do)
- •I : Integer; { описание параметров циклов}
- •Процедуры и функции.
- •Структура процедуры и функции.
- •Локальные и глобальные элементы.
- •I : Integer; {I - глобальная}
- •I : Integer; {I - локальная }
- •Параметры.
- •I : Integer; {I - локальная }
- •Var { описание переменных }
- •Var { описание внутренних переменных}
- •Структурированные типы данных языка паскаль Перечисляемый тип.
- •Структурированные типы
- •Массивы
- •If eq then Write(“Массивы одинаковы”);
- •Множества
- •Совместимость и преобразование типов.
- •Символы и строки Символы:
- •Строки.
- •Строка- это массив символов.
- •Доступ к файлам.
- •Логические устройства
- •Открытие файла
- •Процедуры и функции для работы с файлами.
- •Текстовые файлы.
- •Типизированные файлы.
- •Нетипизированные файлы.
- •Модуль graph.
- •Драйверы.
- •Координатная система.
- •Текущий указатель.
- •Фигуры и стили.
- •Окна и битовые образы.
- •Обработка ошибок.
- •Пример простой программы:
- •Справочник по модулю Graph
- •Модуль crt
- •Ввод данных с клавиатуры. Более подробно о cтандартных операторах ввода.
- •Функции crt.
- •Текстовый вывод на экран.
- •Некоторые процедуры модуля crt.
- •Программирование звукового генератора.
- •Указатели.
- •Динамические переменные.
- •Проблема ограничения памяти.
Операторы присваивания.
Основной операцией является операция присваивания:
Ratio:= A/B.
В Паскале операция присваивания - это комбинация двоеточия и знака равенства: ":=". В примере значение выражения А /В, стоящее справа от ":=", присваивается переменной Ratio, стоящей слева.
Арифметические операторы.
Паскаль поддерживает обычный стандартный набор бинарных арифметических операторов, которые выполняются над целыми и веществеными числами:
- умножение (*);
- деление целых (div);
- деление вещественных с остатком (/);
- остаток от деления (mod);
- сложение (+);
- вычитание (-).
Побитовые операторы.
Для операций над битами в Паскале имеются следующие операторы:
- shl (shift left) Сдвигает биты влево на указанное число бит, заполняя оставшиеся справа разряды нулями
- shr (shift right) Cдвигает биты вправо на указанное число бит, заполняя оставшиеся слева разряды нулями
- and выполняет логическое and (и) над парой битов, возвращает 1 , если оба бита 1 и 0 в противном случае
- or выполняет логическое or (или) над парой битов, возвращает 0 , если оба бита равны 0 и 1 в противном случае
- xor выполняет логическое исключающее или над парой битов, возвращает 1, если биты имеют разное значение и 0 в противном случае
- not операция логического дополнения бита заменяет 0 на 1 и обратно.
Эти операции выполняют действия на низком уровне с целочисленными значениями .
Операторы отношений.
Операторы отношений сравнивают два значения, возвращая в результате булевское значение True или False. В Паскале реализуются операторы:
> - больше, чем;
>= - больше, чем или равно;
< - меньше, чем;
<= - меньше, чем или равно;
= - равно;
<> - не равно;
in - является элементом.
Почему необходимо знать, каков результат: True или False? Введем следующую программу:
program TestGreater;
var
A, B: Integer;
Test: Boolean;
begin
Write('Введите два числа: ');
Readln(A, B);
Test := A > B;
Writeln('А больше чем В', Test);
end.
Результат программы : True, если А больше В , и False , если А меньше или равно В.
Логические операторы.
В Паскале есть четыре логических оператора - and, xor, or, not. Они аналогичны побитовым операторам, но имеют свои отличия.
Эти логические операторы работают с логическими значениями (True и False), позволяя комбинировать выражения отношений, булевские переменные и булевские выражения.
Различия между этими операторами и побитовыми операторами следующие:
- Логические операторы возвращают результат True или False (булевское значение), в то время как побитовые операторы производят действие над целыми значениями.
- Эти операторы не позволяют комбинировать булевские и целые выражения; другими словами, выражение Flag and Indx недопустимо, если Flag - булевский тип, а Indx - целый тип ( или наоборот).
Адресные операторы.
В Паскале поддерживаются два специальных оператора над адресами: вычисление адреса (@) и оператор косвенной ссылки (^).
Оператор @ возвращает адрес заданной переменной; если Sum переменная целого типа, то @Sum - адрес в памяти этой переменной.
Аналогично, если ChrPtr - это указатель на тип Сhar, то ChrPtr^ - это символ, на который указывает ChrPtr.