-
Notifications
You must be signed in to change notification settings - Fork 2
Exerciții POO
-
Creați o clasă BankAccount care primește la inițializare doi parametri: unul este numele băncii, iar celălalt este o sumă de bani. Creați apoi pe acestă clasă două metode, una care depunde bani în cont si alta care extrage. Fiecare dintre ele primește ca parametru o sumă de bani ce va fi depusă/extrasă. Metoda care extrage o sumă de bani nu va permite ajungerea la un sold negativ și va afișa un mesaj de genul "Fonduri insuficiente!".
-
Creați o clasă Person care primește la inițializare trei parametri: numele persoanei, un cont bancar și salariul cu valoarea implicită 0. Pentru că salariul este confidențial, atributul
salary
ar trebui să fie privat. Definiți o proprietate care permite setarea salariului, iar la interogare (obj.salary
) întoarce "Confidential!". Creați apoi o metodăreceive_salary()
care la apel va depune în contul bancar al persoanei salariul pe care aceasta îl are. -
Creați clasa SpecialBankAccount derivată din BankAccount care permite ajungerea la un sold negativ (descoperire de cont). Aceasta va avea un atribut
overdraft
care specifică suma maximă care se poate retrage în plus față de debitul contului. Metoda de extragere va afișa un mesaj de genul "Creditul maxim a fost atins." dacă se încearcă extragerea unei sume mai mari. Pentru a testa funcția implementată, creați o nouă metodămake_shopping()
pe clasa Person prin intermediul căreia o persoane poate face cumpărături de o anumită sumă de bani. -
Creați o clasa Zar care întoarce un număr random între 1 și 6 la apelarea metodei
roll
. Creați o altă clasă ZarNecinstit care întoarce întotdeauna ceva între 1 și 6 care nu e random, ci fix, la apelarea metodeiroll
. Creați o listă de 5 zaruri atât corecte și incorecte și iterați pe ele apelând metodaroll
(duck typing).