
- •Основные понятия алгоритма.
- •Алгоритм и его свойства. Понятие алгоритма
- •Свойства алгоритмов
- •Правила построения алгоритма
- •Формы записи алгоритма
- •Словесная форма записи алгоритмов
- •Графическая форма записи алгоритмов
- •Псевдокод
- •Программная форма записи алгоритма
- •Базовые алгоритмические структуры Типы базовых алгоритмических структур
- •Линейная базовая структура ("последовательность")
- •Базовая структура "ветвление".
- •Базовая структура "цикл".
- •Языки программирования и их уровни
- •Языки программирования. Машинный язык
- •Язык ассемблер
- •Языки программирования высокого уровня
- •Компоненты, образующие алгоритмический язык Отличительные особенности алгоритмических языков
- •Компиляторы и интерпретаторы
- •Преобразование алгоритма в программу
- •Три составляющие алгоритмического языка
- •Общая характеристика языка Турбо Паскаль
- •Язык программирования высокого уровня Turbo Pascal 7.0.
- •Основы языка
- •1.1. Алфавит языка
- •1.2. Составные элементы Паскаль-программы
- •Операторы
- •Идентификаторы и имена
- •Описания
- •Переменные
- •Функции и процедуры
- •1.3. Синтаксис языка
- •Структура программы на языке Паскаль
- •Тело программы
- •Классификация типов данных языка.
- •3.1. Простые типы Целые типы
- •Вещественные типы
- •Логический тип
- •Символьный тип
- •Перечисляемый тип
- •3.2. Структурированные типы Массив
- •Множество;
- •Основные конструкции языка Turbo Pascal
- •Константы
- •Переменные
- •Функции
- •Стандартные функции
- •Математические функции
- •Функции преобразования типа:
- •Функции для величин порядкового типа.
- •Функции, создаваемые пользователем
- •Знаки операций
- •Арифметические операции
- •Логические операции
- •Операции с битами информации
- •Операции отношения
- •Круглые скобки.
- •Порядок вычисления выражений
- •Операторы языка Turbo Pascal
- •Простые операторы
- •Оператор безусловного перехода (“Goto”)
- •Обращение к процедуре (функции)
- •Оператор выбора (Case)
- •Оператор цикла (Repeat)
- •Оператор цикла While;
- •Оператор цикла For;
- •Оператор обращения к записям и объектам With.
- •Процедуры и функции, определяемые пользователем
- •Характеристика подпрограмм в Turbo Pascal
- •Порядок создания и использования процедур
- •Порядок создания и использования функций
- •Механизм формальных параметров
- •Параметры-значения
- •Параметры-переменные
- •Параметры-константы
- •Параметры без типа
- •Массивы и строки открытого типа
- •Параметры-процедуры и параметры-функции
- •Использование модулей в Турбо Паскаль
- •Стандартные модули Турбо Паскаль
- •Модуль System
- •Модуль Strings
- •Модуль Crt
- •Модуль Graph
- •Модуль Dos
- •Модуль WinDos
- •Модуль Overlay
- •Исполнительная часть модуля
- •Секция инициализации
- •Использование модуля в основной программе
- •Использование идентификаторов элементов модуля
Вещественные типы
Для представления нецелочисленных данных в Турбо Паскаль имеется пять вещественных типов:
-
Тип
Диапазон
Число значащих цифр
Размер в байтах
Real
2,9*10-39 .. 1,7*1038
11-12
6
Single
1,5*10-45 .. 3,4*1038
7-8
4
Double
5,5*10-324 .. 1,7*10308
15-16
8
Extended
3,4*10-4932 .. 1,1*104932
19-20
10
Comp
-263+1 .. 263-1
19-20
8
Тип Comp фактически является типом целых чисел увеличенного диапазона, однако порядковым не считается.
Все типы, кроме Real, можно использовать в программах только при наличии арифметического сопроцессора или при включении эмулятора сопроцессора.
Логический тип
Стандартный логический тип Boolean (размер – 1 байт) представляет собой тип данных, любой элемент которого может принимать лишь два значения: True и False.
Символьный тип
Символьный тип Char является стандартным. Он определяет полный набор ASCII-символов и используется для представления отдельных символов.
Перечисляемый тип
Перечислимый тип не является стандартным и определяется набором идентификаторов, с которыми могут совпадать значения параметра. Список идентификаторов указывается в круглых скобках, идентификаторы разделены запятыми.
Тип-диапазон
В любом порядковом типе можно выделить подмножество значений, определяемое минимальным и максимальным значением, в которое входят все значения исходного типа, находящиеся в этих границах, включая и сами границы. Такое подмножество определяет тип-диапазон.
Тип-диапазон задается указанием минимального и максимального значений, разделенных двумя точками:
Type
<имя типа> = <мин.значение> ..<макс.значение>;
3.2. Структурированные типы Массив
Массив – это структурированный тип данных, состоящий из фиксированного числа элементов, имеющих один и то же тип;
Порядок использования массивов:
Объявление (описание) типа массив:
Type TMatr = Array [1..7, 1..7] of Real;
Tvect = Array [1..7] of Real;
Объявление (описание) переменных типа массив:
Var MatrKoefFirst, MatrKoefLast: Tmatr;
VectSwob: Tvect;
i, j: Byte;
Обращение к элементам массива в теле программы:
For i:=1 to 7 do
Begin Write('Введите ',i,'-й свободный член');
Readln (VectSvob [i]);
For j:=1 to 7 do
Begin Write('Введите значение коэффициента с номером ',i,' ',j);
Readln (MatrKoef [i, j]);
End; End;
Действия над массивами в целом:
Операции над массивами допускаются только для массивов одинаковой структуры, т.е.:
Var А, B: Array [1..25] of Integer;
Допустимые операции:
A = B; A <> B; A := B.
Строка
Строка – это последовательность символов кодовой таблицы ПЭВМ. Строку можно рассматривать как массив символов. Длина строки по умолчанию не должна превышать 255 символов (если при объявлении не указана другая предельная длина).
Порядок использования строк.
Определение строковой переменной с диной строки не более 15 символов:
с предварительным описанием типа:
Type Str1 = String [15];
Var MyStr : Str1;
без предварительного описания типа :
Var MyStr : String [15];.
Объем памяти, занимаемый строковой переменной в байтах равен объявленному размеру строки +1. Для строки, описанной в нашем примере, длина строки в байтах равна 15+1=16. Это объясняется тем, что в нулевом байте строки хранится информация о ее фактической длине.
Строковые выражения:
строковые выражения состоят из :
строковых констант;
строковых переменных;
процедур и функций работы со строками;
знаков операций (сцепления {+}и отношения {=, <>, >, <, >=, <=}).
Примеры:
'I'+'B'+'M '+'PC' IBM PC;
'DOS 6.22'<'Dos 6.22' True;
Str1:='Students'$
A: String[6]; A:='Группа 31'; 'Группа'
Процедуры (основные):
Str (Chi, St) – преобразование число Chi в строку St
пример: Chi :=3.5Е+2; Str (Shi: 6, St); ___350;
Val (St, Chi, Cod) – преобразует строку в число. Если нормально Cod=0, если встретился неверный символ, то Cod=порядковому номеру этого символа, а Chi – не определен;
Delete (St, Pos, N) – удаление N символов строки St, начиная с позиции Pos;
Insert (Str1, Str2, Poz) – вставка строки Str1 в строку Str2, начиная с позиции Poz.
Функции (основвные):
Copy (St, Poz, N) – выделяет из St подстроку длиной N символов, начиная с позиции Poz;
ConCat (Str1, str2, .. , StrN) – выполняет сцепление строк;
Length (St) – вычисляет текущую длину строки St;
Pos (Str1< Str2) – обнаруживает первое появление строки Str2 в строке Str1;
UpCase (Ch) – преобразует строчную букву в прописную.
Запись
Запись – это структурированный тип данных, состоящий из фиксированного числа компонентов одного или: нескольких типов.
Порядок использования записей:
Объявление (описание) типа запись:
Описание типа запись начинается со слова Record и заканчивается End;
Между ними приводятся поля записи с указанием типа;
Формат записи: Type <имя типа> = Record
<поле1> : <тип1>;
….
<полеN> : <типN>
End;
Пример использования типа запись смотри в примере программы предыдущей лекции.
Повторение имен полей в пределах записи не допускается;
Объявление (описание) переменной типа запись:
Var <Имя переменной> : <имя типа>;
Обращение к полям записи:
Вариант 1: <Имя переменной>.<поле1> := <значение>;
Вариант 2: With <имя переменной> do <выражение, включающее поле1>. Оператор With допускает вложенность до 9.
Пример: Type Complex = Record
Re, Im: Real;
End;
Var Comp1, Comp2, Comp3: Complex;
Begin
Comp1.Re:= 1;
Comp1.Im:= 2;
Comp2.Re:= 2;
Comp2.Im:= 3;
Comp3.Re := Comp1.Re + Comp2.Re;
Comp3.Im := Comp1.Im + Comp2.Im;
End.