Programación en Python: Introducción a la guía de soluciones Capítulo 1
Chap 1
Programación en Python: una introducción
A partir del ejercicio Q10 (a), (b), (c) & Q11 (a)
Respuestas
Pregunta 10 a)
Para escribir un programa Python para resolver una ecuación cuadrática en la forma ax^2 + bx + c = 0, puedes usar la fórmula cuadrática:
x = (-b ± sqrt(b^2 - 4ac)) / 2a
Estas son las instrucciones de Python que implementan esta fórmula:
Código Python
import cmath # import complex math module
a = float(input("Introduzca el valor de a: "))
b = float(input("Introduzca el valor de b: "))
c = float(input("Introduzca el valor de c: "))
# calcular el discriminante
d = (b**2) - (4*a*c)
# Encuentra dos soluciones
sol1 = (-b - cmath.sqrt(d)) / (2 * a)
sol2 = (-b + cmath.sqrt(d)) / (2 * a)
print(f"Las soluciones a la ecuación cuadrática {a}x^2 + {b}x + {c} =
0 son {sol1} y {sol2}")
En este programa, la función input() se utiliza para tomar los valores de a, b y c del usuario. El módulo cmath se importa para manejar números complejos en caso de que el discriminante sea negativo. El discriminante se calcula usando la fórmula (b ^ 2 - 4ac), y luego las dos soluciones se calculan usando la fórmula cuadrática. Finalmente, el programa imprime las dos soluciones en la consola.
P10 b)
Para escribir una instrucción de Python para la expresión result = 2xy-9y/2xy^3-4yx^2 / 2y, deberá tener cuidado con el orden de las operaciones y usar los operadores apropiados para la multiplicación (*), la división (/) y la
exponenciación (**). Aquí hay un ejemplo de cómo puede escribir esta declaración en Python:
resultado = 2xy-9y/2xy^3-4yx^2 / 2y
Código de programa
Importar matemáticas
x = 2
y = 3
v = 10
resultado = 2*math.cos(0.5*(x+y))*math.cos(0.5*(x-y)) +
math.exp(x-1-x/4) + math.tan(x) - math.log(v)
imprimir(resultado)
En este ejemplo, el módulo matemático se importa para acceder a funciones matemáticas como cos, exp, tan y log. Los valores de x, y y v se asignan a 2, 3 y 10 respectivamente. A continuación, la expresión se evalúa utilizando las funciones y operadores apropiados, y el resultado se asigna al resultado de la variable. Finalmente, el valor del resultado se imprime en la consola utilizando la función print(). Tenga en cuenta que la salida del programa puede ser diferente dependiendo de los valores específicos de x, y y v utilizados.
P11
Respuestas a), b)
¿En qué se diferencia el efecto de las dos afirmaciones siguientes?
1) x +=x+10
2) x=x+10
Explicación
Las dos afirmaciones x += x + 10 y x = x + 10 pueden parecer similares, pero en realidad tienen diferentes efectos sobre el valor de x.
La primera declaración x += x + 10 es una abreviatura de x = x + (x + 10). Esto significa que el valor actual de x se suma a 10, y la suma resultante se almacena de nuevo en x. Entonces, por ejemplo, si x x = 5 + es inicialmente 5, entonces x += x + 10 se evaluaría a (5 + 10) = 20. En otras palabras, el valor de x se incrementa por su valor actual más 10.
La segunda declaración x = x + 10 simplemente agrega 10 al valor actual de x y almacena la suma resultante en x. Usando el mismo ejemplo anterior, si x x = es inicialmente 5, entonces x = x + 10 se evaluaría a 5 + 10 = 15. En otras palabras, el valor de x se incrementa solo en 10.
Así que la principal diferencia entre las dos declaraciones es que la primera declaración aumenta el valor de x por su valor actual más 10, mientras que la segunda declaración simplemente aumenta el valor de x en 10.