Introducción a la programación con Python 3

Page 105

4.1.4.

Otro ejemplo: resolución de ecuaciones de segundo grado

Para afianzar los conceptos presentados (y aprender alguno nuevo), vamos a presentar otro ejemplo. En esta ocasión vamos a resolver ecuaciones de segundo grado, que son de la forma ax 2 + bx + c = 0.

¿Cuáles son los datos del problema? Los coeficientes a, b y c. ¿Qué deseamos calcular? Los valores de x que hacen cierta la ecuación. Dichos valores son: x1 =

−b +

b2 − 4ac 2a

y

Un programa directo para este cálculo es: 1 2 3 4 5 6 7 8 9

10 11 12

from math import sqrt print a b c

x1 x2

print

float input float input float input b b

sqrt b 2 sqrt b 2

x2 =

−b −

b2 − 4ac . 2a

La función sqrt calcula la raíz cuadrada de un número.

4 a c 4 a c

2 2

a a

format x1

Ejecutemos el programa:

x2

Un problema evidente de nuestro programa es la división por cero que tiene lugar cuando a vale 0 (pues entonces el denominador, 2a, es nulo). Tratemos de evitar el problema de la división por cero del mismo modo que antes, pero mostrando un mensaje distinto, pues cuando a vale 0 la ecuación no es de segundo grado, sino de primer grado. 1 2 3 4 5 6 7 8 9

10 11 12 13 14 15

from math import sqrt print a b c

if a if a

float input float input float input

0 x1 x2 print 0 print

b b

La función sqrt calcula la raíz cuadrada de un número.

sqrt b 2 sqrt b 2

4 a c 4 a c

Andrés Marzal / Isabel Gracia / Pedro García - ISBN: 978-84-697-1178-1

2 2

103

a a

format x1

x2

Introducción a la programación con Python 3 - UJI - DOI: http://dx.doi.org/10.6035/Sapientia93


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.