Ver Mensaje Individual
  #1 (permalink)  
Antiguo 10/02/2012, 17:35
Avatar de BaByRoDrI
BaByRoDrI
 
Fecha de Ingreso: julio-2009
Ubicación: Mexico
Mensajes: 60
Antigüedad: 14 años, 10 meses
Puntos: 1
Pregunta Empezando con python. Calcular ecuaciones de 2° grado

Estoy empezando a programar en python gracias a un tutorial de maestros del web, y después de de haber leído el primer capitulo y leer un poco de la documentación decidi tomar un código que había escrito en C y pasarlo a Python, al ejecutarlo en Eclipse me va bien, solo quería ver que cosas podría mejorar y algunas buenas practicas que pueda seguir.

El código:
Código Python:
Ver original
  1. '''
  2. Created on 10/02/2012
  3.  
  4. @author: rodrigo
  5. '''
  6. def calcular(a, b, c):
  7.     import math
  8.     disc = (math.pow(b, 2)) - (4 * a * c)
  9.     if disc > 0:
  10.         x1 = (-b + math.sqrt(disc)) / (2 / a)
  11.         x2 = (-b - math.sqrt(disc)) / (2 / a)
  12.         print "\n\nLa ecacuacion tiene dos posibles soluciones: x1 = %.2f y x2 = %.2f" % (x1, x2)
  13.     else:
  14.         if disc == 0:
  15.             x1 = -b / (2 * a)
  16.             print "\n\nLa ecuacion tiene una posible solucion: x = %.2f" % (x1)
  17.         else:
  18.             xr = -b / (2 * a)
  19.             xi = (math.sqrt(-disc)) / (2 * a)
  20.             print "\n\nLa ecuacion tiene dos posibles soluciones, una real xr = %.2f y una imaginarinaria xi = %.2fi" % (xr, xi)
  21.  
  22. print "Solucionador de ecuaciones de segundo grado"
  23. print "_" * 43
  24. a = raw_input("\tEscriba el valor de a: ")
  25. while a == 0:
  26.     a = raw_input("\tEl valor de a no puede ser 0, por favor corrijalo: ")
  27. b = raw_input("\tEscriba el valor de b: ")
  28. c = raw_input("\tEscriba el valor de c: ")
  29.  
  30. a = float(a)
  31. b = float(b)
  32. c = float(c)
  33.  
  34. calcular(a, b, c)

Muchas gracias a todos los que contesten