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

Московский Энергетический Институт (Технический университет)

Расчетное задание по информатике.

Студент: Демьяненко А.Н.

Группа: ТФ-09-08

Преподаватель: Архипов О.Г.

Москва 2009

I. Внешняя спецификация программы

  1. Постановка задачи:

Определить столбец прямоугольной матрицы с максимальной суммой элементов и, если его номер больше заданного, сформировать матрицу из столбцов исходной до найденного столбца, иначе сформировать массив из элементов заданного столбца.

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

Тип

Имя

Смысл

Структура

Диапазон

Точность

Поле

Исходные данные

Вещ

A

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

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

5 строк, 6 столбцов

|A(i,j)|≤100.0

0.1

6

Цел

N

Заданный номер

столбца

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

1≤N≤6

-

1

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

Вещ

В

Матрица, составленная

из столбцов

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

5 строк, 6 столбцов

|B(i,j)|≤100.0

0.1

6

Вещ

С

Массив, составленный

из элементов столбца м. А

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

5 элементов

|C(i,j)|≤100.0

0.1

6

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

Цел

i

Номер строки

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

-

-

-

Цел

j

Номер столбца

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

-

-

-

Вещ

SU

Суммы элементов

столбцов матрицы А

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

6 элементов

-

-

-

  1. Форма ввода

1 6 36 80

<A(1,1)>

<A(1,6)>

…………….

<A(5,1)>

<A(5,6)>

<N>

1

5

6

4. Выходная форма

1 80

Обр1 35 Результаты

10 B(1,1)…B(1,6)

Обр2 : :

B(5,1)…B(5,6)

Обр3 10 C(1)…C(5)

5/6.

Для решения применяется метод пошагового проектирования.

Задача разбита на 4 подзадачи:

  • Сформировать массив из сумм элементов в столбцах заданной матрицы.

  • Определить номер максимального элемента заданного одномерного массива

  • Сформировать матрицу из столбцов заданной матрицы до заданного столбца

  • Сформировать массив из элементов заданного столбца заданной матрицы

Для реализации представленных ниже вспомогательных алгоритмов на Turbo Pascal 7.0 используются процедуры общего назначения (для 1, 3, 4 подзадачи) и функция (для 2-ой подзадачи).

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

8. Тесты

Назначение

Контрольные значения исходных данных

Контрольные значения выходных данных

1

Получение положительного результата

0.0 -12.2 -13.3 14.4 15.5 99.0

16.6 17.7 18.8 19.9 -20.0 -100.0

1.0 1.0 1.0 1.0 1.0 1.0

0.0 0.0 0.0 0.0 0.0 0.0

2.0 2.0 2.0 2.0 2.0 2.0

6

Результаты

{C}: 99.0 -100.0 1.0 0.0 2.0

2

Получение положительного результата

0.0 -12.2 -13.3 14.4 15.5 99.0

16.6 17.7 18.8 19.9 -20.0 -100.0

1.0 1.0 1.0 1.0 1.0 1.0

0.0 0.0 0.0 0.0 0.0 0.0

2.0 2.0 2.0 2.0 2.0 2.0

3

Результаты

{B}:

0.0 -12.2 -13.3 14.4

16.6 17.7 18.8 19.9

1.0 1.0 1.0 1.0

0.0 0.0 0.0 0.0

2.0 2.0 2.0 2.0

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

Начало

Ввод: {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

Конец

III. Сегмент 1.1

Внутренняя спецификация

  1. Подзадача:

Сформировать массив из сумм элементов в столбцах заданной матрицы.

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

Тип

Имя

Смысл

Структура

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

Вещ

A

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

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

5 строк, 6 столбцов

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

Вещ

S1

Матрица из сумм элементов в столбцах {A}

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

6 элементов

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

Цел

i

Номер строки

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

Цел

j

Номер столбца

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

Вещ

S1

Матрица из сумм элементов в столбцах {A}

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

6 элементов

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

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

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

Сегмент 1.2

Внутренняя спецификация

1. Подзадача:

Определить номер максимального элемента заданного одномерного массива

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

Тип

Имя

Смысл

Структура

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

Вещ

S2

Заданный массив

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

Цел

D

Количество элементов заданного массива

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

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

Цел

MST

Номер максимального

элемента заданного массива

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

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

Цел

i

Номер очередного элемента массива

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

Вещ

M

Очередной максимальный элемент

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


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

Имя функции – MST.

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

Сегмент 1.3

Внутренняя спецификация

  1. Подзадача:

Сформировать матрицу из столбцов заданной матрицы до заданного столбца

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

Тип

Имя

Смысл

Структура

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

Вещ

A

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

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

5 строк, 6 столбцов

Цел

N1

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

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

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

Вещ

B1

Полученная матрица

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

5 строк, 6 столбцов

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

Цел

j

Номер столбца

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

Цел

i

Номер строки

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

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

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

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

Сегмент 1.4

Внутренняя спецификация

1. Подзадача:

Сформировать массив из элементов заданного столбца заданной матрицы.