#Programa para calcular la formula general, el cual niega que a sea igual a 0, y que indica cuando la operacion da como resultado un numero complejo o numero imaginario.
#17 de Septiembre del 2023
#Gonzalez Cobarrubias Iran Ramses
import math
def run():#Funcion principal del programa
a = 0
while a==0:#Pide al usuario valores y si a == 0, pide nuevamente un valor.
a = int(input('Escriba el valor de a\n'))
b = int(input('Escriba el valor de b\n'))
c = int(input('Escriba el valor de c\n'))
if a!=0:#Entra al procesamiento de codigo si los parametros son correctos.
raiz = (b**2-4*a*c)
print ()
if raiz < 0:#Si la raiz es negativa se trata como numero imaginario.
raiz = raiz * -1
print('Valores imaginarios!!')
print('El valor X1 es: ('+str(+b)+'+\u221A'+str(raiz)+')/'+str((2*a))+'i')
print('El valor X2 es: ('+str(-b)+'-\u221A'+str(raiz)+')/'+str((2*a))+'i')
else:#Se realiza la operacion si la raiz es positiva.
print('El valor X1 es: '+str((-b + math.sqrt(raiz))/(2*a)))
print('El valor X2 es: '+str((-b - math.sqrt(raiz))/(2*a)))
#negativo = (-b + math.sqrt(raiz))/(2*a)
#positivo = (-b - math.sqrt(raiz))/(2*a)
else:
print('El valor de a es 0!')
if __name__=='__main__':#Esta condicional pregunta si el programa que se ejecuta actualmente es el main(), si es el main, se ejecuta la funcion, en otro caso, no se ejecuta.
run()