Практическая работа №13
ПО «ОСНОВАМ АЛГОРИТМИЗАЦИИ И ПРОГРАММИРОВАНИЯ»
Задания 1-3 часть 2
ВЫПОЛНИЛ:
Студент группы ИСП-О-18
Соручаев Денис Алексеевич
ПРОВЕРИЛА:
Шелепова Т.С.
Оценка _________________
п. Электроизолятор
2020 г.
/* Практическая работа №13. Классы.
Задание 1.
Создайте класс Numbers, который содержит два целых числа. Этот класс должен иметь две
переменные-члены для хранения этих двух целых чисел. Вы также должны создать два метода:
- метод set(), который позволит присваивать значения переменным;
- метод print(), который будет выводить значения переменных.
Работу выполнил Соручаев Денис ИСП-О-18 */
#include <iostream>
class Numbers
{
public:
int m_pervoe;
int m_vtoroe;
void set(int a, int b)
{
m_pervoe = a;
m_vtoroe = b;
}
void print()
{
std::cout << "Numbers(" << m_pervoe << ", " << m_vtoroe << ")\n";
}
};
int main()
{
Numbers n1;
n1.set(3, 3); //инициализируем объект n1 значениями 3 и 3
Numbers n2{ 4, 4 }; //инициализируем объект n2 значениями 4 и 4
n1.print();
n2.print();
return 0;
}
Ответы на вопросы:
Что в объектно-ориентированном программировании является типом данных «класс»?
Класс — в объектно-ориентированном программировании, представляет собой шаблон для создания объектов, обеспечивающий начальные значения состояний: инициализация полей-переменных и реализация поведения функций или методов.
2. Как в языке С++ определяется тип данных «класс»?
В общем случае класс как тип данных определяется следующим образом: <спецификатор_класса> <имя_класса>
{
<спецификатор_доступа_1>:
<тип_списка_1> <список_имен_1>;
<тип_списка_2> <список_имен_2>;
}
Что такое открытый член класса?
Public — обращения к члену допускаются из любого кода. Наследование по типу public не меняет модификаторов родительского класса (С++);
Что такое закрытый член класса?
Private — обращения к члену допускаются только из методов того класса, в котором этот член определён. Любые наследники класса уже не смогут получить доступ к этому члену. Наследование по типу private делает все члены родительского класса private-членами класса-наследника;
Что такое спецификатор доступа?
Спецификатор доступа определяет, кто имеет доступ к членам этого спецификатора. Каждый из членов «приобретает» уровень доступа в соответствие со спецификатором доступа (или, если он не указан, в соответствие со спецификатором доступа по умолчанию).
6. Сколько есть спецификаторов доступа в C++? Назовите их.
В C++ есть 3 уровня доступа:
- public: делает члены открытыми;
- private: делает члены закрытыми;
- protected: открывает доступ к членам только для дружественных и дочерних классов.
/* Практическая работа №13. Классы.
Задание 3.
Напишите простой класс с именем Numbers. Этот класс должен иметь:
- Три закрытые переменные-члены типа double: m_a, m_b и m_c.
- Открытый метод с именем setValues(), который позволит устанавливать значения для
m_a, m_b и m_c;
- Открытый метод с именем print(), который будет выводить объект класса Numbers в
следующем формате: <m_a, m_b, m_c>.
Выполнил Соручаев Денис ИСП-О-18
*/
#include <iostream>
class Numbers
{
private:
double m_a, m_b, m_c;
public:
void setValues(double a, double b, double c)
{
m_a = a;
m_b = b;
m_c = c;
}
void print()
{
std::cout << "<" << m_a << ", " << m_b << ", " << m_c << ">";
}
};
int main()
{
Numbers point;
point.setValues(3.0, 4.0, 5.0);
point.print();
return 0;
}