Skip to main content
Testna Učilnica FRI 24/25
  • Home
  • More
Close
Toggle search input
English ‎(en)‎
English ‎(en)‎ Slovenščina ‎(sl)‎ Македонски ‎(mk)‎ Русский ‎(ru)‎ 한국어 ‎(ko)‎
You are currently using guest access
Log in
Testna Učilnica FRI 24/25
Home
Expand all Collapse all
  1. progkog
  2. Rekurzivne funkcije
  3. Podizvajalci

Podizvajalci

Completion requirements
Due: Tuesday, 16 January 2024, 1:45 PM

Podizvajalci

  1. Starost, ki je na sliki zapisana pri Eriku, je napačna. Pravilna je 38 (s 83 leti bi bil starejši od svojega očeta).
  2. Te številke v resnici niso letnice, temveč cene. Drevo pa ne kaže rodbine, temveč gre za drevo podizvajalcev cenitev za dražbo.

Obvezna naloga

Cenitev naročimo pri eni od oseb v drevesu. V resnici pa dela ne opravi ta oseba, temveč cenitev delegira osebam, pod sabo. Pa tudi te ne opravijo dela same, temveč ga delegirajo. Šele oseba, ki nima podizvajalcev, dejansko opravi delo.

Kakšna je cena? - Če delo naročimo pri Alenki, bo cena 9 - kolikor piše. - Če delo naročimo pri Jožefu, ga bo delegiral Alenki, Petri in Aleksandru. Ti bodo zahtevali 9 + 7 + 5 cekinov. Jožef si vzame še 10 % provizije, torej bo skupna cena (9 + 7 + 5) * 1.1 = 23,1 cekinov. - Če delo naročimo pri Juriju, ga bo delegiral Francu in Jožefu. Franc zahteva 30 cekinov, Jurij pa, kot smo pravkar izračunali, vemo 23,1. Jurij na to vzame 10 %, torej je cena (30 + 23.1) * 1.1 = 58,41 cekinov. - Če delo naročimo pri Elizabeti, bo to stalo 50 (Ludvik) in 58,41 (Jurij) in 45 cekinov + provizija, torej (50 + 58,41 + 45) * 1.1 = 168,751 cekinov.

Napišite naslednje funkcije.

  • velikost_ekipe(oseba) prejme ime osebe in vrne število vseh oseb, ki jih ta oseba delegira, vključno z njo.
  • koncni_izvajalci(oseba) prejme ime osebe in vrne seznam vseh oseb, ki bodo dejansko opravile delo. To so tiste osebe, ki nimajo podizvajalcev.
  • cena(oseba) prejme ime osebe in vrne ceno, ki jo bo ta oseba zaračunala za delo (tako kot smo računali v gornjem primeru).

Dodatna naloga

EU ugotovi, da tole s podizvajalci ne gre nikamor več. Zato sprejme uredbo, po kateri je za določen tip dela dovoljeno najemati podizvajalce le do določene globine. Če je globina 0, to pomeni, da mora delo opraviti ta, ki smo ga najeli. Če je globina 1, to pomeni, da sme najemati le neposredne podizvajalce. Če je globina 2, smejo neposredni podizvajalci najeti podizvajalce na naslednjem nivoju, ti pa ne smejo najemati svojih podizvajalcev. In tako naprej.

Če za delo najamemo Adama in je globina omejena na 2, bodo delo opravili Viljem, Cilka, Elizabeta in Hans. (Pazi: Cilka je sicer takoj pod Adamom, vendar nima podizvajalcev, zato dela sama.)

Vsem funkcijam, ki si jih sprogramiral(a) za obvezno nalogo, dodaj še argument globina in poskrbi, da bodo vračale rezultate, skladne z uredbo.

Testi

  • testi.py testi.py
    13 January 2024, 9:21 PM
You are currently using guest access (Log in)
Powered by Moodle
Obvestilo o avtorskih pravicah