
- •Цель работы
- •Краткая теоретическая справка
- •2.1 Среда Turbo Pascal
- •2.2 Текстовый редактор среды Турбо Паскаля
- •2.3 Словарь языка Turbo Pascal
- •2.4 Структура программы на языке Turbo Pascal
- •2.5 Операторы ввода-вывода
- •Read ([ф.П.], сп. Ввода); или read (сп. Ввода); и readln ([ф.П.], сп. Ввода); или readln (сп. Ввода); или readln;.
- •Write ([ф.П.], сп. Вывода); или write (сп. Вывода); и writeln ([ф.П.], сп. Вывода); или writeln (сп. Вывода); или writeln;.
- •Порядок выполнения работы
- •Второй блок выводимой на экран информации:
- •Третий блок выводимой на экран информации:
- •Четвёртый блок выводимой на экран информации:
- •Содержание отчета
- •Варианты заданий
- •Контрольные вопросы
- •1 Цель работы
- •2 Краткая теоретическая справка
- •3 Порядок выполнения работы
- •4 Содержание отчета
- •5 Варианты заданий
- •6 Контрольные вопросы
- •1 Цель работы
- •2 Краткая теоретическая справка
- •2.1 Организация цикла с предусловием
- •2.2 Организация цикла с постусловием
- •2.3 Организация цикла с параметром
- •3 Порядок выполнения работы
- •4 Содержание отчета
- •5 Варианты заданий
- •6 Контрольные вопросы
- •1 Цель работы
- •2 Краткая теоретическая справка
- •2.1 Процедуры
- •Procedure имя_процедуры;
- •2.2 Функции
- •3 Порядок выполнения работы
- •4 Содержание отчета
- •5 Варианты заданий
- •6 Контрольные вопросы
- •1 Цель работы
- •2 Краткая теоретическая справка
- •Методы численного интегрирования
- •2.1.1 Метод прямоугольников
- •2.1.2 Метод трапеций
- •2.1.3 Метод Симпсона
- •3 Порядок выполнения работы
- •4 Содержание отчета
- •5 Варианты заданий
- •6 Контрольные вопросы
- •1 Цель работы
- •2 Краткая теоретическая справка
- •2.1 Понятие массивов, описание массивов в Turbo Pascal
- •А) с использованием разделов типа и переменных:
- •Б) с использованием только раздела переменных:
- •А) разделов типа и переменных в виде
- •Б) только раздела переменных в виде
- •2.2 Действия над массивами
- •2.3 Ввод данных в массивы
- •3 Порядок выполнения работы
- •4 Содержание отчета
- •5 Варианты заданий
- •6 Контрольные вопросы
- •1 Цель работы
- •2 Краткая теоретическая справка
- •2.1 Понятия динамических переменных
- •2.2 Ссылочный тип данных и адресация
- •2.3 Создание и удаление динамических переменных
- •2.4 Динамические массивы
- •Пример 1.
- •3 Порядок выполнения работы
- •4 Содержание отчета
- •5 Варианты заданий
- •6 Контрольные вопросы
- •1 Цель работы
- •2 Краткая теоретическая справка
- •2.1 Строковый тип данных
- •#7'Допущена ошибка !'#13'Нажмите клавишу ввода "Enter"',
- •2.2 Операции над строками
- •Concat ('abc', 'def');
- •3 Порядок выполнения работы
- •4 Содержание отчета
- •5 Варианты заданий
- •6 Контрольные вопросы
- •1 Цель работы
- •2 Краткая теоретическая справка
- •2.1 Понятие файла
- •2.2 Взаимодействие программ с файлами
- •2.3 Инициализация файла
- •2.4 Процедуры и функции для работы с файлами
- •3 Порядок выполнения работы
- •4 Содержание отчета
- •5 Варианты заданий
- •6 Контрольные вопросы
- •1 Цель работы
- •2 Краткая теоретическая справка
- •2.1 Модуль Graph
- •InitGraph (var Driver, Mode: integer; Path: string);
- •2.2 Вывод точек
- •2.3 Вывод отрезков прямых линий
- •SetLineStyle (Type, Pattern, Thickness);
- •2.4 Вывод прямоугольников и многоугольников
- •2.5 Вывод окружностей, эллипсов и их дуг
- •3 Порядок выполнения работы
- •4 Содержание отчета
- •5 Варианты заданий
- •6 Контрольные вопросы
- •1 Цель работы
- •2 Краткая теоретическая справка
- •2.1 Особенности вывода текста в графическом режиме
- •2.2 Стандартные средства Graph, обеспечивающие вывод текста
- •2.3 Шрифты
- •2.4 Вывод функциональных зависимостей
- •(* Определение начальных b конечных координат графика *)
- •(* Блок вычисления и рисования синусоидальной функции.
- •(* Получение номера ошибки, если инициализация режима не произошла *)
- •(* Блок вычисления и рисования синусоиды *)
- •(* Рисование синусоиды с помощью процедуры DrawPoly)
- •3 Порядок выполнения работы
- •4 Содержание отчета
- •5 Варианты заданий
- •6 Контрольные вопросы
1 Цель работы
Ознакомление с понятиями динамическая память, динамическая переменная, указатель. Получение практических навыков написания и отладки программ в среде Turbo Pascal для работы с динамическими массивами.
2 Краткая теоретическая справка
2.1 Строковый тип данных
Для обработки текста в Турбо Паскале был введён строковый тип данных string (строка). Строковый тип обобщает понятие символьных массивов, позволяя динамически изменять длину строки. Различают строковые переменные и строковые константы.
Строковый тип данных подобен одномерному массиву символов, задаваемому в виде array [0 .. N] of char.
Строковый тип данных может быть объявлен в разделах констант, типов и переменных:
const
Strcon = ' Strcon – это строковая константа';
type
S1 = string [N];
S2 = string;
var
S3, S4: string [M];
S5: string;
S6, S7: S1;
S8: S2;
Строковую константу объявляют в разделе констант. Строковая константа – последовательность любых символов, кроме символа возврата каретки, заключённая в апострофы. Если в строковой константе встречается апостроф, то он удваивается.
Строковую константу можно записать как последовательность ASCII- кодов символов, перед каждым из которых должен стоять символ сеточки #. Например, строки #139#165#170#230#168#239 и 'Лекция' эквиваленты.
Допускается в одной строковой константе совмещать оба вида записи, чередуя их любым образом. Это позволяет использовать в строке все виды символов, включая управляющие. Например, допустима запись
#7'Допущена ошибка !'#13'Нажмите клавишу ввода "Enter"',
что означает подачу звукового сигнала (#7) для привлечения внимания оператора, вывод текста "допущена ошибка!", переход на новую строку (#13) и вывод текста на ней "Нажмите клавишу ввода "Enter".
Выражения в квадратных скобках после слова string указывают максимальную длину строки и могут быть любыми константами порядкового типа, принимающими заданные значения в интервале от 1 до 255 включительно, т.е. N ≤ 255 и M ≤ 255. Если значение константы не указано, то длина строки принимается максимально возможной и равной 255 байтам (элементам).
2.2 Операции над строками
Значение строковой переменной может быть присвоено оператором присваивания либо прочитано из некоторого файла, например, текстового, соответствующей процедурой присваивания или чтения:
S3 := 'Тульский государственный университет'
S5 := S3;
readln (F, S5) ; {Чтение из файла F}
При вводе строковых переменных вводимые символы размещаются с начала строкового массива. Если количество введённых символов меньше заданной длины строки, то оставшиеся байты заполняются пробелами. Если заданная длина строки меньше, чем длина присваиваемого значения, то лишние символы отбрасываются.
Строка в Паскале трактуется одновременно как простое (скалярное) значение, так и как массив символов. Поэтому некоторые операции могут выполняться над строкой целиком (например, ввод и вывод), а некоторые над каждым символом по отдельности.
К конкретному символу строки можно обратиться как к элементу массива, указав в квадратных скобках после имени строки порядковый номер элемента строки.
В отличие от массивов переменные строкового типа могут участвовать как операнды в инструкциях ввода-вывода, например, в виде readln (S3) или в виде write (S3).
Самый первый байт в строке имеет индекс "0" и содержит текущую длину строки. Поэтому по оператору write (S3 [0]) на экран монитора будет выведен символ, описывающий длину строки S3. Количество символов в строке при её вводе определяется автоматически, при этом также автоматически заполняется нулевой байт.
К строкам можно применять операцию объединения (сцепления) строк, называемую конкатенацией и обозначаемую знаком "+". Например, после выполнения оператора
S6 := 'a' + 'b' + 'c';
строка S6 будет содержать текст "abc", а после выполнения оператора
S6 := S6 + 'd' + 'e' + 'f';
– текст "abcdef".
Все остальные действия над строками реализуются с помощью четырёх стандартных строковых функций Concat, Length, Copy, Pos и четырёх строковых процедур Delete, Insert, Str и Val, находящихся в модуле System.
Строковая функция Concat (St1, St2 [, St3, .., StN]) – конкатенация – имеет тип string и возвращает строку, полученную в результате слияния ("сцепления") строк-параметров St1, St2, .., StN. Например, функция