Национальный исследовательский университет московский энергетический институт
Типовой расчет по информатике.
(ИТАЭ, 2 семестр)
9 Вариант
Группа: ТФ-13-11
Студент: Кропачев В.А.
Преподаватель: Архипов О.Г.
МОСКВА 2012
1. Спецификация
I. Внешняя спецификация задачи.
1). Задача: Переставить в каждом столбце прямоугольной матрицы все отрицательные элементы в конец столбца. Распечатать часть полученной матрицы, состоящую из n первых строк, не имеющих отрицательных элементов.
2). Состав данных:
Тип |
Имя |
Смысл |
Структура |
Диапазон |
Точность |
Поле |
Исходные данные |
||||||
Вещ. |
А |
Исходная матрица |
Массив двумерный, m-строк, n-столбцов |
|A|<=100 |
0.01 |
7 |
Цел. |
m |
Количество строк в матрице {A} |
Простая переменная |
m<100 |
1 |
2 |
Цел. |
n |
Количество столбцов в матрице {A} |
Простая переменная |
n<100 |
1 |
2 |
Выходные данные |
||||||
Вещ.
|
B
|
Измененная матрица, где все отрицательные элементы находятся в конце столбцов |
Массив двумерный, m-строк, n-столбцов
|
|B|<=100
|
0.01
|
7 |
Промежуточные данные |
||||||
Цел.
|
KP
|
Количество положительных элементов в каждом столбце измененной матрицы |
Массив одномерный, n-элементов
|
|
||
Цел. |
I |
№-строки |
Простая переменная |
|||
Цел. |
J |
№-столбца |
Простая переменная |
|||
Цел
|
T
|
Количество строк не содержащих отрицательных элементов |
Простая переменная
|
3). Форма ввода
m,n
<А(1,1)> ……<А(1,n)>
. .
<А(m,1)>…….<А(m,n)>
4). Форма вывода
Обр 1 : _35_ Результаты |
Обр 2: _25_ Нет строк, не имеющих отрицательных элементов. |
_5_ <B(1,1)> ……<B(1,n)> Обр 3 : . . <B(T,1)>…….<B(T,n)> |
5/6). Разработка алгоритма с применением метода нисходящего проектирования (разбиение задачи на подзадачи).
7). Аномалии отсутствуют.
8). Тестовые данные.
№ |
Назначение |
контроль данных |
|
Исходные данные |
выходные данные |
||
1
|
Получение положительного результата
|
6,5 10 -0,3 1.4 56 -3.3 -0.5 35 -90 2.5 49 2 -45 5.2 44 -5.2 2 -23 22 41 23 23 42 0.34 4.2 32 -3 53 -32 5 4.2 |
Результаты
10 35 1.4 56 49 2 42 5.2 2.5 23 2 53 22 44 32
|
2
|
Получение отрицательного результата
|
6,5 1 -5 1.4 56 -0.8 -0.5 -35 -90 2.5 49 2 -45 5.2 44 -5.2
|
Нет строк, не имеющих отрицательных элементов.
|
II. Основной алгоритм.
1
Начало
2
Ввод: m,n,{A}
3
Опр. B по проц.
IZM(A,m,n)
4
Опр. KP по проц.
POL(B,m,n)
5
Опр. T по проц.
MINIM(KP,n)
6
T=0
ДА НЕТ
7 8
Вывод: По обр. 2
Вывод: {B} по обр.3 3}
9
Конец
Подзадача 1.
I. Внутренняя спецификация подзадачи:
1). Подзадача. Переставить в каждом столбце прямоугольной матрицы все отрицательные элементы в конец столбца.