Académique Documents
Professionnel Documents
Culture Documents
MOLDOVA
Tema: Clase
Chişinău 2012
Scopul lucrării:
Utilizarea claselor, constructorilor, destructorilor, moștenirii în programe.
Condiția 1.
Să se creeze o clasă care va realiza ecuația (a+b-c) 2/z. Ecuația se execută de 10
ori și se afișează doar rezultatele care au valori pare.
#include <iostream.h>
#include <conio.h>
#include <math.h>
class Ec
{ public:
double rez;
Ec(double, double, double, double);
void afiseaza_rez(void);
private:
double a, b, c, z;};
Ec::Ec (double a, double b, double c, double z)
{ Ec::a=a;
Ec::b=b;
Ec::c=c;
Ec::z=z;
rez=(a*a+b*b+c*c)/z;}
void Ec::afiseaza_rez(void)
{cout << "Rezultat: " << rez << endl; }
void main()
{for(int i=0; i<10; i++)
{Ec ecuatie(i+5, i+4, i+3, i+2); ecuatie.afiseaza_rez();}
getch();}
Fig 1. Rezultatul 1
Condiția 2.
Să se creeze o clasă care va moșteni 2 funcții unei clase de bază.
#include <iostream.h>
#include <conio.h>
#include <math.h>
#include <string.h>
class ULIM
{public:
ULIM(char *, char *);
void afis_ULIM();
private:
char num[64];
char tip[64];
float sum;};
ULIM::ULIM(char *name, char *type)
{strcpy(ULIM::name, name);
strcpy(ULIM::type, type);}
void ULIM::afis_ULIM()
{cout << "Denumirea universitatii: " << name << endl;
cout << "Tipul universitatii: " << type << endl;}
Fig 2. Rezultatul 2
Condiția 3.
Să se creeze o clasă pe tema ”Figuri geometrice”. Clasa va moșteni de la alte 2
clase de bază careva parametri. (triunghi)
#include <iostream.h>
#include <conio.h>
#include <string.h>
class figura
{public:
char fi[64];
void fig ()
{cout<<"Denumirea figurii geometrice: "<<fi<<endl;
cout<<"============================"<<endl;};};
Fig 3. Rezultatul 3
Condiția 4.
Să se creeze o clasă care va prelucra tablouri unidimensionale, tablouri bidimensionale
pentru fiecare clasă trebuie să fie minimum 5 funcții de prelucrare.
#include <iostream.h>
#include <conio.h>
#include <string.h>
#include <math.h>
class Masivul
{public:
int num[128], lungimea;
double rez;
void Suma()
{rez=0;
cout << "1) Suma=";
for(int i=1; i<=lungimea; i++) rez+=num[i];
cout << rez << endl;}
void Diferenta()
{rez=0;
cout << "2) Diferenta=";
void Produsul()
{rez=1;
cout << "3) Produsul=";
void Sqrt()
{rez=0;
cout << "4) Radacina patrata: " << endl;
void Ridicarea_la_putere()
{int power;
rez=0;
cout << "5) Ridicarea la putere: ^";
cin >> power;
class Masivul_bidimensional
{public:
int num[128][128], lungimea_x, lungimea_y;
double rez;
void Suma()
{rez=0;
cout << "1) Suma=";
for(int y=1; y<=lungimea_y; y++)
{for(int x=1; x<=lungimea_x; x++)
{rez+=num[x][y];}}
cout << rez << endl;}
void Diferenta()
{rez=0;
cout << "2) Diferenta=";
void Sqrt()
{rez=0;
cout << "4) Radacina patrata: "<< endl;
void Ridicarea_la_putere()
{int power;
rez=0;
cout << "5) Ridicarea la putere: ^";
cin >> power;
for(int y=1; y<=lungimea_y; y++)
{for(int x=1; x<=lungimea_x; x++)
{rez=pow(num[x][y],power);
cout<<"["<<x<<"]["<<y<<"] elementul masivului:"<< num[x][y] <<"^"<<power
<<"="<<rez<<endl;}}}};
void main()
{ int elemente[128], lungimea;
cout << "Introduceti lungimea masivului: ";
cin >> lungimea;
Masivul primeste;
primeste.lungimea = lungimea;
memcpy(primeste.num, elemente, sizeof(elemente));
primeste.Suma();
cout << "===============================" << endl;
primeste.Diferenta();
cout << "===============================" << endl;
primeste.Produsul();
cout << "===============================" << endl;
primeste.Sqrt();
cout << "===============================" << endl;
primeste.Ridicarea_la_putere();
cout << "===============================" << endl;
Masivul_bidimensional Masivul_bi_primeste;
Masivul_bi_primeste.lungimea_x=lungimea_x;
Masivul_bi_primeste.lungimea_y=lungimea_y;
memcpy(Masivul_bi_primeste.num, double_elemente, sizeof(double_elemente));
Masivul_bi_primeste.Suma();
cout << "===============================" << endl;
Masivul_bi_primeste.Diferenta();
cout << "===============================" << endl;
Masivul_bi_primeste.Produsul();
cout << "===============================" << endl;
Masivul_bi_primeste.Sqrt();
cout << "===============================" << endl;
Masivul_bi_primeste.Ridicarea_la_putere();
cout << "===============================" << endl;
getch();}
Fig 4. Rezultatul 4