class Clovek: def __init__(self, nazev="", vek=0): self.jmeno = nazev self.vek = vek self.zamnou = None def rekni(self, text): return text def poslitodal(self, text): posilam = self.rekni(text) # if self.zamnou != None: if self.zamnou: self.zamnou.poslitodal(posilam) else: # if self.zamnou == None print(posilam) return def __str__(self): return f"Clovek {self.jmeno}: {self.vek}" def pozdrav(self): return f"Ahoj, jsem {self.jmeno}." def zzensti(self): # self.jmeno = self.jmeno + "a" self.jmeno += "a" class Nedoslychavec(Clovek): def rekni(self, text): rikam = text[:-1] # print(f"{self.jmeno} dostal {text} a posílá {rikam}") return rikam class Clevek(Clovek): def rekni(self, text): rikam = text.replace('o', 'e').replace('a', 'e').replace('o', 'e') return rikam class Echolalik(Clovek): def rekni(self, text): rikam = f"{text}, {text}..." return rikam tomas = Clovek("Tomáš") rudolf = Clovek("Rudolf", 25) petr = Nedoslychavec("Petr") honza = Echolalik("Jan") masa = Nedoslychavec("Marie") nastya = Clevek("Anastasiia") tomas.zamnou = rudolf rudolf.zamnou = petr petr.zamnou = honza honza.zamnou = masa masa.zamnou = nastya tomas.poslitodal("Ptakopysk") tomas.poslitodal("Už je 17:51.") tomas.poslitodal("Na stropě je chleba s máslem.") def poslitodal_bez_rekurze(text, prvni): aktualni = prvni posilam = text while aktualni.zamnou: posilam = aktualni.rekni(posilam) aktualni = aktualni.zamnou print(aktualni.rekni(posilam)) poslitodal_bez_rekurze("Ježura", tomas) poslitodal_bez_rekurze("Ptakopysk", tomas) zadani = "Ptakopysk" """poslano = tomas.rekni(zadani) poslano = rudolf.rekni(poslano) poslano = petr.rekni(poslano) poslano = honza.rekni(poslano) poslano = masa.rekni(poslano) poslano = nastya.rekni(poslano)""" """poslano = nastya.rekni( masa.rekni( honza.rekni( petr.rekni( rudolf.rekni( tomas.rekni(zadani) ) ) ) ) )""" # textova_repre = str(rudolf) #pozdravy = f"{tomas.pozdrav()} {tomas.vek} {rudolf.pozdrav().upper()}" #print(pozdravy) #rudolf.zzensti() #rudolf.pozdrav() #print(rudolf) #print(tomas) #print(rudolf) #rudolf.vek = 34 #print(rudolf)