Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Курсая

.docx
Скачиваний:
5
Добавлен:
09.02.2015
Размер:
653.17 Кб
Скачать

Блог-схема алгоритма функции Sort:

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

B –указатель на массив чисел

size количество элементов в массиве информации

Рабочие переменные:

I – Индекс первого числа, в левой паре чисел

J – Индекс первого числа, в правой паре чисел

T1, T2 – временная переменные для копируемой пары элементов

Результат:

B – отсортированный массив информации

1

2

3

4

5

6

8

9

7

10

11

Описание Функции:

Прототип : Void Sort(*B,size);

Функция принимает два аргумента указатель на массив целочисленных элементов и размер этого массива. Сортирует массив из целочисленных элементов в убывающем порядке. Сортировка происходит следующим образом: если разность двух рядом стоящих элементов меньше чем разность двух других элементов то эти четыре элемента попарно меняются местами. Например если при входе разность первого и второго элементов меньше разности третьего и четвертого то меняются местами значения первого и третьего элементов и второго и четвертого. Функция ничего не возвращает.

Таблица проверки алгоритма функции Sort:

Блока

I

J

A[I+1]

A[I]

T1

T2

A[J+1]

A[J]

I < size-3

A[I+1] - A[I]

>

A[J+1] - A[J]

J < size-1

size = 7

1

0

2

Да

3

2

4

Да

5

Да

6

8

4

7

3

1

8

8

4

9

4

4

Да

5

Нет

9

6

4

Нет

10

2

2

Да

3

4

4

Да

5

Нет

9

6

4

Нет

10

4

2

Нет

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

f_ar –указатель на целочисленный массив информации о строке.

col количество элементов в массиве информации

Text_or- указатель на исходную строку

Рабочие переменные:

K – Индекс копируемого элемента в исходной строке

I – Индекс элемента в массиве информации

str_sizeиндекс элемента в результирующей строке

Text_n – результирующая строка.

Результат:

Text_or- указатель на преобразованную строку.

Функция Copy.

Блок-схема функции Copy.

1

2

3

4

5

6

7

8

10

Описание функции Copy.

Прототип:

Функция принимает три аргумента: указатель на целочисленный массив( информация о строке), целочисленная переменная(количество элементов в массиве информации), указатель на строку(исходная строка текста).Функция копирует слова из исходной строки во временную (Text_n), кроме последнего элемента ,затем присваивает адрес временной строки указателю исходной строки.

Таблица проверки алгоритма функции Copy.

Блока

I

K

Col

str_size

Text_n[str_size]

I < col -1

K <= f_ar[I+1]

1

Text_or = “ab.abс.”;f_ar = “3 6 0 2 0”;col = 5;

2

0

0

3

Да

4

3

5

Да

6

a

7

4

1

5

Да

6

b

7

5

2

5

Да

6

с

7

6

3

5

Да

6

.

7

7

4

5

Нет

8

2

3

Да

4

0

5

Да

6

a

7

1

5

5

Да

6

b

7

2

6

5

Да

6

.

7

3

7

5

Нет

8

4

3

Нет

Функция F_text.

Блок-схема функции F_text.

1

2

3

4

5

6

7

8

9

Описание функции F_text.

Прототип:

Функция F_text принимает указатель на целочисленную переменную. Возвращает указатель на массив строк, при этом значение по адресу целочисленной переменной становится равной количеству строк в массиве строк. Для считывания каждой строки используется функция create_str. Если длина созданной строки равна нулю то она не добавляется в массив строк. Функция прекращает свою работу когда введенная строка равна максимальной по длине из ранее введенных строк.

Таблица проверки блок схемы функции F_text

Блока

I

*Dlina

*Rows

Max

*Dlina != Max

*Dlina > Max

Dlina != 0

1

2

0

0

3

3

4

Да

5

Да

6

3

7

Да

8

1

3

0

4

Да

5

Нет

7

Нет

3

3

4

Нет

9

Возврат TEXT