Sunteți pe pagina 1din 7

ROUMANIE JROMASIZ ROMANIA

oTOENTITE CARTE DE IDENTITATE


SERIA GG N 515685 1ETTY
CNP5020222410013 W8LST
Nume/Nom/Last name
GEORGESCU
Prenume/Prenom/First neme
ALEXANDRU
Cetatenie/Nationalite/Nati on ality Sex/Sexe/Sex
Numele: Român / ROU M
Loc nastere/ Lieu de naissance Place of birth
Prenumele: aAar.Mas..************ Mun.Bucure_tiSec.
Domicilu/Adresse/Address
Grupa: 1.h3. Jud.GR Mun.Giurgiu Str.G-ralHenri Mathias
Berthelot bl.79 sc.B et.1 ap.26
915 GR Emisa de/Delivree par/lssued by Valabilitate/Validite/Validity
1.[10p] ldentificati potentjialele erori _i dai o variant pentru SPCJEP GIURGIU 12.02.20-22.02.2024
#include "iostream" IDROUGEORGESCU<<ALEXANDRU<<<<<<<<<<<
using namespace std;
3 GG515685<4ROUO202228M240222854100130
4
class Vehicle
public
6 string brand "Masina"
void claxon ()
8
cout "Tiit, tiit! \n";
10
1

12
13 class Car: protected Vehicle
4

15 public
6 string model = "Electrica"
17
18
9 int main)
20
21 Car myCar1;
22 Vehicle myCar2;
23
24 myCar1.claxon();
25
myCar2.claxon();
cout myCar1.model " " + myCar1.brand;
26
27 return 0:
28

2. [10p] Räspundeti urmätoarelor întrebri grilä.


2.1 Daca omitei orice argument al constructorului la instantierea obiectului, atunci va trebui s utilizai valori implicite
a) Pentru toi parametri constructorului
b) Pentru toti parametri de la dreapta argumentului respectiv
c)Pentrutoi parametrii din stânga argumentului respectiv
d Pentru nici un alt parametru
2.2 O list de initjalizare a unui constructor are rezultate similare operaiei de
a) suprascriere (overriding)
b) atribuire (assignment)
c)redeclarare (redeclaring)
d) ie_irelafi_are (outpu)
2.3 Trebuie så oferim un constructor pentru clasa derivat:
a) intotdeauna
b) dacá constructorul clasei de bazå cere argumente
c)niciodat
d) dac constructorul clasei de bazá nu necesit argumente

.[10p] Cum functioneazà preluarea obiectelor într-o functie (metod)


a) prin valoare ('call by value"),
b) prin referin ('call by reference'"),
c)prin pointer ('call by address").
Creati o functie (metoda) printobj cu trei versiuni, pentru a demonstra cele trei cazuri.

)
4. [10p] Construiti clasa OS avànd
un atrbut Mem, numr real, inaccesibil in afara clasei dar accesibil in clasele derivate
un setter
i geter pentru acest atribut (declarate in clas, la alegerea Dvs unde vor fi defini)
un constructor
implicit (declarat in interiorul clasei _i definit in exteriorul acesteia)
un constructor de
copiere (declarat in clas _i definit in exteriorul acesteia)
un constructor cu 1
parametru (declarat _i definit in interiorul clasei)
metodà Optimize care cre_te valoarea Mem cu 15%
(*=1.15)
Construiti o clasà Android derivat din OS cu un modificator de acces la mo_tenire care nu schimbà vizibilitatea elementelor claser
de bazà. Aceastà clasà are umtoarele elemente declarate _i definite in interiorul clasei
atributul AppsNmb, numär întreg. inaccesibil in afara clasei
un constructor cu 2
parametri
o unul pentru atributul mo_tenit (Mem)
ocelälalt corespunzând atributului AppsNmb al clasei derivate
metodà BuyApp care cre_te valoarea AppsNmb cu 1 _i scade Mem cu 5%
(*=0.95)
De asemenea scrieti o functie friend denumit Free_Memory care preia un pointer ctre un obiect de tipul Android, apoi
calculeazà _i întoarce o valoare fractionarä: Free Memory Mem AppsNmb 50
-
*

in functia main:
pentru clasa 0S
o cititi de la intrare o valoare pentru Mem (valorile valide dac se afä îintre 200 _i 8000)
declarai un obiect Computer de tipul OS, _i stablii valoarea atributului Mem la cea citit anterior
afi_ai atributul obiectului Computer prin intermediul unui getter (pe linie nouá)
creati obiectul Laptop, drept copie a obiectului Computer
apelai metoda Optimize a obiectului Laptop
oafisati atributul obiectului Laptop prin intermediul unui getter (pe linie nou)
Pentru clasa Android
o Cititi noi valori pentru Mem _i AppsNmb.
valoarea acceptatà pentru Mem este valid dacà se afâ între 28e _i 8e0e.
valoarea acceptlatà pentru AppsMmb este validà dac este situat intre e _i 159.
Dedlarati un obiect Samsung$21 de tip And roid utilizánd valorie citite anterior.
Pentru acest obiect
apelai metoda BuyApp
afi_at memoria _i rezultatul apelului Free_ Memory (pe linie nouä)

Timp de lucru efectiv: 1h:30m


Jkhorolba
Pou 4 236

#acluole "nlieam
lnolnut

inkuee unteon

-KM dadsy t Miny dbla ya


<AhunyK>
#inclndle
biny helibal udirs
Bombdiley
will slinlo
ho togjain

Tut, tul

221
2.2
a TtrtO6*zar) hse nrleue th lopug alar
elo n t Kuetaryh 0

ot et otyhf tvultl;

Auctan A(25,5.2);
(A kuglt,A.odl)
puirn ,

l qint Coy ( velorgle "B) {

inl nat){ ketaryk A(1s,5 2),


piC A);
Bolwn,fF
pina wiel patlj (Joclera 6),

tol 8.kag hlee" "<c heteulth xealo

intnin ({
betank Ala ,6.)
it@y (A)
um ,

?
inedeole inleo 7 elen ho.br;publie O3 {

lroial ( i t nnw ii, lat rwg );O(-

9al

grel Buylyt(){
arn/lnb tt,

JonX095,

050:
0G(0T491), hienal Llt bs. eaniy (6dd *aA)F,
oiAim-f=pttrt*G
(5 (Ai-t n)1

J M i n = 115,
t h. onts
o-Mtd ->Men -A9iyenlnk*se,

05::09(0S4 )){
i t jioen ()

heltehn O
09 ompiuhen(nouim)

eplen Comel),

outh. s200 ll nom 28ece} &x(nourRso | neur En2159))|

mlng-S21 (ne., e.A


napng-S21. htyp )
hJasy-S2 1.gel-ÍUrnd)<k boe MEmiy (kosuy. Se 1)k< l ,
otunE,

S-ar putea să vă placă și