Advertisement
Poganu

Untitled

Jun 23rd, 2020
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.16 KB | None | 0 0
  1. # ------------------------------
  2. # Se considera un sistem de salarizare pentru salariati care va avea in vedere
  3. #       - vechimea in munca
  4. #       - numarul de ore de munca de noapte
  5. #       - numarul de ore suplimentare
  6. # Sa se sorteze salariatii dupa salariul obtinut
  7.  
  8. '''
  9. dataAngajarii
  10. listaOreZi
  11. listaOreNoapte
  12.  
  13. atribute:
  14.    nume
  15.    dataAngajarii
  16.    listaOreZi = [8 for i in range(20)]
  17.    listaOreNoapte = 0 for i in range(20)]
  18.    salar = 0
  19.  
  20. functii:
  21.    __init__(n, d)
  22.    __repr__
  23.    calculSalar
  24.    adaugaOre(nrOreLunare, Zi)
  25.    adaugaOreNoapte(nrOreLunare, Zi)
  26.  
  27. salarOra = 16
  28. '''
  29. class Angajat:
  30.     def __init__(self, n, d, s, tz, tn, os):
  31.         self.nume = n
  32.         self.dataAngajarii = d
  33.         self.listaOreZi = [8 for i in range(20)]
  34.         self.listaOreNoapte = [0 for i in range(20)]
  35.         self.listaOreSuplimentare = [0 for i in range(20)]
  36.         self.salar = s
  37.         self.tarifOraZi = tz
  38.         self.tarifOraNoapte = tn
  39.         self.sporOreSuplimentare = os
  40.  
  41.     def __repr__(self):
  42.         print("Angajatul: ", self.nume)
  43.         print("Data angajare: ", self.dataAngajarii)
  44.         print("Ore de zi: ", self.listaOreZi)
  45.         print("Ore de noapte: ", self.listaOreNoapte)
  46.  
  47.     def adaugaOreZi(self, ore):
  48.         self.listaOreZi.append(ore)
  49.         #self.listaOreZi += ore
  50.  
  51.     def adaugaOreNoapte(self, ore):
  52.         self.listaOreNoapte += ore
  53.  
  54.     def afiseazaSalar(self):
  55.         return self.salar
  56.  
  57.     def calculSalar(self):
  58.         totalOreZi = 0
  59.         for i in self.listaOreZi:
  60.             totalOreZi += i
  61.  
  62.         totalOreNoapte = 0
  63.         for i in self.listaOreNoapte:
  64.             totalOreNoapte += i
  65.  
  66.         totalOreSuplimentare = 0
  67.         for i in self.listaOreZi:
  68.             if i > 8:
  69.                 a = 8 - i
  70.                 self.listaOreSuplimentare.append(i)
  71.  
  72.         self.salar = self.tarifOraZi * totalOreZi + self.tarifOraNoapte * \
  73.                      totalOreNoapte + self.sporOreSuplimentare
  74.         return self.salar
  75.  
  76.  
  77. Ion = Angajat("Ion Dumitru", "10 Iunie", 3000, 10, 12, 5 )
  78. Ion.adaugaOreZi(0)
  79. a = Ion.afiseazaSalar()
  80. b = Ion.calculSalar()
  81.  
  82. print(a)
  83. print(b)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement