Прежде чем приступать к решению задачи необходимо осуществить постановку задачи.
Исходная информация (данные о судах) является упорядоченной совокупностью однотипных данных, следовательно необходимо представить в виде массивов, исходные данные вводятся с файла, предварительного созданного.
Для обработки массива исходных данных (как и для ввода) нужно применить циклический вычислительный процесс. Сама обработка связана как с простейшими вычислениями, например, подсчетом количества судов, средних значений вылова, запаса топлива и тары для судов, находящихся в заданных квадратах промыслового района, так и более сложными процедурами сортировки в соответствии с указанными в задании принципом.
Вывод результатов обработки предусматривает операции с записью на жесткий диск и с выводом на экран монитора текста, численных данных и графических объектов.
Для описания процедуры решения задачи на ЭВМ базовым понятием является понятие алгоритма. Алгоритм должен обладать свойством массовости, конечностью, детерминированностью. В нашем случае это означает, что алгоритм должен решать поставленную задачу при любом количестве судов и их данных в исходном файле и приводить к получению единственного для данного набора исходных данных результата за конечное число шагов. Опишем этот алгоритм словесно:
- Затребовать у пользователя имя файла, содержащего исходные данные по судам в районе промысла;
- Открыть файл с указанным именем для ввода;
- Вывести из файла количество судов N;
- Объявить использование 6 массивов, где каждый является столбцом (имя судна, тип и т.д.) со строками N для хранения исходных данных.
- Организовать ввод данных из файла в массив с учетом формата этого файла и типов данных;
- Последовательно отсортировать элементы этих массивов в указанном в задании порядке;
- Объявить вспомогательные массивы по числу групп с размерностью, определяемую числом судов определенного типа в каждой группе и записать в эти массивы данные судов;
- Затребовать у пользователя название и путь для выходного файла и открыть его для вывода;
- Последовательно вывести отсортированные данные для судов каждой группы с соответствующей строкой – заголовком;
- Построить на экране изображение промыслового района с координатной сеткой и отобразить на ней расположение судов;
- Вычислить для судов, находящихся в заданном диапазоне квадратов и заданного типа общие данные (количество судов и средние значения);
- Вывести на экран диапазон квадратов и рассчитанные общие данные;