Test Foro de elhacker.net SMF 2.1

Programación => Scripting => Mensaje iniciado por: xassiz_ en 16 Febrero 2010, 17:20 PM

Título: [Python] Ecuaciones de Segundo Grado - by xassiz
Publicado por: xassiz_ en 16 Febrero 2010, 17:20 PM
Bueno, pues tenía muchos deberes de mates, así que hice este programilla para acabar antes xDD

Código (python) [Seleccionar]
#!/usr/bin/python
#Ecuaciones 2 Grado - by xassiz

import math

print "\n ----------------------------"
print "\n #    Ecuaciones 2 Grado    #"
print "\n #        by xassiz         #"
print "\n ----------------------------\n"

try:
a = input("\n a = ")
b = input("\n b = ")
c = input("\n c = ")

xmas = (-b + math.sqrt(b**2 - 4*a*c))/(2*a)
xmenos = (-b - math.sqrt(b**2 - 4*a*c))/(2*a)

print "\n\a x (+) = "+str(xmas)+"\n"
print "\n\a x (-) = "+str(xmenos)+"\n"

raw_input()

except:
print "\n\a Sin Solucion"
raw_input()
Título: Re: [Python] Ecuaciones de Segundo Grado - by xassiz
Publicado por: gabymar en 16 Febrero 2010, 22:43 PM
Sin excepciones puede servirte este


Código (python) [Seleccionar]
#!/usr/bin/python
#Ecuaciones 2 Grado - by xassiz

import math

print "\n ---------------------------------------"
print "\n #    Ecuaciones 2 Grado    #"
print "\n #        by xassiz                 #"
print "\n #        and Gaby                #"
print "\n ---------------------------------------\n"

a = input("\n a = ")
b = input("\n b = ")
c = input("\n c = ")
if b**2 - 4*a*c < 0 :
   #resultado imaginario
   r=-b/float(2*a)
   i=(math.sqrt(-(b**2-4*a*c)))/(2*a)
   x=complex(r,i)
   print "\n\a x (+) = "+str(x.real)+'+'+str(x.imag)+"j\n"
   print "\n\a x (-) = "+str(x.real)+'-'+str(x.imag)+"j\n"
else:
   #resultado real
   xmas = (-b + math.sqrt(b**2 - 4*a*c))/(2*a)
   xmenos = (-b - math.sqrt(b**2 - 4*a*c))/(2*a)

   print "\n\a x (+) = "+str(xmas)+"\n"
   print "\n\a x (-) = "+str(xmenos)+"\n"

raw_input()
Título: Re: [Python] Ecuaciones de Segundo Grado - by xassiz
Publicado por: xassiz_ en 17 Febrero 2010, 23:41 PM
Gracias por la mejora gabe ;D Tenia pensado hacer algo así pero no sabía muy bien como..

Además no sabía que se podían poner expresiones así en el if :P Gracias por el dato ^^