Ierarhii de clase

Previzualizare laborator:

Extras din laborator:

Sa se defineasca ierarhia de clase: Punct-Placa rotunda-Vas cilindric. Clasa Vas cilindric trebuie sa contina metode de calculare a volumului vasului. Ultimele 2 clase din ierarhie trebuie sa aiba constructori. Sa se defineasca de asemenea functia de afisare pentru fiecare clasa. Sa se demonstreze lucrul fiecarei functii membre. Sa se scrie programul in care se declara 2 vase, se determina care din ele este mai mare si care din cele 2 vase poate fi introdus in celalalt.

II.Mersul lucrarii:

1) Introducem directivele necesare: stdio.h, conio.h, iostream.h, math.h, stdlib.h, string.h, <graphics.h>.

2) Definim 3 clase prin mostenire, astfel incit clasa Placa rotunda sa fie derivate clasei Punct, iar clasa Vas cilindric sa fie derivate clasei Placa rotunda.

3) Pentru fiecare clasa in parte definim constructorii implicit si explicit, si cite o functie de afisare. in clasa Punct aceasta functie afiseaza coordonatele punctului (centrului) si il deseneaza pe ecran; in clasa Cerc se apeleaza functia de afisare din clasa Punct, afiseaza lungimea razei si se deseneaza cercul; iar in clasa Cilindru se apeleaza respectiv functia de afisare din clasa Cerc, se afiseaza valoarea inaltimii si se deseneaza cilindrul in totalitate.

4) in clasa Cerc cream o functie care calculeaza aria cercului, iar in clasa Cilindru definim functia care calculeaza volumul cilindrului, cu ajutorul apelarii functiei de calculare a ariei cercului.

5) Initializam grafica in functia de baza.

6) Cream 2 obiecte care reprezinta 2 cilindre.

7) Ulterior se compara volumele acestor cilindre si se verifica care din ele va fi introdus unul in celalalt si daca va fi posibil acest lucru.

III. Codul programului:

#include <conio.h>

#include <iostream.h>

#include <math.h>

#include <stdio.h>

#include <graphics.h>

#include <string.h>

#include <stdlib.h>

const float pi=3.14;

/***************************class punct**************************************/

class punct

{

public:

char nume[10];

int x,y;

punct(); //constructorul implicit class punct

punct(char *n, int X, int Y); //constructorul explicit class punct

void print_p(); //functia de afisare class punct

};

punct::punct() //descrierea constructorului implicit class punct

{

strcpy(nume,"");

x=0;

y=0;

}

Download gratuit

Documentul este oferit gratuit,
trebuie doar să te autentifici in contul tău.

Structură de fișiere:
  • Ierarhii de clase.doc
Alte informații:
Tipuri fișiere:
doc
Diacritice:
Nu
Nota:
9/10 (1 voturi)
Anul redactarii:
2009
Nr fișiere:
1 fisier
Pagini (total):
5 pagini
Imagini extrase:
5 imagini
Nr cuvinte:
898 cuvinte
Nr caractere:
5 535 caractere
Marime:
11.40KB (arhivat)
Publicat de:
Anonymous A.
Nivel studiu:
Facultate
Tip document:
Laborator
Domeniu:
Limbaje de Programare
Tag-uri:
clase, programare, sintaxa
Predat:
la facultate
Materie:
Limbaje de Programare
Sus!