Перевантаження функцiй, операторiв i методiв класу
Автор: yalak28454 • Апрель 16, 2022 • Лабораторная работа • 912 Слов (4 Страниц) • 147 Просмотры
Міністерство освіти і науки України
Донецький технічний університет
Факультет інформаційних технологій
Кафедра інформації
ЗВІТ
З ЛАБОРАТОРНОЇ РОБОТИ №13
"ПЕРЕВАНТАЖЕННЯ ФУНКЦІЙ,
ОПЕРАТОРІВ І МЕТОДІВ КЛАСУ"
Варіант № 12
Розробив студент гр. 1ЛС - 20б _____________Авросій М. М. Лабораторну роботу захищено з оцінкою ____________________________ Перевірив викл. каф. ЗІ ____________Каркович Р. Р. _________________ 2022 р.
|
Вінниця 2022 р.
Завдання 1: [pic 1]
Лістинг програми:
#include <iostream>
using namespace std;
int triple(int a) {
return a * a * a;
}
float triple(float a) {
return a * a * a;
}
double triple(double a) {
return a * a * a;
}
int main() {
int a = 5;
cout << triple(a) << endl;
float b = 3.1;
cout << triple(b) << endl;
double c = 3.14;
cout << triple(c) << endl;
}
Результати роботи програми:
[pic 2]
Завдання 2:
[pic 3]
Математична формалація:
drib1=c1 a1/b1
drib2=c2 a2/b2
Додавання: drib3=a1*b2+a2*b1/b1*b2 або a1+a2/b1
Інкремент: drib3=a2+b2/b2
Обернений дріб: drib3=b1/a1
Лістинг програми:
#include <iostream>
#include <Windows.h>
using namespace std;
class dribnum {
int a,b,c;
public:
dribnum() {
a = b = c = 0;
}
dribnum(int aa, int bb, int cc) {
a = aa; b = bb; c = cc;
}
~dribnum() {}
dribnum operator +(dribnum drib) {
dribnum temp;
if (b == drib.b) {
temp.a = a + drib.a;
temp.b = b;
temp.c = c + drib.c;
}
else {
temp.a = a * drib.b + drib.a * b;
temp.b = b * drib.b;
temp.c = c + drib.c;
}
if (temp.b < temp.a)
{
temp.c = temp.a / temp.b;
temp.a = temp.a - temp.b * temp.c;
}
return temp;
}
dribnum operator ++() {
dribnum temp;
temp.a = a+b;
...