- •230401 «Информационные системы»
- •230115 «Программирование в компьютерных системах»
- •Лабораторная работа №1. Организация ввода-вывода информации
- •Алфавит языка Turbo Pascal.
- •Переменные и константы.
- •Основные типы переменных.
- •Структура программы.
- •Оператор присваивания, операторы ввода с клавиатуры и вывода на экран.
- •Процедуры управления выводом на экран.
- •Компиляция и выполнение программы.
- •Лабораторная работа №2. Арифметические выражения. Программирование алгоритмов линейной структуры.
- •Арифметические выражения в языке Turbo Pascal.
- •Стандартные арифметические функции.
- •Генератор случайных чисел.
- •Составление алгоритма и программы для решения задачи.
- •Лабораторная работа № 3. Программирование алгоритмов разветвленной структуры. Оператор ветвления if … then … else
- •Условный оператор if … then … else.
- •Составной оператор.
- •Лабораторная работа № 4. Программирование алгоритмов разветвленной структуры. Оператор ветвления case.
- •Условный оператор Case.
- •Лабораторная работа № 5. Программирование алгоритмов циклической структуры с известным числом повторений.
- •Оператор циклаWhile.
- •Оператор цикла repeat.
- •Вложенные циклы
- •Оператор перехода
- •Лабораторная работа № 6. Обработка строк с использованием операторов цикла.
- •Лабораторная работа № 7. Программирование алгоритмов циклической структуры с неизвестным числом повторений.
- •Лабораторная работа № 8. Обработка одномерных числовых массивов.
- •Лабораторная работа № 9. Обработка двумерных числовых массивов.
- •Лабораторная работа № 10. Использование процедур и функций при обработке массивов.
- •Лабораторная работа № 11. Тип запись. Массивы записей.
- •Лабораторная работа № 12. Обработка информации из файлов последовательного доступа.
- •Лабораторная работа № 13. Обработка информации из файлов прямого доступа.
- •Лабораторная работа № 14. Модуль программиста. Многомодульный проект.
- •Текст модуля программиста к задаче 14.
Основные типы переменных.
Тип однозначно определяет, как будет интерпретироваться то или иное значение, в результате исключаются попытки выполнения над ним неприемлемых операций. Язык программирования Turbo Pascal имеет следующие разнообразные типы данных.
Таблица 1. Иерархия типов данных.
Типы данных
|
|||||||||||||
Простые
|
Структурированные |
Ссылочный (указатели) |
Процедурный (процедуры и функции) |
||||||||||
Диапазон |
Перечисляемый |
Логический (boolean) |
Символьный (char) |
Целые (всего 5)
|
Вещественные (всего 5) |
Строковый (string) |
Массив (array) |
Записи (record) |
Множества (set) |
Файлы (file) |
Объекты (object) |
Для чего потребовалось несколько типов данных (например, 5 видов целых), имеющих сходный смысл? Дело в том, что разные переменные в зависимости от условия задачи могут иметь разный диапазон допустимых значений, в соответствии с которыми и следует выбирать для той или иной переменной тип данных. Для содержания переменных из разных диапазонов выделяется различный объем памяти, и это оказывает влияние на быстродействие программы.
Таблица 2. Целочисленные типы.
Целочисленный тип |
Диапазон допустимых значений |
Требуемая память (байт) |
Integer |
-32 768 .. 32 767 |
2 |
Shortint |
-128 .. 127 |
1 |
Longint |
-2 147 483 648 .. 2147 483 647 |
4 |
Byte |
0 .. 255 |
1 |
Word |
0 .. 65 535 |
2 |
Таблица 3. Вещественные типы.
Вещественный тип |
Диапазон допустимых значений |
Число цифр мантиссы |
Требуемая память (байт) |
Real |
2.9E-39..1.7E38 |
11-12 |
6 |
Single |
1.5E-45..3.4E38 |
7-8 |
4 |
Double |
5.0E-324..1.7E308 |
15-16 |
8 |
Extended |
1.9E-4951..1.1E4932 |
19-20 |
10 |
Comp |
-2E+63+1..2E+63-1 |
19-20 |
8 |
Символьный тип предназначен для хранения отдельных символов (букв, цифр, специальных знаков). Например, если переменная Symbol принадлежит к типу Char, то оператор Symbol:=’B’; присвоит этой переменной значение, соответствующее букве ’B’.
Логический тип – переменные типа Boolean могут принимать значения TRUE и FALSE (правда и ложь), которые также могут быть представлены в виде двоичных цифр 1 и 0. Над значениями логического типа допустимы операции сравнения, причем считается, что TRUE больше FALSE. К логическим значениям применимы логические операции.
Таблица 4. Логические операции.
Обозначение операции |
Выполняемое действие |
AND (И) |
Логическое умножение |
OR (ИЛИ) |
Логическое сложение |
XOR (Исключающее ИЛИ) |
Сложение по модулю 2 |
NOT (НЕ) |
Логическое отрицание |
Перечисляемый тип – в языке допускается образование новых типов данных путем перечисления всех допустимых значений. Например, если в программе фигурируют переменные, значения которых соответствуют дням недели, то соответствующий тип данных можно объявить так:
Type
Day=(Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday);
Var
x, y, z: day;
Три переменные, соответствующие дням недели, можно объявить и так:
Var
x, y, z: (Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday);
Первый способ объявления предпочтительнее, так как при этом программа получается более наглядной.
Диапазоны – для создания нового типа можно указать диапазон значений, являющийся частью какого-либо базового типа.
Пример объявления переменных типа диапазон (интервального типа):
Var
X: 1..12; {базовым является один из целых типов}
Y: -10..10; {базовым является один из целых типов}
Z: ‘A’..’Z’; {базовым является тип Char}
Строки – представляют собой последовательность символов, иными словами структуры, состоящие из элементов простого типа (Char).
Значение типа string представляет собой строку длиной от 0 (пустая строка) до 255 символов. При этом нулевой байт строки содержит сведения о текущей длине строки.
Примеры строковых значений:
‘12345’ ‘@#$%^’ ‘TRUE’ ‘АБВГДЕЖЗ’ ‘2007 год’
Пример описания переменных строкового типа:
Var
A: string;{если длина строки не указана, то она может быть до 255 символов}
B: string [80]; {максимальную длину строки можно указать явно}