Documente Academic
Documente Profesional
Documente Cultură
#include<math.h>
using namespace std;
class Poligon
{
double *latura;
int nr;
protected:
Poligon()
{
nr = 0;
latura = NULL;
public:
Poligon(const int& n)
{
if (n < 3)
throw("nr lat prea mic");
nr = n;
latura = new double[n];
if (!latura)
throw("bad memory alloc");
//P_numarare++;
//cout << "Poligon()" << P_numarare << endl;
}
~Poligon()
{
//cout << "~Poligon()" << P_numarare << endl;
//P_numarare--;
if (latura)
delete[] latura;
}
if(dim <= 0)
throw("Dimensiune incorecta");
latura[lat] = dim;
return per;
}
};
rezultat = sqrt(rezultat);
return rezultat;
}
};
//TEMA
//implementati LISTA SIMPLA cu fct de baza, adaugare, cautare, stergere
//creati 2 clase derivate: STIVA si COADA
bool ePatrat()
{
for (int i = 0; i < 4; i++)
if (Latura(i) != Latura(0))
return false;
return true;
}
};
}
}
double Arie()
{
return Latura(0) * Latura(2);
}
};
double Arie()
{
return Poligon::Latura(0) * Latura(1);
}
};
int main()
{
try
{
Poligon A(4);
Poligon B(6);
Triunghi C;
C.Set_Latura(0, 3);
C.Set_Latura(1, 4);
C.Set_Latura(2, 5);
/*
if(C.eDreptunghic())
cout << "triunghiul C e dreptunghic: " << endl;
else
cout << "triunghiul C NU e dreptunghic: " << endl;
*/
Patrulater R;
if (R.ePatrat())
cout << "R e patrat: " << endl;
else
cout << "R NU e patrat: " << endl;
cout <<endl<< "*********" << endl;
if (R.eParalelogram())
cout << "R eParalelogram: " << endl;
else
cout << "R NU eParalelogram: " << endl;
Dreptunghi DR(2,4);
Patrat P(10);
cout << P.Arie();