Friday, January 10, 2020

ЛР12 Программирование (2.5.2 В22) - I

I. Внешняя спецификация
1. Условие задачи
Дана матрица, состоящая из n строк и n столбцов или одномерные массивы из n элементов каждый. Составить алгоритм и программу для получения и вывода указанных в условии результатов и самих массивов, если изменялись какие-либо их элементы. Алгоритм любой задачи может быть составлен с использованием единственного двукратного цикла.
  • Изменить часть матрицы, находящейся под главной диагональю, следующим образом: если элемент Aij больше элемента Aji, задать элементу Aij новое значение - величину полусуммы данных двух элементов. Найти также сумму элементов главной диагонали.

2. Состав данных
Тип
Имя
Смысл
Структура
Исходные данные
вещественный
A
исходные данные для обработки
двумерный массив
целый
N
количество строк и столбцов массива
простая переменная
Выходные данные
вещественный
АM
массив, изменненный в соответствии с условием задачи 
двумерный массив
вещественный
M
сумма элементов главной диагонали
простая переменная
Промежуточные данные
целый
i
текущее значение номера строки массива
простая переменная
целый
j
текущее значение номера столбца массива
простая переменная
символ
S
текущее значение элемента массива, сохранненное в виде символов
строка
символ
S1
текущая строка элементов матрицы для вывода на экран
строка
символ
S2
текущая строка элементов измененной матрицы для вывода на экран
строка

3. Форма ввода
1 3
<N>
1 5
<A11>
...
1 5
<A1N>
...
1 5
<AN1>
...
1 5
<ANN>

4. Выходная форма
1 5
<A11>

...
1 5
<A1N>
1 5
<AM11>

...
1 5
<AM1N>
...
1 5
<AN1>

...
1 5
<ANN>
1 5
<AMN1>

...
1 5
<AMNN>
1 5
<M>

5. / 6. Проработка фрагментов программы
Значение максимума соответствующих элементов двух массивов существует для любых вещественных чисел.
Проверка дополнительных условий требуется только при вводе некорректных данных пользователем.

7. Аномалии
Ошибки программы возможны при некорректном вводе данных пользователем.
Сообщение об ошибке выдается программой в случае невыполнения указанного условия.

8. Тесты
1) с положительным результатом

5
-0.5727 -0.8283 -0.0007 -0.197 -0.1217
-0.1095 0.7341 0.5564 0.6557 -0.1558
0.0566 -0.4795 -0.9174 -0.0483 -0.6357
-0.0346 0.0936 0.4842 -0.8324 0.9491
-0.0415 -0.6307 -0.9783 -0.2425 0.1731


2) с отрицательным результатом

3
-0.9406 -0.4352 -0.2238 
-0.5527 A


No comments:

Post a Comment