class Pravokotnik:
    '''Pravokotnik je podan z dolžino stranic in tocko
       v levem spodnjem kotu'''
    
    def __init__(self, x, y, stA, stB):
        '''Predpostavimo, da so vsi podatki pravilni!!
           vsi so tipa int
           stA in stB več kot 0
        '''
        self._levoSpodaj = (x, y)
        self._sta = stA
        self._stb = stB
        
        # kako ukrepati, ce sta stA "čudna"
        # A - sprožiti izjemo
        # B - privzamemo zacetno vrednost 1 in uporabimo set metodi!
        # C - ?
        
    def __str__(self):
        return f'Pravokotnik z izhodiscem {self._levoSpodaj} dimenzij {self._sta} x {self._stb}'
    
    def __repr__(self):
        return 'Pravokotnik({self._levoSpodaj[0]}, {self._levoSpodaj[1]}, {self._sta}, {self._stb})'
    # SET 
    def spremeni_izhodisce(self, novaT):
        '''Nastavi novo izhodisce'''
        # TODO: preveriti, ali je novaT par intov!!!
        self._levoSpodaj = novaT
        
    def spremeni_A(self, a):
        '''spremeni dolžino stranice a
        predpostavka: a je int!
        '''
        if a <= 0:
            raise Exception('Stranica ne more biti negativna')
        self._sta = a
        
    def spremeni_B(self, b):
        '''spremeni dolžino stranice a
           predpostavka: a je int!
        '''
        if b <= 0:
            raise Exception('Stranica ne more biti negativna')
        self._stb = b
        
    # GET
    def a(self):
        return self._sta
    def b(self):
        return self._stb
    def izhodisce(self):
        return self._levoSpodaj