Лабораторная по ИСР Lazarus введение
В настоящее время бесплатный компилятор FPC (Free Pascal Compilier) используется в нескольких интегрированных средах разработки (ИСР). Наиболее распространены две ИСР:
* FreePascal (FP) обеспечивает пользователю комфортный интерфейс. Содержит редактор с синтаксическими выделениями, отладчик, браузер символов и др. ИСР для всех поддерживаемых ОС использует символьный интефейс, подобный ИСР Turbo Pascal. Не поддерживает графику.
* Lazarus. Эта ИСР подобна Delphi, использует графический интерфейс. Поддерживает графику.
Лабораторный цикл содержит работы по изучению программирования на языке FreePascal в ИСР Lazarus. Эта ИСР предназначена для разработки консольных приложений, приложений для ОС с графическим интерфейсом, модулей, DLL и др. В ней в редакторе кода используется ANSI кодировка символов. Она не совпадает с кодировкой консольного приложения. При создании консольного приложения требуется русификация строк.
Цикл может использоваться в лабораторном практикуме по дисциплинам:
* “Программирование на языках высокого уровня” (специальность 230105),
* “Языки программирования высокого уровня” (специальность 230201),
* “Информатика и программирование” (специальность 080801),
* “Высокоуровневые методы информатики и программирования” (специальность 080801).
Содержание отчета
* Название работы.
* Цель работы.
* Задание в соответствии с вариантом.
* Блок-схему алгоритма в соответствии с номером варианта.
* Листинги кодов программы.
* Результаты выполнения программы на ПК.
* Выводы.
Сохранение кодов
ИСР Lazarus для каждого проекта создает несколько файлов. Чтобы файлы разных проектов не перепутывались, следует для каждого проекта создавать свою папку с именем, содержащим номер работы и номер задания (например, папку 03_1 для задания 1 работы 3).
Рекомендуется имена проектов выбирать со ссылкой на дисциплину, номер работы и номер задания (например, Prg_3_1 – проект для задания 1 работы 3 по программированию). Файлы проекта Prg_3_1 нужно сохранить в папке 03_1.
Для правильного обращения к файлам в консольных приложениях нужно использовать в именах папок только латиницу.
Чтобы файлы разных студентов не перепутывались друг с другом, каждому студенту следует создавать для своих файлов индивидуальные папки. Рекомендуемая иерархия вложенных друг в друга папок:
Диск пользователя (устанавливается администратором)
Папка Users (пользователи)
Папка группы (например, PO_31)
Папка студента (например, Ivanov)
Папка проекта (например, 03_1)
Внутри нее файлы проекта Prg_3_1.
В дисплейных классах в папке проекта на каждом занятии следует сохранять файлы проекта (одно задание лабораторной работы – один проект, одна папка). Рекомендуется при выполнении работы периодически сохранять незавершенные проекты в текущем состоянии, чтобы избежать потерь документов при сбоях.
Методические указания
МУ в электронном виде доступны студентам на сервере (только для чтения). Иерархия папок с документацией следующая:
Диск Method
Папка преподавателя (например, Petrov)
Папка МУ для дисциплины (например, Lazarus_LR)
Файлы методических указаний к отдельным работам.
Выполнение работ
ИСР FreePascal позволяет разрабатывать консольные приложения под операционную систему DOS с символьным интерфейсом.
Структура программы и типы в языке FreePascal
Подготовка к работе
- Структура программы на языке FreePascal.
- Задание констант, переменных.
- Типы численных данных и ошибки при преобразованиях типов.
- Организация простейшего ввода-вывода данных.
- Составить программу решения задачи в виде консольного приложения.
Контрольные вопросы
- Алфавит языка FreePascal, операции, идентификаторы.
- Структура программы. Разделы объявления констант, переменных, меток, типов данных, подпрограмм
- Константы. Их объявление. Константные выражения.
- Переменные. Их объявление.
- Форматы представления чисел (с фиксированной и плавающей точкой).
- Типы целых чисел без знака: Byte, Word, LongWord = Cardinal.
- Типы целых чисел со знаком: Shortint, Smallint, Integer = Longint, Int64.
- Типы вещественных чисел: Single, Real48, Double = Real, Extended, Comp, Currency.
- Тип TDateTime и его использование.
- Логические типы данных Boolean.
- Символьные типы: AnsiChar = Char, WideChar.
- Строковые типы для длинных строк: AnsiString = String, WideString.
- Строковые типы для коротких строк: ShortString, String[N].
- Совместимость типов при присвоениях.
- Тип Variant и его использование.
Задания к работе
Задание 1. Создать программу взаимных преобразований типов численных данных в соответствии с вариантом. Нужно преобразовывать численные данные из типа Start в типы Fin1 и Fin2 для вещественных и целых чисел.
Задание 2. Создать программу взаимных преобразований строковых и символьных типов. Она должна отображать фамилию студента строками разного типа и добавлять к строке символ.
Задание 3. Создать программу работы с типом TDateTime. Она должна запрашивать дату и время рождения студента, выводить текущие дату/время, запрашивать желаемое время дальнейшего обучения, выводить дату/время и день недели конца обучения.
Варианты к заданию 1
| № | Типы вещественных чисел | Типы целых чисел | ||||
| Start | Fin_1 | Fin_2 | Start | Fin_1 | Fin_2 | |
|
|
Single | Currency | Extended | Byte | Cardinal | Integer |
|
|
Real48 | Single | Currency | Word | Byte | Cardinal |
|
|
Double | Real48 | Single | LongWord | Word | Byte |
|
|
Real | Double | Real48 | Cardinal | LongWord | Word |
|
|
Extended | Real | Double | Shortint | Cardinal | LongInt |
|
|
Comp | Extended | Real | Smallint | Shortint | Cardinal |
|
|
Currency | Comp | Extended | Integer | Smallint | Shortint |
|
|
Single | Currency | Comp | LongInt | Integer | Smallint |
|
|
Real48 | Single | Currency | Int64 | LongInt | Integer |
|
|
Double | Real48 | Single | Word | Int64 | LongInt |
|
|
Real | Double | Real48 | LongWord | Byte | Int64 |
|
|
Extended | Real | Double | Cardinal | Word | Int64 |
|
|
Comp | Extended | Real | Shortint | LongWord | Byte |
|
|
Currency | Comp | Extended | Smallint | Cardinal | Word |
|
|
Real | Currency | Comp | Integer | Shortint | LongInt |
Линейные структуры
Подготовка к работе
- Запись констант, переменных, стандартных функций.
- Правила записи арифметических выражений.
- Арифметический оператор присваивания.
- Разработать алгоритм решения в соответствии с заданием.
- Составить программу решения задачи в виде консольного приложения.
Контрольные вопросы
- Алфавит языка FreePascal.
- Операции.
- Идентификаторы.
- Типы данных.
- Структура программы консольного приложения.
- Где описываются константы, переменные, метки и типы данных?
- Стандартные функции.
- Инструкция присваивания.
- Пустая и составная инструкция.
- Процедуры ввода read и readln.
- Процедуры вывода write и writeln.
- Последовательность действий при выполнении оператора присваивания.
- Приоритетность выполнения операций в выражениях.
- Как организовать пропуск одной, двух строк при выводе?
Задания к работе
Задание 1. Вычислить значения переменных в соответствии с вариантами задания. Вывести значения вводимых исходных данных и результаты, сопровождая их вывод именами выводимых переменных. Задание выполнить в виде консольного приложения.
Задание 2. Повторить задание 1, используя функции из модуля math.


