При разработке алгоритмов решения для каждой задачи необходимо:
- провести анализ входных и выходных данных и разработать заголовок подпрограммы (название и список формальных параметров с указанием их имен и типов), выполняющего расчет;
- составить алгоритм решения задачи. При составлении алгоритма необходимо предусмотреть все ошибочные ситуации и составить их описание.
При разработке алгоритмов необходимо соблюдать единообразие передачи данных, то есть все подпрограммы должны принимать матрицу в едином формате.
Расчетный модуль разрабатывается на языке программирования
«Паскаль», а ИСР Delphi. В состав модуля необходимо включить:
- описание класса данных для хранения двумерного массива и дополнительных типов - результатов расчетов .;
- методы для чтения из файла и сохранение в файл описанного класса. Перед разработкой этих методов необходимо сформировать формат файла для хранения матрицы. Формат файла должен обеспечивать контроль целостности данных и может быть текстовым или бинарным;
- процедуры или функции, которые выполняют расчет в соответствии с задачами. Названия и параметры этих процедур такие же, как и в составленных алгоритмах. При возникновении сбойных ситуаций в процедурах необходимо генерировать программные исключения. Описание классов исключения для всех сбойных ситуаций, возможных при расчете, также необходимо включить в модуль.
При разработке расчетного модуля необходимо пользоваться только стандартными типами данных и средствами их обработки.
Разработка проводится в ИСР «Delphi 6». По своей функциональности программа должна обеспечивать выполнение следующих действий:
- хранение одного экземпляра данных матрицы;
- создание нового набора данных и ввода размеров и значений элементов двумерного массива, описанного классом;
- редактирование текущих значений матрицы. Для этого следует использовать те же средства, что и для введения;
- выполнение обработки массива по задачам;
- сохранение в текстовый файл результатов обработки и, если пользователю необходимо, исходных данных в табличной форме.
Интерфейс для Windows должен соответствовать требованиям к документных приложений. Главное окно программы должно включать в себя: главное меню со всеми командами, реализованными в приложении, и строка состояния. При работе с именами файлов необходимо использовать только стандартные диалоги открытия и сохранения. В главном меню программы должен быть пункт «О программе», что вызывает окно с информацией о разработчике.
Ввода и редактирования значений исходных данных нужно проводить в отдельном окне. Окно должно быть модальным.
Задания паскаль:
1 Найти наименьший, отрицательный, элемент матрицы BH{m, n} и определить его индексы.
2 Определить количество положительных, элементов матрицы BU{m, n}, удовлетворяющих условию bui,j < bu1,n-1.
3 Найти среднее арифметическое положительных элементов главной диагонали матрицы BA{n, n}, удовлетворяющих условию bai,j<│ban-2,n-2│.
4 Переписать наименьшие, отрицательные, элементы каждой строки матрицы DU{m, n} в одномерный массив F.
5 Определить, по каждой строке, количество элементов матрицы EO{m, n}, удовлетворяющих условию eoi,j < eom,n и переписать полученные величины в одномерный массив G.
6 Определить индексы наименьшего, положительного, элемента матрицы CB{m, n} и заменить найденный элемент значением корня квадратного из его величины.
7 Найти, по каждому столбцу, сумму положительных элементов матрицы DG{m, n}.
8 Найти среднее арифметическое наименьших, отрицательных, элементов каждой строки матрицы FT{m, m} находящихся под главной диагональю.
9 Найти наибольшие, отрицательные, элементы каждого столбца матрицы FJ{m, m} находящиеся под главной диагональю и переписать их в одномерный массив QQ.
10 Найти по каждому столбцу матрицы GF{m,n} максимальный и минимальный элементы и поменять их местами.