Описание проектных решений
Функциональная структура задачи, программы
На рис. 2.1 представлена схема иерархии процедур задачи «Получение сведений о результативности футболистов», полученная в результате её декомпозиции.
На рис. 2.2 представлена функциональная структура программы решения задачи, полученная на основе схемы иерархии её процедур.
Рис. 2.1 Схема иерархии процедур задачи
Определение общего количества забитых голов по футболистам
calculation
| Получение кодов футболистов
| Сортировка по убыванию количества забитых голов
sort
| Сбор сведений о выбранных футболистах
| Получение сведений о результативности футболиста
Resultat_futbolistov
| Выбор названий команд
Komsearch
| Выбор фамилии и инициалов
Namesearch
| Выбор кодов в соответствии с запросом
Search
| Чтение запроса, проверка на корректность запроса
| Преобразование запроса в формат целого числа
| Ввод запроса (минимальное количество голов)
input
| Вывод массива с результатами
| «Получение сведений о результативности футболистов»
> Рис. 2.2 Функциональная структура программы.
Помимо основной программы с именем «Resultat_futbolistov», программа должна содержать следующие подпрограммы:
1) Подпрограмму input (quanp: st; var intquanp: integer; var f: boolean), которая обеспечивает ввод запроса (минимальное количество голов). В случае некорректного запроса его ввод может повторяться еще четыре раз;
2) Подпрограмму calculation (x: kol_gol; var y: arr1; var c: integer), которая обеспечивает подсчёт общего количества забитых голов для каждого футболиста по итогам всех матчей;
3) Подпрограмму search (intquanp, c: integer; y: arr1; var z_tablica: arr; var u: integer; var p: boolean), которая обеспечивает получение кодов футболистов забивших требуемое количество голов;
4) Подпрограмму NameSearch (x: name; u: integer; var z_tablica: arr), которая обеспечивает получение фамилий и инициалов выбранных футболистов;
5) Подпрограмму KomSearch (x: komands; u: integer; var z_tablica: arr), которая обеспечивает получение названий команд, в которых играют выбранные футболисты;
6) Подпрограмму sort (var z_tablica: arr; u: integer), которая обеспечивает сортировку результирующего массива по убыванию количества забитых голов;
7) Подпрограмму output (z_tablica: arr; u: integer), которая обеспечивает вывод результирующего массива в виде таблицы.
1.1
1.2
2.1.
|