Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env python
- # -*- coding: utf-8 -*-
- #
- """ Programa que calcula las raices de una ecuación cuadrática en
- el campo de los nros reales ax**2 + bx + c
- EJ:
- >>> Ingrese el valor del coeficiente cuadrático: 1
- >>> Ingrese el valor del término lineal: 0
- >>> Ingrese el valor del término independiente: -25
- >>> Existen dos soluciones: 5.0 y -5.0
- >>> Presione cualquier tecla para continuar (o 'x' para salir): x
- >>> Gracias por utilizar este programa....
- """
- import math
- def cargar_datos():
- """Funcion que pide los datos y devuelve al prog principal"""
- a = float(input("Ingrese el valor del coeficiente cuadrático: "))
- b = float(input("Ingrese el valor del coeficiente lineal: "))
- c = float(input("Ingrese el valor del coeficiente independiente: "))
- return [a,b,c]
- def calcular_raices(a,b,c):
- """Funcion que calcula las raices"""
- delta = b*b - 4*a*c
- if delta < 0:
- return None
- elif delta == 0:
- raiz = -b / (2*a)
- return raiz
- else:
- raiz1 = (-b + math.sqrt(delta)) / (2*a)
- raiz2 = (-b - math.sqrt(delta)) / (2*a)
- return [raiz1, raiz2]
- def imprimir_raices(raices):
- """Función que devuelve una cadena imprimible con los resultados"""
- if isinstance(raices, float):
- return f"Existe una única solución: {raices}"
- elif isinstance(raices, list):
- return f"Existen dos soluciones: {raices[0]} y {raices[1]}"
- else:
- return "No existen soluciones en el campo de los nros reales"
- print(""" Programa que calcula las raices de una ecuación cuadrática en
- el campo de los nros reales ax**2 + bx + c
- EJ:
- >>> Ingrese el valor del coeficiente cuadrático: 1
- >>> Ingrese el valor del término lineal: 0
- >>> Ingrese el valor del término independiente: -25
- >>> Existen dos soluciones: 5.0 y -5.0
- >>> Presione cualquier tecla para continuar (o 'x' para salir): x
- >>> Gracias por utilizar este programa....
- """)
- while True:
- # Cargo los datos
- a,b,c = cargar_datos()
- # Calculo las raices
- raices = calcular_raices(a,b,c)
- # Imprimo los resultados
- print(imprimir_raices(raices))
- opcion = input("\nPresione cualquier tecla para continuar (o 'x' para salir): ")
- if opcion.casefold() == "x":
- print("Gracias por utilizar este programa....")
- break
Advertisement
Add Comment
Please, Sign In to add comment