This shows you the differences between two versions of the page.
poo:laboratoare:03 [2020/10/20 09:06] carmen.odubasteanu |
poo:laboratoare:03 [2020/10/20 11:33] (current) carmen.odubasteanu [Problema 1] |
||
---|---|---|---|
Line 3: | Line 3: | ||
====Problema 1==== | ====Problema 1==== | ||
Definiți o clasă **//Fractie//** care modelează lucrul cu fracțiile. Membrii acestei clase sunt: | Definiți o clasă **//Fractie//** care modelează lucrul cu fracțiile. Membrii acestei clase sunt: | ||
- | * două atribuite de tip **//double//** pentru numărătorul fracției, respectiv numitorul ei; | + | * două atribuite de tip **//int//** pentru numărătorul fracției, respectiv numitorul ei; |
- | * constructorul cu doi parametri de tip //**double**//, pentru setarea celor două parți ale fracției (numărător și numitor); | + | * constructorul cu doi parametri de tip //**int**//, pentru setarea celor două parți ale fracției (numărător și numitor); |
* un constructor fără parametri care apelează constructorul anterior; | * un constructor fără parametri care apelează constructorul anterior; | ||
* o metodă, cu un **singur** parametru, de calcul a sumei a două fracții; | * o metodă, cu un **singur** parametru, de calcul a sumei a două fracții; | ||
Line 126: | Line 126: | ||
====Problema 5==== | ====Problema 5==== | ||
+ | Implementați clasa **//Punct//** care definește un punct din spațiul 2D. | ||
+ | |||
+ | **Datele clasei (private):** | ||
+ | * două nr. întregi reprezentând cele două coordonate ale punctului. | ||
+ | |||
+ | **Conctructorul clasei:** | ||
+ | * un constructor fără parametri care instanțiază punctul ''O(0, 0)''. | ||
+ | |||
+ | |||
+ | **Metodele clasei:** | ||
+ | * ''int getX()'' = întoarce abscisa punctului; | ||
+ | * ''void setX(int x)'' = seteaza abscisa punctului; | ||
+ | * ''int getY()'' = întoarce ordonata punctului; | ||
+ | * ''void setY(int y)'' = setează ordonata punctului; | ||
+ | * ''String toString()'' = returnează un String de forma ''(x, y)''; | ||
+ | * ''double distance(int, int)'' = calculează distanța dintre 2 puncte; | ||
+ | * ''double distance(Punct p1)'' = calculează distanța dintre 2 puncte. | ||
+ | |||
+ | Creați o clasă **//Test//**, în același pachet cu clasa **//Punct//**, care conține o metodă **//main//** care calculează distanța dintre punctele ''A(1, 2)'' si ''B(-1, 3)''. | ||
+ | |||
+ | |||
+ | Puteți accesa datele clasei //**Punct**// în metoda //**main**// din clasa //**Test**//? | ||
+ | |||
+ | ====Problema 6==== | ||
Să se definească o clasă **//Graph//** care să descrie un graf ponderat orientat care are nodurile numerotate de la $1$. | Să se definească o clasă **//Graph//** care să descrie un graf ponderat orientat care are nodurile numerotate de la $1$. | ||
Line 194: | Line 218: | ||
} | } | ||
</code> | </code> | ||
- | |||
- | ====Problema 6==== | ||
- | Implementați clasa **//Punct//** care definește un punct din spațiul 2D. | ||
- | |||
- | **Datele clasei (private):** | ||
- | * două nr. întregi reprezentând cele două coordonate ale punctului. | ||
- | |||
- | **Conctructorul clasei:** | ||
- | * un constructor fără parametri care instanțiază punctul ''O(0, 0)''. | ||
- | |||
- | |||
- | **Metodele clasei:** | ||
- | * ''int getX()'' = întoarce abscisa punctului; | ||
- | * ''void setX(int x)'' = seteaza abscisa punctului; | ||
- | * ''int getY()'' = întoarce ordonata punctului; | ||
- | * ''void setY(int y)'' = setează ordonata punctului; | ||
- | * ''String toString()'' = returnează un String de forma ''(x, y)''; | ||
- | * ''double distance(int, int)'' = calculează distanța dintre 2 puncte; | ||
- | * ''double distance(Punct p1)'' = calculează distanța dintre 2 puncte. | ||
- | |||
- | Creați o clasă **//Test//**, în același pachet cu clasa **//Punct//**, care conține o metodă **//main//** care calculează distanța dintre punctele ''A(1, 2)'' si ''B(-1, 3)''. | ||
- | |||
- | |||
- | Puteți accesa datele clasei //**Punct**// în metoda //**main**// din clasa //**Test**//? | ||
====Problema 7==== | ====Problema 7==== |