Результаты тестового прогона программы




 

 

Задача 1

 

1. Печать меню задачи:

 

ЗАДАЧА 1.

МЕНЮ

 

1. Создать массив

2. Распечатать массив

3. Подсчет максимальных значений

4. Сортировка части массива

5. Расчет суммы элементов после первого нуля

6. Вернуться в главное меню

 

 

2. Создание и распечатка массива (выбор пунктов меню 1 и 2):

 

Создание массива:

 

Задайте размер массива <ввод 20>

 

 

Ввод значений в массив:

1. Вручную

2. Автоматически (случайные значения)

<ввод 2>

 

Введите максимум для случайных чисел: <ввод 10>

 

 

Массив создан.

 

 

Распечатка массива:

 

Массив a[20] содержит следующие значения:

6 7 9 0 6 3 8 8 0 2 9 9 1 7 6 4 9 7 1 4

 

 

3. Подсчет максимальных значений (пункт меню 3):

 

Максимальное значение a[2] = 9

значений, равных максимальному в массиве 4

 

 

 

4. Сортировка по возрастанию элементов массива, начиная и заканчивая индексами, заданными пользователем (пункт меню 4):

 

Массив до сортировки (пункт меню 2):

 

Массив a[20] содержит следующие значения:

6 7 9 0 6 3 8 8 0 2 9 9 1 7 6 4 9 7 1 4

 

 

Сортировка (пункт меню 4):

 

Сортировка начиная с индекса (число от 0 до 19) = <ввод 4>

и заканчивая индексом (число от 5 до 19) = <ввод 16>

 

Заданная часть массива отсортирована.

 

 

Массив после сортировки (пункт меню 2):

 

Массив a[20] содержит следующие значения:

6 7 9 0 0 1 2 3 4 6 6 7 8 8 9 9 9 7 1 4

 

 

5. Нахождение суммы элементов, расположенных после первого нуля (пункт меню 5):

 

Cумма после нулевого элемента a[3] равна 84

 

 

 

Вывод - все подпрограммы задачи 1 работают правильно.

 

Задача 2

 

1. Печать меню задачи:

 

ЗАДАЧА 2.

МЕНЮ

 

1. Создать двумерный массив

2. Распечатать массив

3. Подсчет строк без нулевых элементов

4. Поменять местами элементы столбцов

5. Вернуться в главное меню

 

 

2. Создание и распечатка массива (выбор пунктов меню 1 и 2):

 

Создание массива:

 

Задайте размер для двумерного массива

Строк в массиве: M = <ввод 7>

Столбцов в массиве: N = <ввод 9>

 

 

Ввод значений в массив:

1. Вручную

2. Автоматически (случайные значения)

<ввод 2>

 

Введите диапазон для случайных чисел (от 0 до r) r = <ввод 25>

 

 

Массив создан.

 

 

Распечатка массива:

 

Массив a[7][9] имеет вид:

12 13 22 3 9 7 19 20 23

22 2 10 8 8 2 24 3 19

2 22 10 10 1 6 6 20 15

16 15 1 8 4 17 10 4 11

6 24 20 23 23 5 15 11 18

12 9 22 5 18 23 24 0 6

12 17 17 1 5 11 11 4 0

 

 

3. Подсчет количества строк, не содержащих ни одного нулевого значения

(пункт меню 3):

 

В массиве найдено 5 строк без нулевых элементов

 

 

4. Перестановка элементов двух столбцов, номера которых указаны пользователем

(пункт меню 4):

 

Укажите номера столбцов k1 и k2 (от 1 до 9),

элементы которых нужно поменять местами:

k1 = <ввод 3>

k2 = <ввод 7>

 

 

Все сделано. Элементы переставлены.

 

 

Распечатка массива (пункт меню 2):

 

Массив a[7][9] имеет вид:

12 13 19 3 9 7 22 20 23

22 2 24 8 8 2 10 3 19

2 22 6 10 1 6 10 20 15

16 15 10 8 4 17 1 4 11

6 24 15 23 23 5 20 11 18

12 9 24 5 18 23 22 0 6

12 17 11 1 5 11 17 4 0

 

 

Вывод - все подпрограммы задачи 2 работают правильно.

 

 

Заключение.

Программа была разработана в рамках семестрового задания, и обладает рядом достоинств и недостатков. Представляемый программный продукт отвечает все требованиям, предъявленным заказчиком (см. пункт «Постановка задачи»).

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

Все задачи варианта объединены одним общим интерфейсом. Выполнение каждой задачи осуществляется как последовательный вызов всех необходимых подпрограмм, для этого был составлен уникальный алгоритм. Предусмотрена возможность повтора выполнения каждой задачи через пункты главного меню. Результаты печатаются с максимально возможными комментариями. Размерность массивов задается пользователем программного средства.

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

Программа была разработана в процессе изучения разработчиком курса «Программирование и основы алгоритмизации», и поэтому обладает также и рядом недостатков. Были использованы не всегда оптимальные по времени исполнения алгоритмы для решения некоторых подзадач. Некоторые участки кода могут быть, по мнению автора, реорганизованы в более читабельный вид или реализованы более оптимально. Но, не смотря на эти недочеты, данная программная разработка, по твердому убеждению автора, полностью удовлетворяет заданным требованиям, и даже в некоторых моментах выходит за рамки задания, что является ее неоспоримым достоинством.

6. Использованная литература

 

1. Б.И.Березин, С.Б.Березин "Начальный курс С и С++" -M.: ДИАЛОГ-МИФИ, 1996 г.

2. В.А.Скляров "Язык С++ и объектно-ориентированное программирование" - Мн.: Выш. шк., 1997 г.

3. С.Поттс, Т.С.Монк "BORLAND C++ в примерах" - Мн.: ООО "Попурри", 1996 г.



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2019-12-19 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: