- •Национальный исследовательский университет «мэи» Типовой расчет «Процедуры, функции, модули» Вариант 22
- •3.Примеры.
- •4. Таблица данных
- •7. Аномалии
- •8. Функциональные тесты
- •9. Метод
- •10. Алгоритм
- •11. Программа на Delphi (с процедурами-заглушками, кроме процедур ввода и вывода).
- •Var {раздел описания переменных -----------------------------------------------------------------}
- •{Ввод m,n --------------------------------------------------------------------------------------------}
- •{Ввод и вывод матриц a и b --------------------------------------------------------------------}
- •2.Уточненная постановка задачи.
- •4. Таблица данных
- •10. Алгоритм
- •11. Программа на паскале. Процедура общего вида
- •Var I,j:byte;
- •2.Уточненная постановка задачи.
- •3.Примеры.
- •4. Таблица данных
- •10. Алгоритм
- •11. Программа на паскале. Процедура общего вида
- •Var I,j:byte;
- •2.Уточненная постановка задачи.
- •3.Примеры.
- •4. Таблица данных
- •10. Алгоритм
- •11. Программа на паскале. Процедура общего вида
- •Var I,j:byte;
7. Аномалии
№ |
Описание |
Условие возникновения |
Реакция |
1 |
Некорректный размер матриц |
(m<1) or (m>10) or (n<1) or (n>10) |
Обр 7 |
2 |
Есть некорректный элемент в матрицах |
iijj (|A[ii,jj]|>1000) or (|B[ii,jj]|>1000) |
Обр 8, либо Обр 9 |
8. Функциональные тесты
№ теста |
Входные данные |
Ожидаемый результат |
Смысл теста |
1 |
m=20 n=3
|
Обр 7 |
Аномальная ситуация 1 (m>10) |
2 |
m=4 n= -1
|
Обр 7 |
Аномальная ситуация 1 (n<1) |
3 |
m= -3 n=11
|
Обр 7 |
Аномальная ситуация 1 (m<1,n>10) |
4 |
m=2 n=3
A
=
B
=
|
Обр 8 |
Аномальная ситуация 2 (A13>1000) |
5 |
m=2 n=2
A
=
B
=
|
Обр 9 |
Аномальная ситуация 2 (В11< -1000) |
6 |
m=2 n=2
A
=
B
=
|
Обр 8 Обр 9 |
Аномальная ситуация 2 (А21< -1000, В12>1000) |
7 |
m=1 n=1
A
=
B
=
|
Матрица С: 8.0 |
Матрицы состоят из одного элемента. |
8 |
m=3 n=2
A
=
B
=
|
Матрица С: 4.6 -15.0 5.0
|
Случай, когда все элементы А больше соответствующих элементов В
|
9 |
m=3 n=3
A =
B = |
Обр 10 |
Случай, когда есть элементы А не большие соответствующих элементов В |
10 |
m=10 n=10
A
=
B
=
|
Матрица С:
19999.0 -19999.0 19999.0 -19999.0 19999.0 -19999.0 19999.0 -19999.0 19999.0 -19999.0
|
Максимальная нагрузка. (Максимальные m,n максимальные и минимальные значения матрицы С)
|
9. Метод
Отделим ввод-вывод от обработки данных (собственно решения задачи).
То есть, разделим нашу задачу на десять подзадач:
Подзадача А0.1. Ввести из файла (обр.1) и проверить размер матрицы (обр.7)
Подзадача А0.2.1 Ввести матрицу А из файла (обр.2.1).
Подзадача А0.2.2. Ввести матрицу В из файла (обр.2.2).
Подзадача А0.3.1. Вывести матрицу А (обр. 4.2)
Подзадача А0.3.2. Вывести матрицу В (обр.5.2)
Подзадача А0.4.1. Проверить значения элементов матрицы А (обр.8)
Подзадача А0.4.2. Проверить значения элементов матрицы В (обр.9)
Подзадача А0.5. Проверить, все ли эл-ты А больше соответстветствующих эл-ов В.
Подзадача А0.6. Создать матрицу С.
Подзадача А0.7. Вывести матрицу С (обр.6.2).
Сейчас, на нулевом уровне, опишем ввод-вывод простых переменных и массивов (А0.1, A0.2.1, A0.2.2, A.0.3.1, A.0.3.2, A.0.7) и логику решения задачи вцелом. Остальные четыре задачи оставим в виде абстракций.
Все подзадачи кроме первой выполним в виде процедур, расположенных в отдельном модуле.
