Blok

Definirajte razred Blok, ki opisuje stanovanjski blok s podanim številom nadstropij. V vsakem nadstropju bo eno stanovanje. Razred naj ima naslednje metode:

  • Konstruktor sprejme kot argument število nadstropij v bloku.
  • vseli(nadstropje, ime) v nadstropje nadstropje vseli osebo z imenom ime in vrne True. Če je stanovanje že zasedeno, pa pusti v njem prejšnjega lastnika in vrne False.
  • stanovalec(nadstropje) vrne ime stanovalca v podanem nadstropju. Če je stanovanje še prazno, vrne None.
  • izseli(nadstropje) sprazni stanovanje v nadstropju nadstropje. Metoda ne vrne ničesar.
  • kamorkoli(ime) vseli osebo s podanim imenom v najvišje prosto stanovanje in vrne True. Če je ves blok že povsem poln, vrne False.

Naselje

Definirajte razred Naselje, ki opisuje stanovanjsko naselje s poimenovanimi hišami. Ima naj naslednje metode:

  • Konstruktor sprejme kot argument seznam z imeni hiš.
  • vseli(hisa, ime) v hišo hisa vseli osebo z imenom ime in vrne True. Če je hiša že zasedena, pusti v njem prejšnjega lastnika in vrne False.
  • stanovalec(hisa) vrne ime stanovalca v podani hiši. Če je še prazna, vrne None.
  • izseli(hisa) sprazni podano hišo. Metoda ne vrne ničesar.
  • prostih() vrne število prostih hiš.

Knjižnica

Definirajte razred Knjizica, v katerem bo knjižnica beležila, katere knjige ima nekdo sposojene, in računala zamudnino. Objekt Knjizica se nanaša na posameznega člana knjižnice.

  • Konstruktor naj nima argumentov in naj le pripravi, kar mora.
  • izposodi(naslov, datum) zabeleži, da si je lastnik te knjižice na podani datum izposodil knjigo s podanim naslovom.
  • izposojeno() vrne množico z naslovi vseh knjig, ki jih ima trenutno izposojene lastnik Knjizice.
  • vrni(naslov) pokličemo, ko član vrne določeno knjigo.
  • zamudnina(danasnji_datum) izračuna zamudnino.

Z datumi in zamudnino je takole. Datum je podan kot številka – konkretno, gre za število dni, odkar je knjižnica odprta. Če je datum, recimo, 42, to pomeni 42. dan po odprtju knjižnice.

Knjige si je možno izposoditi za 21 dni. Če si nekdo izposodi knjigo na 10. dan, potem na 31. dan še ne plača zamudnine. Kasneje znaša zamudnina en evro za vsak dan za vsako knjigo. Recimo, da si nekdo izposodi dve knjigi, eno na 10. dan in eno na 15. dan. Prvo knjigo ima lahko do 31. dneva in drugo do 36. dneva. Funkcija zamudnina(40) (torej "danes je 40. dan, koliko zamudnine je dolžan) mora vrniti 13, to je, 9 + 4 – devet za prvo knjigo in 4 za drugo.

Last modified: Wednesday, 31 May 2023, 9:43 AM