|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Оформление практических заданий по ООПСтр 1 из 3Следующая ⇒ Оформление практических заданий по ООП Содержание отчета состоит из следующих разделов и пунктов: 1. Постановка задачи. 2. Методы и объекты. 3. Алгоритм функционирования системы, решение задачи. 4. Блок-схемы. 5. Код программы. 6. Тестирование. Метод решения В этом разделе описывается перечень используемых объектов и методы (функции) вашей программы. Шаблон описания объектов:
Объект: наименование класса объекта Свойства: описание свойств объекта. Функционал: описание функционального назначения объекта.
Под свойствами объекта понимаются поле данных класса и методы. Например, в задаче создали один объект obj1 класса Rectangle. Описание класса: class Rectangle { private: float width, height; public: Rectangle (float _width, float _height) { width = _width; height = _height; } float p() { return (2*(width + height)); } float s() { return (width * height); } };
Объект: obj1 класса Rectangle Свойства: float width, height – ширина и высота прямоугольника. float p() – метод вычисления периметра прямоугольника. float s() – метод вычисления площади прямоугольника. Функционал: предназначен для работы с фигурой прямоугольник.
Помимо описания объектов записываете использование библиотечных функций или потоков, например: 1) Функция max() библиотеки algorithm – нахождение максимального числа; 2) Функция abs() библиотеки cmath – нахождение модуля числа 3) Потоки ввода/вывода cin/cout
Описание алгоритма Описание метода объекта задается согласно следующему шаблону:
Класс объекта: наименование класса объекта Метод: наименование метода Функционал: описание назначения метода. Модификатор доступа: используемый модификатор доступа Параметры: Тип Наименование Описание назначения. Возвращаемое значение: Тип и описание содержания. Алгоритм:
Алгоритм метода описывается посредством таблицы, которая соответствует ориентированному нагруженному графу. Первый столбец содержит номера пунктов по порядку возрастания номеров. Описание функции задается согласно следующему шаблону:
Функция: наименование функции Функционал: описание назначения функции. Параметры: Тип Наименование Описание назначения. Возвращаемое значение: Тип и описание содержания.
Алгоритм:
Пример заполнения таблицы алгоритма для метода Rectangle::p(): Класс объекта: Rectangle Метод: p() Функционал: вычисление периметра прямоугольника Модификатор доступа: public Параметры: - Возвращаемое значение: float Алгоритм:
Таблицы алгоритмов делаем для всех методов и функций, описанных в коде программы + для main.cpp.
Заполнение таблицы алгоритма для цикла for: for(int i = 0; i < n; i++) { a/=10; n--; }
В столбце «предикат» записываются только условия. У условия обязательно минимум 2 строчки – если выполняется (первая строка) и «иначе» (вторая строка). Во второй строке пишем либо инверсное условие, либо оставляем поле пустым. Действия, которые не имеют логики (условия), можно записывать в одной ячейке. Завершение алгоритма в столбце «№ перехода» обозначается символом пустого множества. Заполнение таблицы алгоритма для цикла while: while(n != 0) { n/=10; count++; }
Заполнение таблицы алгоритма для цикла do…while: do { n/=10; count++; } while(n != 0)
Заполнение таблицы алгоритма для условия if…else if … else: if(a > 0) cout << “positive”; else if(a < 0) cout << “negative”; else cout << “zero”;
Заполнение таблицы алгоритма для switch: switch(symb) { case ‘A’: cout << “cursive letter”; break; case ‘a’: cout << “lowercase letter”; break; default: cout << “not letter”; }
Пример заполнения таблицы алгоритма: for(int i = 0; i < n; i++) { for(int j = 0; j < i; j++) { cout << j; if(j != i) m = m + 2; } a = a + m; }
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|