Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
типовик Саши.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
237.57 Кб
Скачать

2. Состав данных:

Тип

Имя

Смысл

Структура

Входные данные

Вещ

A

Заданная матрица

Массив, двумерный

Цел

n

Количество строк

Простая переменная

Цел

m

Количество столбцов

Простая переменная

Цел

N2

Заданный номер столбца

Простая переменная

Выходные данные

Вещ

С1

Искомый массив

Массив, одномерный

Промежуточные данные

Цел

i

Номер строки

Простая переменная

3. Данная подзадача реализована в Turbo Pascal 7.0 как процедура общего назначения, поскольку ее выходной параметр – массив.

Имя процедуры – SOZMAS.

При реализации на Turbo Pascal 7.0 матрица A имеет конечное количество элементов.

4. Аномалии не анализируются.

II. Алгоритмы

2.1 Основной алгоритм программы:

Начало

Ввод: {A},N

Вывод по Обр1

Сегмент 1.1

Определить SU

по проц. SUMST({A})

Сегмент 1.2

Определить MST

по проц. MST({SU},6)

Да Нет

MST>N

Сегмент 1.3 Сегмент 1.4

Определить {B} по проц. Определить {C} по проц.

SOZMATR({A},MST) SOZMAS({A},N)

Вывод: {B} по Обр2 Вывод: {C} по Обр3

Конец

2.2 Вспомогательные алгоритмы:

Сегмент 1.1.

Начало

Задать: {A},n,m

J:=1

S1(j):=0

i:=1

S1(j):=S1(j)+A(i,j)

i:=i+1

Нет

i>n

Да

j:=j+1

Нет

j>m

Да

Передать: {S1}

Конец

Сегмент 1.2

Начало

Задать: {S2}, D

M:=S2(1)

MST:=1

i:=1

Да Нет

S2(i)≥M

M:=S2(i)

MST:=i

i:=i+1

Нет

i>D

Передать: MST

Конец

Сегмент 1.3

Начало

Задать: {A}, N1,n,m

j:=1

i:=1

B1(i,j):=A(i,j)

i:=i+1

i>n Нет

Да

j:=j+1

j>N1 Нет

Да

Передать: {B1}

Конец

Сегмент 1.4

Начало

Задать: {A}, N2,n,m

i:=1

C1(i):=A(i,N2)

i:=i+1

Нет

i>n

Да

Передать: {C1}

Конец