Riešenie úloh 14. cvičenia¶
Riešenie:
class Cas: def __init__(self, hodiny, minuty): self.hodiny = hodiny self.minuty = minuty def vypis(self): print('čas je', f'{self.hodiny}:{self.minuty:02}')
Riešenie:
class Cas: def __init__(self, hodiny, minuty): self.hodiny = hodiny self.minuty = minuty def vypis(self): print('čas je', f'{self.hodiny}:{self.minuty:02}') def str(self): return f'{self.hodiny}:{self.minuty:02}'
Riešenie:
class Cas: def __init__(self, hodiny, minuty): self.hodiny = hodiny self.minuty = minuty def vypis(self): print('čas je', f'{self.hodiny}:{self.minuty:02}') def str(self): return f'{self.hodiny}:{self.minuty:02}' def pridaj(self, hodiny, minuty): self.hodiny += hodiny + (self.minuty+minuty) // 60 self.minuty = (self.minuty+minuty) % 60
Riešenie:
def neskor(cas, hodiny, minuty): novy = Cas(cas.hodiny, cas.minuty) novy.pridaj(hodiny, minuty) return novy
alebo:
def neskor(cas, hodiny, minuty): novy = Cas(hodiny, minuty) novy.pridaj(cas.hodiny, cas.minuty) return novy
Riešenie:
zoznam = [Cas(8, 10)] for i in range(14): zoznam.append(neskor(zoznam[-1], 0, 50)) for c in zoznam: print(c.str(), end=' ')
alebo:
cas = Cas(8, 10) zoznam = [cas] for i in range(14): cas = neskor(cas, 0, 50) zoznam.append(cas) for c in zoznam: print(c.str(), end=' ')
Riešenie:
class Zlomok: def __init__(self, citatel, menovatel): self.citatel, self.menovatel = citatel, menovatel def vypis(self): print(f'zlomok je {self.citatel}/{self.menovatel}')
Riešenie:
class Zlomok: def __init__(self, citatel, menovatel): self.citatel, self.menovatel = citatel, menovatel def vypis(self): print(f'zlomok je {self.citatel}/{self.menovatel}') def str(self): return f'{self.citatel}/{self.menovatel}' def float(self): return self.citatel / self.menovatel
Riešenie:
class Body: def __init__(self): self.body = 0 def pridaj(self): self.body += 1 def uber(self): self.body -= 1 def kolko(self): return self.body
Riešenie:
class Subor: def __init__(self, meno_suboru): self.meno = meno_suboru with open(meno_suboru, 'w'): pass def pripis(self, text): with open(self.meno, 'a') as subor: print(text, file=subor) def vypis(self): with open(self.meno) as subor: for riadok in subor: # môže byť aj print(subor.read()) print(riadok, end='')
Riešenie:
class Zoznam: def __init__(self): self.zoznam = [] def pridaj(self, prvok): if prvok not in self.zoznam: self.zoznam.append(prvok) def vyhod(self, prvok): if prvok in self.zoznam: self.zoznam.remove(prvok) def je_v_zozname(self, prvok): return prvok in self.zoznam def vypis(self): print('zoznam:', ', '.join(self.zoznam))
Riešenie:
class TelefonnyZoznam: def __init__(self): self.zoznam = [] def vypis(self): for meno, telefon in self.zoznam: print(f'{meno}: {telefon}') def pridaj(self, meno, telefon): for i in range(len(self.zoznam)): if self.zoznam[i][0] == meno: self.zoznam[i] = meno, telefon return self.zoznam.append((meno, telefon))
Riešenie:
import tkinter class Okno: def __init__(self, text): self.canvas = tkinter.Canvas(height=100) self.canvas.pack() self.id = self.canvas.create_text(190, 50, text=text, font='arial=50') def zmen(self, text): self.canvas.itemconfig(self.id, text=text) def farba(self, farba): self.canvas.itemconfig(self.id, fill=farba)
okno = Okno('ahoj') okno.farba('red') okno.zmen('Python') okno2 = Okno('hello') okno2.farba('green')