ЛАБОРАТОРНАЯ РАБОТА 6
Элементы объектно-ориентированного программирования. Cоздание данных типа «класс»
Вариант 9
Задания1: для всех вариантов задач создать класс с указанными двумя полями (Поле 1, Поле 2) и тремя методами:
- конструктор для инициализации объекта;
- функция формирования строки с информацией об объекте;
функция обработки значений полей по индивидуальному варианту.
#include
#include
using namespace std;
class Mashina
{
public:
float skorost;
int vremya;
Mashina()
{
cout<<"\nКонструктор активирован\n";
}
Mashina(float s, int v)
{
skorost = s;
vremya = v;
}
~Mashina()
{
}
void rasstoyaniye(float s, int v)
{
float Rasst = s*v*60;
cout<<"Пройденный путь = "<
}
};
int main()
{
float s;
int v;
Mashina ob;
cout<<"Введите скорост ь (метр/секунд): ";
cin>>s;
cout<<"Введите время (минут): ";
cin>>v;
ob.rasstoyaniye(s,v);
cout<<"\n\n\n\n";
return 0;
}
Задание 2: создать класс с полями, указанными в индивидуальном задании (табл. 2, столб 2). Реализовать в классе методы:
- конструктор по умолчанию;
- конструктор с параметрами;
- деструктор для освобождения памяти (с сообщением об уничтожении объекта);
- функции обработки данных (1 и 2), указанные в индивидуальном задании (табл. 2, столбцы 3 и 4);
#include
#include
using namespace std;
class issquare
{
public:
float x1, y1, x2, y2, x3, y3, x4, y4;
issqu are()
{
cout<<"Конструктор по умолчанию\n\n";
}
void issquaree(float ox1, float oy1, float ox2, float oy2, float ox3, float oy3, float ox4, float oy4)
{
ox1=x1;
oy1=y1;
ox2=x2;
oy2=y2;
ox3=x3;
oy3=y3;
ox4=x4;
oy4=y4;
if((ox2-ox1)==(ox3-ox4) && (oy1-oy4)==(oy2-oy3))
{
cout<<"\nЭтот прямоугольник является квадратом\n";
}
else cout<<"\nЭтот прямоугольник не является квадратом\n";
}
~issquare()
{
cout<<"\n\nДеструктор активирован, данные удалены\n\n";
}
};
int main()
{
float xx1, yy1, xx2, yy2, xx3, yy3, xx4, yy4;
issquare ob;
cout<<"Введите координаты (начиная с I четверти декартовой системы координат, по часовой стрелке)\nX1 = ";
cin>>xx1;
cout<<"\nY1 = ";
cin>>yy1;
cout<<"\nX2 = ";
cin>>xx2;
cout<<"\nY2 = ";
cin>>yy2;
cout<<"\nX3 = ";
cin>>xx3;
cout<<"\nY3 = ";
cin>>yy3;
cout<<"\nX4 = ";
cin>>xx4;
cout<<"\nY4 = ";
cin>>yy4;
ob.issquaree(xx1, yy1, xx2, yy2, xx3, yy3, xx4, yy4);
return 0;
}
Задание 3: Для класса, созданного в предыдущем задани создать класс-потомок с дополнительным полем, указанным в индивидуальном задании.
Реализовать в классе-потомке методы:
- конструктор;
Задание 4: для всех вариантов задач создать класс Massiv следующими методами:
#include
using namespace std;
int main() {
int i, a, count, sum, inputArray[500], inputArray2[500];
float average;
cout << "Enter number of elements\n";
cin >> count;
cout << "Enter " << count << " elements\n";
for(i = 0; i < count; i++) {
cin >> inputArray[i];
}
sum = 0;
for(i = 0; i < count; i++) {
sum += inputArray[i];
}
average = (float)sum / count;
cout << "Average = " << average;
for(i = 0; i < count; i++) {
a=inputArray[i]-average;
inputArray2[i]=a;
}
cout<<"\nNew Array: ";
for(i = 0; i < count; i++) {
cout<" ";
}
return 0;
}
Do'stlaringiz bilan baham: |