Главная страница

ООП. Для решения поставленной задачи используются. Для решения поставленной задачи используются


Скачать 19.12 Kb.
НазваниеДля решения поставленной задачи используются
Дата01.06.2022
Размер19.12 Kb.
Формат файлаdocx
Имя файлаДля решения поставленной задачи используются.docx
ТипДокументы
#562735

Для решения поставленной задачи используются:

Объекты стандартных потоков ввода и вывода cin и cout соответственно .Используются для вывода на экран и ввода с клавиатуры.

Объекты класса Triagle(кол-во объектов задается пользователем)

Функции – операторы(+,-).Используются для создания объектов класса Triagle.

Операторы цикла while и for

Класс Triagle

  • Поля:

    • Поля, хранящие значения длин сторон треугольника:

      • Наименование – a,b,c;

      • Тип – целочисленное > 0;

      • Модификатор доступа – private;

  • Методы:

    • Triagle

      • Функционал – параметризированный конструктор

    • Side1

      • Функционал – константный метод возвращающий значения длин первой стороны треугольника.



    • Side2

      • Функционал – константный метод возвращающий значения длин второй стороны треугольника.

    • Side2

      • Функционал – константный метод возвращающий значения длин третьей стороны треугольника.

Алгоритм:

Функция main:

1 – Объявление целочисленной переменной ;

2 – Считывание с клавиатуры переменной n;

3 - Создание объекта vec класса вектор для хранения объектов класса Triagle;

4 – Объявление целочисленной переменной i = 0;

5 – Если i < n объявление переменных a,b,c > 0; - предикат

6 – Считывание переменных a,b,c с клавиатуры

7 – Создание объекта класса Triagle путем вызова параметризированного конструктора с аргументами a,b,c

8 – Вызов метода push_back объекта vec с параметром side

9 – i++

10 – Объявление целочисленных переменных tr1 tr2 и смвольной переменной oper

11 – tr1 tr2 oper считаны с клавиатуры(предикат) Считывание tr1 tr2 oper с клавиатуры

12 – oper == “+” (предикат) Сложение сторон первого и второго треугольника и запись результата на место первого треугольника

12 – иначе oper = “-“ Вычитание сторон первого и второго треугольника и запись результата на место первого треугольника

13 – Вывод на экран a = значению поля a треугольника tr1;

14 - Вывод на экран b = значению поля a треугольника tr1;

15 - Вывод на экран a = значению поля a треугольника tr1;

Метод Get_side1

Функционал – вернуть сторону a;

Метод Get_side2

Функционал – вернуть сторону b;

Метод Get_side3

Функционал – вернуть сторону c;

Функция Operation+

Параметры – объекты one и two класса Triagle

Возаращ. Значение – объект класса Triagle

Функционал – сложение сторон треугольников

Алгоритм

  1. Инициализация целочисленных переменных side1 side2 side3

Значениями сумм соответствующих сторон треугольников one и two

2 – Треугольник с side1 side2 side3 существует(предикат) – Создание объекта three класса Triagle с аргументами side1 side2 side3 и его возврат

Иначе – возврат объекта one

Исходный код – В класс Triagle.h добавить –

getSide1() const;

getSide2() const;

getSide3() const;

Triagle Operation+{const Triagle &one, const Triagle two)

Triagle Operation-{const Triagle &one, const Triagle two}

Triagle.cpp

int Triagle :: getSide1() const

{

return a;

}

int Triagle :: getSide2() const

{

return b;

}

int Triagle :: getSide3() const

{

return c;

}

Triagle Operation+{const Triagle &one, const Triagle two}

{

int side1 = one.getSide1() + two.getSide1();

int side2 = one.getSide2() + two.getSide2();

int side3 = one.getSide1() + two.getSide3();

if(side1 + side2 > side3 && side1+side….

Return (Triengl(side1,side2,side3

……

}

Main

int n;

cin >> n;

vector vec;

vec.reserve(n);

for(int i = 0;i
{

int a,b,c;

cin >> a >> b >>c;

vec.push_back(Triangle(side)???);

}

int tr1,tr2;

cher oper;

while(cin >> tr1 >> oper >> tr2)

{

If(oper = “+”)

{

vec[tr1 – 1] = vec[tr1 – 1]

}


написать администратору сайта