Запись из дневника программиста Эдварда:
«На восьмой день нам удалось отыскать место старой библиотеки. Решили, что здесь мы найдем те знания, которые позволят нам лучше понимать, что происходит в программном коде. Вход оказался закрыт голограммой. Из нее стало ясно, что пройти можно, лишь сложив два элемента этой голограммы в один. ООП-анализ показал, что эти элементы — объекты класса <данные удалены>. Тогда мы использовали перегрузку оператора <данные удалены>, чтобы проникнуть в библиотеку…»
Необходимо дописать исходную программу, в которой складываются два объекта класса Hologram.
#include <iostream>
using namespace std;
class Hologram {
private:
int w;
int h;
int l;
public:
Hologram() {
w = 0;
h = 0;
l = 0;
}
void setW(int wi);
void setH(int he);
void setL(int le);
int getW() { return w; }
int getH() { return h; }
int getL() { return l; }
Hologram operator+(Hologram hologram);
};
void Hologram::setW(int wi) {
w = wi;
}
void Hologram::setH(int he) {
h = he;
}
void Hologram::setL(int le) {
l = le;
}
int main() {
Hologram hologram1;
Hologram hologram2;
int t_l = 0, t_w = 0, t_h = 0;
cin >> t_l >> t_w >> t_h;
hologram1.setL(t_l);
hologram1.setW(t_w);
hologram1.setH(t_h);
cin >> t_l >> t_w >> t_h;
hologram2.setL(t_l);
hologram2.setW(t_w);
hologram2.setH(t_h);
Hologram combinedHologram;
combinedHologram = hologram1 + hologram2;
cout << combinedHologram.getL() << " "
<< combinedHologram.getW() << " "
<< combinedHologram.getH();
return 0;
}
Формат входных данных
На первой строке входного файла записаны три целых числа l1, w1 и h1 (1 ≤ l1, w1, h1 ≤ 100) — длина, ширина и высота первого объекта класса Hologram.
На второй строке входного файла записаны три целых числа l2, w2 и h2 (1 ≤ l2, w2, h2 ≤ 100) — длина, ширина и высота второго объекта класса Hologram.
Формат выходных данных
Три целых числа, записанных в одну строку — длина, ширина и высота полученного объекта.
Примеры
входные данные выходные данные
8 42 98
20 24 93
28 66 191
65 1 11
6 20 29
71 21 40
C++ (GNU C++ 12.2.0)
Решать в Informatics LMS
1
#include <iostream>
2
using namespace std;
3
4
class Hologram {
5
private:
6
int w;
7
int h;
8
int l;
9
10
public:
11
Hologram() {
12
w = 0;
13
h = 0;
14
l = 0;
15
}
16
17
void setW(int wi);
18
void setH(int he);
19
void setL(int le);
20
21
int getW() { return w; }
22
int getH() { return h; }
23
int getL() { return l; }
24
Hologram operator+(Hologram hologram);
25
};
26
27
void Hologram::setW(int wi) {
28
w = wi;
29
}
30
31
void Hologram::setH(int he) {
32
h = he;
33
}
34
35
void Hologram::setL(int le) {
36
l = le;
37
}
38
39
int main() {
40
Hologram hologram1;
41
Hologram hologram2;
42
43
int t_l = 0, t_w = 0, t_h = 0;
44
cin >> t_l >> t_w >> t_h;
45
hologram1.setL(t_l);
46
hologram1.setW(t_w);
47
hologram1.setH(t_h);
48
49
cin >> t_l >> t_w >> t_h;
50
hologram2.setL(t_l);
51
hologram2.setW(t_w);
52
hologram2.setH(t_h);
53
54
Hologram combinedHologram;
55
combinedHologram = hologram1 + hologram2;
56
57
cout << combinedHologram.getL() << " "
58
<< combinedHologram.getW() << " "
59
<< combinedHologram.getH();
60
61
return 0;
62
}