Читайте также:
|
|
Введение
Данный документ описывает единый стандарт организации и оформления модулей и документации IT продукта - "Библиотека Сортировки".
Список терминов
a. Последовательность - набор элементов, которые нужно упорядочить (отсортировать).
b. Размер последовательности (далее N) - количество элементов последовательности.
c. Массив элементов последовательности (далее A)- структура данных, хранящий в себе элементы последовательности.
При оформлении данного документа использовались следующие специальные обозначения:
· Строка, начинающаяся с символов //, считается комментарием.
Требования к платформе / языку программирования
Реализация программной части продукта осуществляется на языке высокого уровня -С++ стандарта С++11 (ISO/IEC 14882:2011).
Требования к представлению данных
1. Размер последовательности представляет собой целое положительное число большее нуля.
2. Типом данных для Размера последовательности был выбран int (см. Приложение типы данных).
3. Значение Размера последовательности должно лежать в диапазоне [1,127], что обусловлено требованием к представлению Размера. Выбор диапазона значений произведен из соображений упрощения тестирования программного продукта.
4. Элемент последовательности представляет собой целое число.
5. Типом данных для Элемента последовательности был выбран int.
6. Значение Элемента последовательности должно лежать в диапазоне [-128,127]. Выбор диапазона значений произведен из соображений упрощения тестирования программного продукта.
Требования к входной и выходной информации
Ниже перечислены требования к входной и выходной информации для программы сортировки при вводе информации с клавиатуры.
1. Входная информация может вводится в программу с помощью клавиатуры или стандартной функции операционной системы Копировать - Вставить.
2. Входной информацией в данном случае являются: Размер и Последовательность.
3. Допустимыми символами при вводе являются числовые и специальные символы.
4. Числовые символы:'0','1','2','3','4','5','6','7','8','9'
5. Специальные символы: '-','+'
6. При запуске программы на экран выводится приглашение ввода Размера - сообщение СВ1 (смотри Таблица стандартных сообщений).
7. Допустимым вводом Размера считается последовательность из нескольких числовых символов. Например:
15 //допустимый ввод
126 //допустимый ввод
8. В случае если введенный Размер содержит некоторое количество символов "0", стоящих в начале, то данные символы игнорируются, а в качестве значения Размера принимаются оставшиеся символы. Например:
00000000012 //допустимый ввод; задан Размер, равный 12
067 //допустимый ввод; задан Размер, равный 67
9. В случае если ввод Размера отличен от требований из пункта 7, то на экран выводится сообщение ДС1 о недопустимости ввода с просьбой повторить. Например:
1q2a2 // недопустимый ввод
Размер последовательности должен быть целым числом и лежать в диапазоне от 1 до 127. Пожалуйста, повторите ввод!
qra //недопустимый ввод
Размер последовательности должен быть целым числом и лежать в диапазоне от 1 до 127. Пожалуйста, повторите ввод!
gfd5dp //недопустимый ввод
Размер последовательности должен быть целым числом и лежать в диапазоне от 1 до 127. Пожалуйста, повторите ввод!
6 4 //недопустимый ввод (там пробел)
Размер последовательности должен быть целым числом и лежать в диапазоне от 1 до 127. Пожалуйста, повторите ввод!
10. В случае если пользователь произвел ввод Размера неудачно 3 раза подряд, программа завершает свою работу с сообщением ДС5.
11. В случае допустимого ввода Размера программа проверяет введенное значение на предмет соответствия условию 3 раздела Требований к представлению данных.
12. В случае несоответствия введенного значения Размера на экран выводится сообщение ДС1 о недопустимости ввода с просьбой повторить. Например:
1252 //несоответствие условию 3 раздела Требования к представлению данных
Размер последовательности должен быть целым числом и лежать в диапазоне от 1 до 127. Пожалуйста, повторите ввод!
128 //несоответствие условию 3 раздела Требования к представлению данных
Размер последовательности должен быть целым числом и лежать в диапазоне от 1 до 127. Пожалуйста, повторите ввод!
-12 //несоответствие условию 3 раздела Требования к представлению данных
Размер последовательности должен быть целым числом и лежать в диапазоне от 1 до 127. Пожалуйста, повторите ввод!
0 //несоответствие условию 3 раздела Требования к представлению данных
Размер последовательности должен быть целым числом и лежать в диапазоне от 1 до 127. Пожалуйста, повторите ввод!
13. В случае, если пользователь вводит значение Размера, не соответствующее требованиям 3 раза подряд, программа завершает свою работу с сообщением ДС5.
14. В случае успешного ввода значения Размера на экран выводится приглашение ввода Элементов последовательности - сообщение СВ2.
15. Элементы последовательности вводятся с клавиатуры. Ввод элемента завершается нажатием клавиши Enter.
16. Допустимым вводом Элемента считается последовательность из одного специального и нескольких числовых символов. Например:
+15 //допустимый ввод
-126 //допустимый ввод
17. В случае если введенный Элемент содержит некоторое количество символов "0", стоящих в начале, то данные символы игнорируются, а в качестве значения Элемента принимаются оставшиеся символы. Например:
00000000012 //допустимый ввод; задан Элемента, равный 12
067 //допустимый ввод; задан Элемента, равный 67
18. В случае, если ввод Элемента последовательности отличен от требуемого, то на экран будет выведено сообщение ДС2 о неправильном вводе и просьбе повторить его. Например:
1q2a2 // недопустимый ввод
Введенный элемент должен быть целым числом и лежать в диапазоне от -128 до 127. Пожалуйста, повторите ввод
qra // недопустимый ввод
Введенный элемент должен быть целым числом и лежать в диапазоне от -128 до 127. Пожалуйста, повторите ввод!
-12--12 //недопустимый ввод
Введенный элемент должен быть целым числом и лежать в диапазоне от -128 до 127. Пожалуйста, повторите ввод!
6 4 //недопустимый ввод
Введённый элемент должен быть целым числом и лежать в диапазоне от -128 до 127. Пожалуйста, повторите ввод!
19. В случае, если пользователь произвел ввод Элемента неудачно 3 раза подряд, программа завершает свою работу с сообщением ДС5.
20. В случае допустимого ввода Элемента программа проверяет введенное значение на предмет соответствия условию 6 раздела Требований к представлению данных.
21. В случае не соответствия требованиям к представлению данных введенного значения Элемента на экран выводится сообщение ДС2 о недопустимости ввода с просьбой повторить. Например:
1252 //несоответствие условию 6 раздела Требования к представлению данных
Введенный элемент должен быть целым числом и лежать в диапазоне от -128 до 127. Пожалуйста, повторите ввод!
-129 //несоответствие условию 6 раздела Требования к представлению данных
Введенный элемент должен быть целым числом и лежать в диапазоне от -128 до 127. Пожалуйста, повторите ввод!
22. В случае, если пользователь вводит значение Элемента, не соответствующее требованиям 3 раза подряд, программа завершает свою работу с сообщением ДС5.
23. В случае успешного ввода Элемента информация о введенных элементах последовательности обновится. Таким образом, введенная последовательность всегда отображается последовательно, с пробелами в качестве разделителей. Например:
Было
Вы ввели количество элементов 3
Вы ввели следующую последовательность 2
Введите элемент последовательности(число в диапазоне -128..127):
Если мы введем число -6, то получим
Вы ввели количество элементов 3
Вы ввели следующую последовательность 2 -6
Введите элемент последовательности(число в диапазоне -128..127):
24. В случае успешного ввода Элементов последовательности программа выполнит проверку на упорядоченность. Если введенная последовательность уже упорядочена, то на экран будет выведено сообщение ДС3 и последовательность.
25. В случае успешного ввода Элементов, при условии, что Размер равен 1 на экран будет выведено сообщение ДС4 и последовательность.
26. После процедуры ввода Размера и Элементов и их проверки, программа выведет сообщения СВ4 и СВ5 с соответствующими введенными значениями Размера и Элементов, а затем выполнит сортировку последовательности. По окончании сортировки на экран выведется сообщение СВ3 и отсортированная последовательность. Например:
Вы ввели количество элементов: 3
Вы ввели следующую последовательность: 3 6 2
Результат сортировки: 2 3 6
Ниже перечислены требования к входной и выходной информации для программы сортировки при вводе информации из файла.
1. Для выполнения сортировки Последовательности из файла необходимо указать в качестве аргумента имя файла при запуске программы сортировки. Например:
>HeapSort.exe input.txt
2. Файл, используемый в качестве входной информации, должен быть структурирован следующим образом: В начале файла должно присутствовать значение Размера, а на следующих строках Элементы. При этом два стоящих рядом элемент должны быть разделены хотя бы одним пробелом. Например:
12 -124 23 1 0
3. На содержащиеся в файлах числа накладываются те же требования что и в пунктах 1-6 Требований к представлению данных и требований к входным данным, вводимым с клавиатуры.
4. В случае несоответствия условиям пункта 3 на экран выводится сообщение ДС6 о неправильной структуре файла, и программа завершает свою работу.
5. В случае, если файл правильно структурирован, и в нем содержатся допустимые значения на экран выведутся сообщения идентичные пункту 23 Требований к входной и выходной информации при вводе с клавиатуры.
6. В случае, если число расположенных в файле элементов последовательности не совпадает со значением размера последовательности, будет выведено сообщение ДС6 о неправильной структуре файла и программа завершит свою работу.
Ниже приведен список стандартных сообщений, выводимых на экран в той или иной ситуации. Все сообщения имеют идентификатор. Идентификатор сообщения предлагается именовать следующим образом: для ошибок ввода в том числе и для обработки частных случаев используем префикс ДС и последовательный номер, для сообщений Ввода / вывода информации используем префикс СВ.
В начале таблицы должны находиться сообщения, стандартные для всех сортировок - приглашение ввода размера, элементов, вывод "шапки"для результата(см. Таблицу ниже). В случае если вам нужно вывести какое-то дополнительное сообщение, его описание добавляете в конец таблицы.
Идентификатор сообщения | Текст сообщения |
СВ1 | «Введите размер последовательности (число в диапазоне 1..127):» |
СВ2 | «Введите элемент последовательности(число в диапазоне -128..127):» |
СВ3 | «Результат сортировки:» |
CB4 | «Вы ввели количество элементов:» |
СВ5 | «Вы ввели следующую последовательность:» |
ДС1 | «Размер последовательности должен быть целым числом и лежать в диапазоне от 1 до 127. Пожалуйста, повторите ввод!» |
ДС2 | «Введенный элемент должен быть целым числом и лежать в диапазоне от -128 до 127. Пожалуйста, повторите ввод» |
ДС3 | «Введенная последовательность чисел уже отсортирована» |
ДС4 | «Введенная последовательность состоит из одного элемента» |
ДС5 | «Произведен неудачный ввод входной информации 3 раза подряд» |
ДС6 | «Неправильная структура файла» |
Дата добавления: 2015-08-09; просмотров: 193 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Бюджетування на залізничному транспорті | | | Требования к модульной структуре |