Частина тексту файла (без зображень, графіків і формул):
МІНІСТЕРСТВО ОСВІТИ І НАУКИ, МОЛОДІ ТА СПОРТУ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА»
Кафедра Комп’ютеризовані системи автоматики
З В І Т
до лабораторної роботи №3
з курсу: «Алгоритмічні мови та програмування. Частина»
на тему:
"Перевантаження функцій і операцій"
Варіант № 21
ЗАВДАННЯ:
Написати програму алгоритмічною мовою С++ згідно із завданням, отриманим від викладача за табл. 1. Реалізувати заданий класовий тип із заданими методами, використовуючи механізм перевантаження функцій та операцій, а також значення параметрів за замовчуванням. Написати фрагмент програми з використанням класового типу та заданих методів.
/
ТЕКСТ ПРОГРАМИ:
#include"geom.h"
#include<iostream>
#include<conio.h>
#include<math.h>
using namespace std;
const double pi=3.1415926535897932384626433;
shape::shape(double p1){p=p1;}
double shape::perimetr(){return p;}
///////////////////////////////////
lam::lam():shape(p){}
double lam::perimetr(){return p;}
priam::priam(double a1, double b1){a=a1;b=b1;}
double priam::perimetr(){return (a+b)*2;}
triangle::triangle(double a1,double b1, int f1){a=a1;b=b1;f=f1;}
double triangle::perimetr()
{
double c;
c=sqrt(a*a+b*b-2*a*b*cos(pi*f/180));
return a+b+c;
}
paralelo::paralelo(double a1, double b1){a=a1;b=b1;}
double paralelo::perimetr(){return (a+b)*2;}
kv::kv(double a1){a=a1;}
double kv::perimetr(){return 4*a;}
ptriangle::ptriangle(double a){b=a;}
double ptriangle::perimetr(){return b*3;}
romb::romb(double l11, double l22){l1=l11;l2=l22;}
double romb::perimetr(){return 3*sqrt(pow(l1/2,2)+pow(l2/2,2));}
////////////////////////////////////////////
line::line():shape(p){}
double line::perimetr(){return p;}
kolo::kolo(double r1){r=r1;}
double kolo::perimetr(){return 2*pi*r;}
elips::elips(double a1,double b1){a=a1;b=b1;}
double elips::perimetr(){return pi*(a+b);}
//////////////////////////////////////////////////
void main(void)
{
priam Q(5.5,8.7);
triangle W(3,4,60);
kolo E(54.1);
elips I(12,4);
paralelo R(4,6);
kv T(6);
ptriangle Y(9.8);
romb U(3,4);
cout<<"Priamokutnyk :"<<endl;
cout<<"Perimetr = "<<Q.perimetr()<<endl;
cout<<"Triangle :"<<endl;
cout<<"Perimetr = "<<W.perimetr()<<endl;
cout<<"Kolo :"<<endl;
cout<<"Perimetr = "<<E.perimetr()<<endl;
cout<<"Elips :"<<endl;
cout<<"Perimetr = "<<I.perimetr()<<endl;
cout<<"Paralelogram :"<<endl;
cout<<"Perimetr = "<<R.perimetr()<<endl;
cout<<"Kvadrat :"<<endl;
cout<<"Perimetr = "<<T.perimetr()<<endl;
cout<<"Tite triangle :"<<endl;
cout<<"Perimetr = "<<Y.perimetr()<<endl;
cout<<"Romb :"<<endl;
cout<<"Perimetr = "<<U.perimetr()<<endl;
getch();
}
Результат роботи програми:
/