from wxPython.wx import * def konto(czas,okres,p,kwota): a=1.0*czas/okres #czas - dlugosc wkladu, okres - co ile naliczane wszystkow miesiecy proc=0.01*(p)/12*okres #p- oprocentowanie w skali roku, proc - procenty na okres while a>0: kwota=kwota+(1.0*kwota*proc)-(0.2*kwota*proc) a=a-1 kwota="%5.2f" %kwota return kwota class Form1(wxPanel): def __init__(self, parent, id): wxPanel.__init__(self, parent, id) #tekscior self.tekscior = wxStaticText(self, -1, "Obliczanie stanu konta", wxPoint(140,20)) #wprowadzamy dane czas1 = wxStaticText(self, -1, "Na ile lat ma byc zalozona lokata (w miesiacach)?", wxPoint(70,45)) self.czas = wxTextCtrl(self, 20, " ", wxPoint(120, 60), wxSize(140,-1)) okres1 = wxStaticText(self, -1, "Co ile miesiecy sa naliczane odsetki?", wxPoint(100,85)) self.okres = wxTextCtrl(self, 20, " ", wxPoint(120, 100), wxSize(140,-1)) p1 = wxStaticText(self, -1, "Jakie jest oprocentowanie w skali roku?", wxPoint(95,125)) self.p = wxTextCtrl(self, 20, " ", wxPoint(120, 140), wxSize(140,-1)) kwota1 = wxStaticText(self, -1, "Ile pieniedzy chcesz wplacic?", wxPoint(120,165)) self.kwota = wxTextCtrl(self, 20, " ", wxPoint(120, 180), wxSize(140,-1)) #guior self.guzior =wxButton(self, 10, "Licz", wxPoint(150, 220)) EVT_BUTTON(self,10,self.licz) self.Show(true) def licz(self,event): try: a=int(self.czas.GetValue()) b=int(self.okres.GetValue()) c=float(self.p.GetValue()) d=int(self.kwota.GetValue()) e=konto(a,b,c,d) #okienko z wynikiem d=wxMessageDialog( self, "Saldo\n" +e,"Wynik", wxOK|wxCENTER) d.ShowModal() # Shows it d.Destroy() except: #okienko z bledem fake=wxMessageDialog( self, "W gumki lecisz??\n","Error", wxOK|wxICON_WARNING) fake.ShowModal() # Shows it fake.Destroy() app = wxPySimpleApp() frame = wxFrame(None, -1, " kalkulator", size=(390,300)) Form1(frame,-1) frame.Show(1) app.MainLoop()