CalculadoraSimples

   1 #!/usr/bin/python
   2 """
   3 Calculadora simples.
   4 
   5 Para números em ponto flutuante utilize "." e não "," p.e.: 2.14
   6    
   7 """
   8 __author__ = "Leonardo Gregianin"
   9 
  10 import sys
  11 
  12 class Valor:
  13     c = 0.000
  14     d = 0.000
  15     e = 0.000
  16     
  17     def valor1(self):
  18         try:
  19             self.c = input('Primeiro Valor: ')
  20             c = self.c
  21             return c
  22         except:
  23             print 'Inválido, digite um número! Se for float digite . e não ,'
  24         self.valor1()
  25 
  26     def valor2(self):
  27         try:
  28             self.d = input('Segundo Valor: ')
  29             d = self.d
  30             return d
  31         except:
  32             print 'Inválido, digite um número! Se for float digite . e não ,'
  33         self.valor2()
  34 
  35 class Operador:
  36     
  37     def somar(self, c, d):
  38         self.e = c + d
  39         e = self.e
  40         return e
  41 
  42     def subtrair(self, c, d):
  43         self.e = c - d
  44         e = self.e
  45         return e
  46     
  47     def multiplicar(self, c, d):
  48         self.e = c * d
  49         e = self.e
  50         return e
  51     
  52     def dividir(self, c, d):
  53         self.e = c / d
  54         e = self.e
  55         return e
  56 
  57 class Resultado:
  58     
  59     def resultado(self, e, c, d):
  60         print('Resultado: %f')%(d)
  61    
  62 
  63 if __name__ == "__main__":
  64 
  65     p1 = Valor()
  66     v1 = p1.valor1()
  67     v2 = p1.valor2()
  68 
  69     p2 = Operador()
  70 
  71     p3 = Resultado()
  72     
  73     operacao = raw_input('Operação: (+) (-) (*) (/) ou (s)air ]: ')
  74     
  75     while operacao:
  76         
  77         if operacao == 's':
  78             sys.exit()
  79 
  80         if operacao == '+':
  81             n1 = p2.somar(v1, v2)
  82             p3.resultado(None, None, n1)
  83 
  84         if operacao == '-':
  85             n1 = p2.subtrair(v1, v2)
  86             p3.resultado(None, None, n1)
  87 
  88         if operacao == '*':
  89             n1 = p2.multiplicar(v1, v2)
  90             p3.resultado(None, None, n1)
  91 
  92         if operacao == '/':
  93             n1 = p2.dividir(v1, v2)
  94             p3.resultado(None, None, n1)
  95 
  96         break

CalculadoraSimples (editada pela última vez em 2012-03-23 17:15:52 por LeonardoGregianin)