ohms law calculator
class ohm(object): """ Class for Ohm Law Calculation , You can get Resistance , Current or voltage , if you have Two Values of This Three """ def __init__(self,r,i,v): self.r=r self.i=i self.v=v def get_volt(self): #Law : Voltage = Resistance * Current "Get the Value of Voltage" if self.r ==0 or self.i==0: return "Values must be greater than '0' " else: print ('V: ', self.r*self.i) print ('I: ', self.i) print ('R: ', self.r) print ('W: ', (self.r*self.i)*self.i) return #self.r*self.i def get_current(self): #Law : Current = Voltage / Resistance "Get the value of Current" if self.v ==0 or self.r==0: return "Values must be greater than '0' " else: print ('V: ', self.v) print ('I: ', self.v/self.r) print ('R: ', self.r) print ('W: ',(self.v/self.r)*self.v) return #self.v/self.r def get_resistance(self):#Law : Resistance = Voltage / Current "Get the Value of Resistance" if self.v==0 or self.i==0: return "Values must be greater than '0' " else: print ('V: ', self.v) print ('I: ', self.i) print ('R: ', self.v/self.i) print ('W: ', self.v*self.i) return #self.v/self.i #User must enter Two value from (Resistance ,Current ,Voltage) values eye=0 #This for check errors try: r=float(input('Enter R:: ')) except: eye+=1 try: i=float(input('Enter I:: ')) except: eye+=1 try: v=float(input('Enter V:: ')) except: eye+=1 if eye>=2 : print ('ERROR: Enter atlest Two Values') #import the right method from class ohm to get result of calculations try : if r and i : v=0 ohm(r,i,v).get_volt() #print ('Voltage = ',ohm(r,i,v).get_volt(),'Volts') except : pass try: if v and r: i=0 ohm(r,i,v).get_current() #print ('Current = ',ohm(r,i,v).get_current(),'Amps') except : pass try: if v and i: r=0 ohm(r,i,v).get_resistance() #print ('Resistance = ',ohm(r,i,v).get_resistance(),'Ohms') except SubError as Err : pass