Delphi. Лабораторная работа № 9. (4 часа)

«Программирование с использованием записей и файлов».

Цели:

  • Научиться разрабатывать приложения, в которых отображаются и обрабатываются структурированные данные - записи и файлы;

  • Научиться применять компоненты OpenDialog и SaveDialog для открытия и сохранения файлов.

  • Закрепить навыки использования компонента StringGrid для хранения и отображения структурированных данных.

Ход работы:

1. Изучить (повторить) теоретический материал:

Тема 9. "Программирование с использованием записей и файлов".

Общая часть задания:

Разработать приложение, которое позволяет:

2. Получить (уточнить) у преподавателя номер своего варианта.

3. Выбрать из списка номер вашего варианта и прочитать условия задач:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24

4. Если возникли вопросы по условиям задач, задайте их преподавателю.

5. Скачать, распаковать, открыть и внимательно изучить пример: скачать архив.

6. Разработать приложение для своего варианта. 

7. Протестировать приложение.

8. Оформить отчет по лабораторной работе. Для этого следует в строке заголовка главной формы записать:

"ЛР N. Вариант N. Группа. Фамилия Имя." В начале программного модуля главной формы записать как комментарий:

9. Сдать преподавателю выполненную работу:

 

10. Оценки по проверенным работам можно посмотреть в электронном журнале:


Индивидуальные задания

Вариант 1.

Структура данных: "Заказ стройматериалов".

Материал

Ед.измерения

Количество

Цена ед., руб.

Сумма, руб.

Краска

л

3

9500

= (вычисляется)

...

 

 

 

 

 Обработка: Вычислить общую сумму заказа.

 Вариант 2.

Структура данных: "Инвентаризационная ведомость".

№ п/п

Наименование

Инвентарный

номер

Количество

Цена ед., $.

Сумма, руб.

1

ПЭВМ "ICS"-PIV/2400M

312000345

1

780

= (вычисляется)

2

"Мышь" Genius-PS\2

-

12

5.2

...

 

Обработка: Отобразить только те данные, у которых имеется инвентарный номер и количество равно 1.

 Вариант 3.

Структура данных: "Квитанция об оплате коммунальных услуг".

№ п/п

Наименование

Ед. изм.

Количество

Тариф за ед., руб.

Сумма, руб.

1

Отопление

кв. м.

58

650

= (вычисляется)

...

 

 

 

 

 

 Обработка: Вычислить общую сумму оплаты по квитанции.

 Вариант 4.

Структура данных: "Товарная накладная".

№ п/п

Товар

Ед. изм.

Количество

Цена ед., руб.

Сумма, руб.

1

Печенье "Василёк"

кг

32

2400

= (вычисляется)

...

 

 

 

 

 

 Обработка: Отобразить только те данные, у которых "Сумма" > 50 000 руб.

Вариант 5.

Структура данных: "Расход бензина по автопарку".

Номер автомобиля

Марка

Расход, л на 100 км

Пробег, км

Расход, л

15-45 ГКЛ

ГАЗ-53

9

420

= (вычисляется)

...

 

 

 

 

 Обработка: Отсортировать данные по убыванию значений в колонке "Расход".

 Вариант 6.

Структура данных: "Рентабельность предприятий".

Предприятие

Доход, млн. руб.

Расход, млн. руб.

Прибыль, млн. руб.

Рентабельность, %

ОАО "Лакокраска"

152,240

135,250

= (вычисляется)

= (вычисляется)

...

 

 

 

 

 Примечание: Прибыль = Доход - Расход; Рентабельность = 100 * Прибыль/Расход

Обработка: Отсортировать данные по убыванию значений в колонке "Рентабельность".

 Вариант 7.

Структура данных: "Ведомость начисления стипендии".

Ф.И.О.

Коэфф. успеваемости

Начислено

Проф. взнос (1.5%)

К выдаче

Карпуть С.А.

1,4

= (вычисляется)

= (вычисляется)

= (вычисляется)

...

 

 

 

 

 Примечание: Начислено = 58000 * Коэфф. успеваемости

Обработка: Отсортировать данные в алфавитном порядке колонки "Ф.И.О".

Вариант 8.

Структура данных: "Декларация о доходах".

Сделка (вид услуги)

Доход, руб.

Расход, руб.

Прибыль, руб.

Налог, руб.

Ремонт ПЭВМ

28500

12400

= (вычисляется)

= (вычисляется)

...

 

 

 

 

Обработка: Вычислить суммарную прибыль, в зависимости от её размера вычисляется налог для каждой сделки. Если размер суммарной прибыли меньше 300 000 руб., то налог составляет 12% от прибыли. При размере суммарной прибыли от 300 000 до 500 000 руб. - 15%; более 500 000 руб. 20%. Вычислив налог для каждой сделки, определить суммарный.

Вариант 9.

Структура данных: "Ведомость начисления заработной платы". 

№ п/п

Ф.И.О.

Разряд

Коэф. ставки

Начислено, руб.

Налог (15%), руб.

К выдаче, руб.

1

Авдеева А.И.

12

1,2

= (вычисляется)

= (вычисляется)

= (вычисляется)

...

 

 

 

 

 

 

Примечание: Начислено = 58000 * Коэфф. ставки * Разряд

Обработка: Определить сотрудника с наибольшей суммой "К выдаче".

Вариант 10.

Структура данных: "Ведомость начислений и отчислений". 

Табельный номер

Зарплата, руб.

Премия, руб.

Начислено, руб.

Налог (12%), руб.

К выдаче, руб.

254

285000

54000

 = (вычисляется)

 = (вычисляется)

 = (вычисляется)

...

 

 

 

 

 

Обработка: Определить сотрудника с наименьшей суммой "К выдаче".

Вариант 11.

Структура данных: "Ведомость выработки изделий". 

Наименование

изделия

Норма времени на

1 изд., час

Расценка

на 1 изд., руб.

Кол-во

изделий

Общее

время, час

Сумма,

руб.

Микросхема МП-1201

0,8

4900

25

= (вычисляется)

= (вычисляется)

...

 

 

 

 

 

Обработка: Вычислить среднее время выроботки одного изделия по данным всей таблицы.


Вариант 12.

Структура данных: "Ведомость определения себестоимости продукции". 

Наименование

изделия

Себестоимость единицы изделия, руб.

Кол-во

изделий

Себестоимость партии изделий

плановая

фактическая

плановая

фактическая

Линза очковоя -1,5D

1100

1210

1200

= (вычисляется)

= (вычисляется)

...

 

 

 

 

 

Обработка: Отобразить данные на те изделие, у которых фактическая себестоимость меньше плановой.

Вариант 13.

Структура данных: "Сведения о сданной в ремонт аппаратуре". 

Наименование

Модель

Дата приемки

Состояние готовности

Телевизор

Горизонт-418D

12.03.2005

+

...

 

 

 

Обработка: Отобразить данные по заданному "Наименованию", ремонт которых ещё не выполнен.

Вариант 14.

Структура данных: "Список больных в больнице". 

Ф.И.О.

Номер палаты

Диагноз

Пол

Аверченко Д.М.

12

Грипп

жен

...

 

 

 

Обработка: Отсортировать данные сначала по полю "Пол", а затем по полю "Диагноз".

 

Вариант 15.

Структура данных: "Список продуктов на складе". 

Наименование

Расфасовка (да/нет)

Скоропортящийся (да/нет)

Молоко "Вкусное"

да

да

...

 

 

Обработка: Рассортировать продукты на четыре группы. Первая группа - это продукты, у которых оба признака имеют значение "да"; вторая -  "да", "нет"; третья - "нет", "да"; четвертая - "нет", "нет".

Вариант 16.

Структура данных: "Список вакантных рабочих мест на бирже труда". 

Предприятие

(организация)

Должность

(профессия)

Требуемое

образование

Требуемый

стаж, лет

Оклад, руб.

ОАО "Виктория"

Программист

Высшее

3

510000

...

 

 

 

 

Обработка: Отобразить данные по запросу клиента. В запросе клиент указывает следующие свои данные: "профессия", "образование", "имеющийся стаж", "минимально возможное значение оклада".

Вариант 17.

Структура данных: "Сведения об учащихся". 

Ф.И.О.

Адрес

Телефон

Средний балл за семестр

Коэффициент на стипендию

Ивашевич Ю.А.

ул. Советская, 23-12

2-13-45

6,82

= (вычисляется)

...

 

 

 

 

Примечание: Коэффициент на стипендию (k) зависит от значения среднего балла за семестр. Если средний балл < 5, то k=0 (стипендия не начисляется); от 5 до 6 - k=1; от 6 до 8 - k=1.2; от 8 до 9 - k=1.4; от 9 до 10 - k=1.8

Обработка: Определить количество учащихся, получающих повышенную стипендию (k>1).

 

Вариант 18.

Структура данных: "Результаты сдачи экзаменнационной сессии". 

Ф.И.О.

ПО ЭВМ

Схематехника

Пром. электроника

Средний балл

Ивашевич Ю.А.

9

5

6

= (вычисляется)

...

 

 

 

 

Обработка: Определить средний балл группы, отобразить данные на неуспевающих (у кого хотя бы одна оценка меньше 4).

 

 


Вариант 19.

Структура данных: "Результаты сдачи экзаменнационной сессии". 

Ф.И.О.

группа

Схематехника

Пром. электроника

Средний балл

Ивашевич Ю.А.

35ппа

5

6

= (вычисляется)

...

 

 

 

 

Обработка: Отобразить данные по группам в алфавитном порядке "Ф.И.О.".

Вариант 20.

Структура данных: "Список пользовотелей системы". 

Ф.И.О.

Логин

Пароль

Права доступа

Молевич М.И.

Mike

m12

Администратор

...

 

 

 

Обработка: При входе в программу запрашивается "Логин" и "Пароль". Если введенные данные не совпадают ни с одной записью в таблице, вход в программу не осуществляется. Если в программу осуществлен вход и права доступа "Администратор", то возможно редактирование данных в таблице, иначе только просмотр данных.

Вариант 21.

Структура данных: "Список деталей для обработки на станке". 

Код детали

Время наладки станка, мин

Время обработки, мин

Количество деталей

Д12-М

45

52

10

...

 

 

 

Обработка: Определить суммарное время в часах для обработки всех деталей. Учесть, что наладка станка выполняется один раз для целой партии деталей одного кода.


Вариант 22.

Структура данных: "Список автомобилей для продажи". 

Модель

Стоимость, $

Расход горючего, л/100 км

Комфортность

BMV-4

45200

7

Отличная

...

 

 

 

Обработка: Покупатель вводит запрос, в котором указывает требуемые ему параметры: модель, максимальную стоимость и максимальный расход горючего. Программа отображает данные из таблицы, удовлетворяющие запрос покупателя.

Вариант 23.

Структура данных: "Справочная автовокзала". 

Пункт назначения

Время отправления

Время прибытия

Стоимость, руб.

Гродно

12.15

14.45

9800

...

 

 

 

Обработка: Клиент вводит запрос, в котором указывает: требуемый ему пункт назначения и интервал возможного времени отправления (например, "Минск", с 10.00 до 11.30). Программа отображает данные из таблицы, удовлетворяющие запрос клиента.

Вариант 24.

Структура данных: "Справочная ж/д вокзала". 

Пункт назначения

Время отправления

Тип вагона

Наличие мест

Гродно

12.15

спальный

нет

...

 

 

 

Обработка: Клиент вводит запрос, в котором указывает: требуемый ему пункт назначения, интервал времени отправления и требуемый тип вагона (например, "Минск", с 10.00 до 11.30, "общий"). Программа отображает данные из таблицы, удовлетворяющие запрос клиента с наличием мест.