
И8-12-1 / Вариант 14 - 24
.doc
ДЗ № 2 (Вариант № 14 – 24)
(автор концепции студент группы И8-11-3 Титов А.)
Основываясь на результатах проведенных Гран-При, написать программу, которая формирует сводные списки лидеров в личном зачете и команд в кубке конструкторов в классе гонок Формулы-1.
Постановка задачи
-
В книгах с названием Гран-При-{номер гонки}-{Страна}.xls содержатся данные о гонках, которые были проведены в текущем сезоне (например, Гран-При-1-Австралия.xls). Книги находятся в папке C:\Результаты.
-
Каждая книги содержит один лист, на котором расположена база данных (БД) Excel следующей структуры:
Результаты Гран-При Австралии
Поз |
Старт |
Пилот |
Команда |
Время/Отставание |
Очки |
1 |
7 |
Кими Райкконен |
Lotus-Renault |
1:30:03.225 |
25 |
2 |
3 |
Фернандо Алонсо |
Ferrari |
+12.4 сек |
18 |
3 |
1 |
Себастьян Феттель |
Red Bull Racing-Renault |
+22.3 сек |
15 |
4 |
4 |
Фелипе Масса |
Ferrari |
+33.5 сек |
12 |
5 |
10 |
Льюис Хэмильтон |
Mercedes |
+45.5 сек |
10 |
6 |
2 |
Марк Уэббер |
Red Bull Racing-Renault |
+46.8 сек |
8 |
7 |
15 |
Адриан Сутиль |
Force India-Mercedes |
+65.0 сек |
6 |
8 |
14 |
Пол ди Реста |
Force India-Mercedes |
+68.4 сек |
4 |
9 |
5 |
Дженсон Баттон |
McLaren-Mercedes |
+81.6 сек |
2 |
10 |
8 |
Ромен Грожан |
Lotus-Renault |
+82.7 сек |
1 |
11 |
6 |
Серхио Перес |
McLaren-Mercedes |
+83.3 сек |
0 |
12 |
18 |
Жан-Эрик Вернь |
STR-Ferrari |
+83.8 сек |
0 |
13 |
12 |
Эстебан Гутьеррез |
Sauber-Ferrari |
+1 круг |
0 |
14 |
17 |
Вальттери Боттас |
Williams-Renault |
+1 круг |
0 |
15 |
22 |
Жюль Бьянки |
Marussia-Cosworth |
+1 круг |
0 |
16 |
20 |
Шарль Пик |
Caterham-Renault |
+2 круга |
0 |
17 |
23 |
Макс Чилтон |
Marussia-Cosworth |
+2 круга |
0 |
18 |
21 |
Гидо ван дер Гарде |
Caterham-Renault |
+2 круга |
0 |
Сход |
19 |
Даниэль Риккьярдо |
STR-Ferrari |
Сход |
0 |
Сход |
9 |
Нико Росберг |
Mercedes |
Сход |
0 |
Сход |
16 |
Пастор Мальдонадо |
Williams-Renault |
Сход |
0 |
Сход |
11 |
Нико Хюлкенберг |
Sauber-Ferrari |
Сход |
0 |
-
Требуется (с помощью средств VBA) разработать программное обеспечение, позволяющее получить либо тройки лидеров в личном зачете пилотов в проведенных Гран-При:
Личный зачет
Гран-При-{номер гонки}-{Страна1}
Поз |
Пилот |
Команда |
Очки |
1 |
Себастьян Феттель |
Red Bull Racing-Renault |
89 |
2 |
Кими Райкконен |
Lotus-Renault |
85 |
3 |
Фернандо Алонсо |
Ferrari |
72 |
Гран-При-{номер гонки}-{Страна2}
1 |
… |
… |
… |
2 |
… |
… |
… |
3 |
… |
… |
… |
…
либо результаты кубка конструкторов (подсказка: у каждой команды два пилота, следовательно, значение в столбце Очки является суммой очков, заработанных ими во время гонки):
Кубок конструкторов
Гран-При-{номер гонки}-{Страна1}
Поз |
Команда |
Очки |
1 |
Red Bull Racing-Renault |
131 |
2 |
Ferrari |
117 |
3 |
Lotus-Renault |
111 |
Гран-При-{номер гонки}-{Страна2}
Поз |
Команда |
Очки |
1 |
… |
… |
2 |
… |
… |
3 |
… |
… |
…
-
Полученную таблицу сохранить в файле Команды-призеры.xls или Пилоты-призеры.xls в папке C:\Текущие итоги (в случае отсутствия папки – создать ее).
-
Запрос на создание искомого файла реализовать с помощью формы:
Рис. 1
-
С помощью альтернативных кнопок пользователь выбирает тип нужных ему результатов. По умолчанию включить кнопку Личный зачет.
-
В поле со списком Выберите последний Гран-При пользователь выбирает последний проведенный Гран-При, который определяет, до какого этапа следует выводить результаты в итоговой таблице (например, предположим, мы выбрали пункт 3 - Китай, следовательно, следует вывести призеров первых трех гонок). Элементы списка – это строки «гонка + страна», извлеченные из названий файлов в папке C:\Результаты (например, из названия файла Гран-При-1-Австралия.xls в список попадет элемент 1-Австралия).
-
Кнопку ОК связать с клавишей [Enter], кнопку Отмена – с клавишей [Escape].
-
Программа должна находиться в файле Программа Текущие итоги.xls
-
Предусмотреть обработку событий, связанных с различными состояниями исходного и конечного файлов: закрыты, открыты, не существуют. При наличии конечного файла выдать запрос на его замену.
ДЗ № 3
Модифицировать программу Программа Текущие итоги.xls следующим образом:
-
При открытии файла с программой в стандартном интерфейсе Excel должна появляться панель инструментов с кнопками О программе и Текущие итоги. При щелчке по кнопке О программе на экране должна появляться форма с данными о разработчике программы. Вторая кнопка предназначена для вызова формы, реализованной в ДЗ №2.
-
При закрытии файла с программой привнесенный пользовательский интерфейс должен удаляться.
Требования к оформлению ДЗ 2 и 3
Отчет по ДЗ должен быть сдан в электронном и печатном виде и включать в себя:
-
Титульный лист (пустые строки недопустимы! Вспоминаем интервалы! ).
-
Оглавление.
-
Постановку задачи (задание, которое Вы получили от меня).
-
Листинг программы, напечатанный в редакторе VBA (или в редакторе Word: шрифт – Courier, 10 пунктов).
-
План тестирования программы.
-
Придуманное Вами задание.
-
Главы должны быть пронумерованы. Стиль заголовков – Заголовок 1. Если в главах имеются параграфы, то стиль заголовка должен соответствовать их уровню.
-
Электронная версия отчета должна быть оформлена согласно стандартам и принципам, изложенным в курсе «Офисные программные пакеты».
При невыполнении этих требований домашняя работа считается невыполненной и к защите не принимается!