
- •1 ПОСТАНОВКА ЗАДАЧИ
- •1.1 Описание входных данных
- •1.2 Описание выходных данных
- •2 МЕТОД РЕШЕНИЯ
- •3 ОПИСАНИЕ АЛГОРИТМОВ
- •3.1 Алгоритм метода ReturnPtr класса MyClass
- •3.2 Алгоритм метода SetPtr класса MyClass
- •3.3 Алгоритм функции func
- •3.4 Алгоритм функции main
- •4 БЛОК-СХЕМЫ АЛГОРИТМОВ
- •5 КОД ПРОГРАММЫ
- •5.1 Файл main.cpp
- •5.2 Файл MyClass.cpp
- •5.3 Файл MyClass.h
- •6 ТЕСТИРОВАНИЕ
- •СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
3 ОПИСАНИЕ АЛГОРИТМОВ
Согласно этапам разработки, после определения необходимого инструментария в разделе «Метод», составляются подробные описания алгоритмов для методов классов и функций.
3.1 Алгоритм метода ReturnPtr класса MyClass
Функционал: возвращает значение указателя из закрытой области. Параметры: отсутствует .
Возвращаемое значение: int*.
Алгоритм метода представлен в таблице 1.
Таблица 1 – Алгоритм метода ReturnPtr класса MyClass |
|
|||
|
|
|
|
|
|
№ |
Предикат |
Действия |
№ |
|
|
|
|
перехода |
|
1 |
|
Возврат поля mas |
|
3.2 Алгоритм метода SetPtr класса MyClass
Функционал: присваивает значение указателя массива из закрытой области. Параметры: int* p.
Возвращаемое значение: отсутствует. Алгоритм метода представлен в таблице 2.
Таблица 2 – Алгоритм метода SetPtr класса MyClass |
|
|||
|
|
|
|
|
|
№ |
Предикат |
Действия |
№ |
|
|
|
|
перехода |
|
1 |
|
Присваивание полю mas значение параметра p |
|
11
3.3 Алгоритм функции func
Функционал: Инициализации указателя на объект класса cl_obj адресом объекта созданного с использованием параметризированного вызов метода создание массива и ввода значений.
Параметры: int size. Возвращаемое значение: MyClass*.
Алгоритм функции представлен в таблице 3.
Таблица 3 – Алгоритм функции func |
|
|||
|
|
|
|
|
|
№ |
Предикат |
Действия |
№ |
|
|
|
|
перехода |
|
1 |
|
Инициализация указателя на объект класса cl_obj адресом объект |
2 |
|
|
|
loc,созданного с использованием параметризированного конструктора |
|
|
|
|
с параметром size |
|
|
|
|
|
|
2 |
|
Вызов метода Create() объекта loc |
3 |
|
|
|
|
|
|
3 |
|
Вызов метода input() объекта loc |
4 |
|
|
|
|
|
|
4 |
|
Вызов метода Prod() объекта loc |
5 |
|
|
|
|
|
|
5 |
|
Возврат указателя на объект loc класса cl_obj |
|
3.4 Алгоритм функции main
Функционал: Основной алгоритм программы. Параметры: нет.
Возвращаемое значение: Целое индикатор корректности выполнение программы.
Алгоритм функции представлен в таблице 4.
Таблица 4 – Алгоритм функции main |
|
|||
|
|
|
|
|
|
№ |
Предикат |
Действия |
№ |
|
|
|
|
перехода |
|
1 |
|
Объявление целочисленной переменной size |
2 |
|
|
|
|
|
12
№ |
Предикат |
|
|
Действия |
|
|
№ |
|
|
|
|
|
|
|
перехода |
2 |
|
Ввод значение переменной size |
|
|
3 |
||
|
|
|
|
|
|
|
|
3 |
size <=2 || size % 2 !=0 |
Вывод |
значение |
переменной |
size со знаком |
|
|
|
|
вопроса |
|
|
|
|
|
|
|
|
|
|
|
||
|
|
Вывод значение переменной size |
|
|
4 |
||
|
|
|
|
|
|
||
4 |
|
Вывод переноса на новую строку |
|
|
5 |
||
|
|
|
|
|
|||
5 |
|
Объявление указателя obj1 на объект класса Class |
|
6 |
|||
|
|
|
|
||||
6 |
|
присвоение указателю obj1 результата работы |
7 |
||||
|
|
функции func с аргументом size |
|
|
|
||
|
|
|
|
|
|
||
7 |
|
Вывод переноса на новую строку |
|
|
8 |
||
|
|
|
|
|
|||
8 |
|
Вызов метода SumPara() объекта obj 1 |
|
9 |
|||
|
|
|
|
||||
9 |
|
Инициализация указателя obj2 на объект класса |
10 |
||||
|
|
Class |
адресом |
объекта, |
созданного |
с |
|
|
|
использованием конструктора копии с аргументом |
|
||||
|
|
объекта obj1 |
|
|
|
|
|
|
|
|
|
|
|
||
10 |
|
Вызов метода Prod() объекта obj2 |
|
|
11 |
||
|
|
|
|
|
|
||
11 |
|
Вызов метод Print() объекта obj1 |
|
|
12 |
||
|
|
|
|
|
|
||
12 |
|
Вывод переноса на новую строку |
|
|
13 |
||
|
|
|
|
||||
13 |
|
вывод значение результата вызова метода Sum() |
14 |
||||
|
|
объекта |
obj1 |
|
|
|
|
|
|
|
|
|
|
||
14 |
|
Вывод переноса на новую строку |
|
|
15 |
||
|
|
|
|
|
|
||
15 |
|
Вызов метода Print() объекта obj2 |
|
|
16 |
||
|
|
|
|
|
|
||
16 |
|
Вывод переноса на новую строку |
|
|
17 |
||
|
|
|
|
||||
17 |
|
вывод значение результата вызова метода Sum() |
18 |
||||
|
|
объекта |
obj2 |
|
|
|
|
|
|
|
|
|
|
||
18 |
|
Вывод переноса на новую строку |
|
|
19 |
||
|
|
|
|
||||
19 |
|
Инициализация указателя p значением результата |
20 |
||||
|
|
работы метода ReturnPtr объекта obj2 |
|
|
|||
|
|
|
|
|
|||
20 |
|
Присвоение объекту obj2 данных из объекта obj1 |
|
21 |
|||
|
|
|
|
|
|||
21 |
|
Вызов метода SumPara() объекта obj1 |
|
22 |
|||
|
|
|
|
|
|
|
|
13
№ |
Предикат |
Действия |
№ |
|
|
|
перехода |
22 |
|
Вызов метода SetPtr(p) объекта obj2 |
23 |
|
|
|
|
23 |
|
Вызов метода Print() объекта obj2 |
24 |
|
|
|
|
24 |
|
Вывод переноса на новую строку |
25 |
|
|
|
|
25 |
|
Вывод значение результата вызов метод Sum() |
26 |
|
|
объекта obj2 |
|
|
|
|
|
26 |
|
Удаление объекта по адресу указателя obj1 при |
27 |
|
|
помощи оператора функции delete |
|
|
|
|
|
27 |
|
Удаление объекта по адресу указателя obj2 при |
|
|
|
помощи оператора функции delete |
|
|
|
|
|
14