Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Laboratorio 3.02
Profesor :
Diego Montalvo
dmontalvo@utec.edu.pe
Profesores:
De Teoría: De Laboratorio:
Unidad 2:
Operadores Matemáticos y
Lógicos
Logro de la Sesión
Al finalizar esta sesión, estarás en la capacidad de:
Operación Signo
Potencia **
Negación matemática -
Multiplicación, División,
* / // %
División entera, Módulo
Suma y Resta + -
Tabla de Verdad:
a b a and b a or b not a
True True True True False
True False False True False
False True False True True
False False False False True
Operadores Lógicos - operadores de relación
> mayor
>= mayor o igual
< menor
<= menor o igual
!= diferente
== iguales
Operadores Lógicos
Algunas características de los operadores lógicos:
• Conectores lógicos tienen mayor precedencia que operadores de relación
• Operaciones con la misma precedencia se evalúan de izquierda a derecha
• Los paréntesis permiten modificar las precedencias
• Tienen menor precedencia que los operadores matemáticos
Manualmente calcular las respuestas
Ejercicio: Índice de Masa Corporal - BMI
Desarrollar un programa que resuelva el siguiente enunciado:
Escribir un programa que calcule el índice de la masa corporal (BMI) de una
persona. El programa debe empezar leyendo la altura y el peso de una persona.
La altura debe ser leída en centímetros y el peso en gramos,
la fórmula es:
Ejercicio: Índice de Masa Corporal - BMI
Solución:
import math
peso_grs = float(input("Ingrese el peso en grs: "))
altura_cms = float(input("Ingrese la altura en cms: "))
peso_kg = peso_grs/1000
altura_m = altura_cms/100
BMI = peso_kg/math.pow(altura_m, 2)
print("El indice de masa corporal (BMI) es igual a: {}".format(round(BMI,3)))
• Desarrollar un programa que lea la longitud de los lados del triángulo y que
muestre el área.
Ejercicio: Área de un Triángulo
Solución:
import math
s1 = float(input("Ingrese primer lado: "))
s2 = float(input("Ingrese segundo lado: "))
s3 = float(input("Ingrese tercer lado: "))
s = (s1 + s2 + s3)/2
area = math.sqrt(s*(s-s1)*(s-s2)*(s-s3))
print("El area del triangulo es : {}".format(area))
NOTA: Como podría utilizar el anterior programa para verificar si la longitud de los lados de un triángulo
es correcta.
Ejercicio: Verificar si es Triángulo
Desarrollar un programa que resuelva el siguiente enunciado:
Sean s1, s2 y s3 las longitudes de los tres lados de un triángulo, para verificar si esos tres
lados realmente forman un triángulo debe de cumplirse la propiedad de que la suma de 2 de los
lados sea mayor al otro lado, es así por ejemplo que la suma
s1 + s2 > s3, s2 + s3 > s1 y s1 + s3 > s2,
si se cumplen estas 3 ecuaciones podemos decir que los 3 lados forman un triángulo.
Desarrollar un programa que lea la longitud de los lados de un triángulo y que muestre "ES
TRIANGULO VALIDO" si se cumple la regla mencionada arriba o que muestre "NO ES
TRIANGULO VALIDO" si no se cumple la regla.
Ejercicio: Verificar si es Triángulo
Solución:
s1 = float(input('Ingrese primer lado: '))
s2 = float(input('Ingrese segundo lado: '))
s3 = float(input('Ingrese tercer lado: '))
es_triangulo = (s1 + s2 > s3) and (s1 + s3 > s2) and (s2 + s3 > s1)
respuesta = 'NO '*(not es_triangulo) + 'ES TRIANGULO VALIDO'print(respuesta)
• Ejemplo:
Si el número ingresado es 12345 el resultado debe ser 54321.
Ejercicio: Invertir un número
Solución:
# ingresando el numero
numero = int(input('Ingrese un numero entero de 5 digitos:'))
resultado = 0
resultado = resultado * 10 # 1er digito
resultado += numero % 10
numero = numero // 10
resultado = resultado * 10 # 2do digito
resultado += numero % 10
numero = numero // 10
resultado = resultado * 10 # 3er digito
resultado += numero % 10
numero = numero // 10
resultado = resultado * 10 # 4to digito
resultado += numero % 10
numero = numero // 10
resultado = resultado * 10 # 5to digito
resultado += numero % 10
numero = numero // 10 Ingrese un numero entero de 5 digitos:23546
#imprimiendo resultado 64532
print(resultado)
Ejercicio: Área de un Polígono Regular
Desarrollar un programa que resuelva el siguiente enunciado:
• Un polígono es regular si sus lados son de la misma longitud y el ángulo entre
lados adyacentes es igual. El área de un polígono regular puede ser calculado
usando la siguiente fórmula, donde (s) es la longitud de los lados y (n) es el
número de lados:
s = float(input("Ingrese la longitud de lado: "))
n = int(input("Ingrese n\'umero de lados: "))
area = (n * s**2)/(4*tan(pi/n))
# redondeando a 2 digitos
area = int(area * 10**2) / 10**2
print(int(area))
NOTA: Para el cálculo se requiere llamar a las funciones acos, sin, cos y al valor PI en la biblioteca math. Los
grados de latitud y longitud deben convertirse a radianes para que puedan ser usados por las funciones
trigonométricas.
from math import atan, cos, sin, pi
Ejercicio: Distancia entre 2 puntos en la tierra
Solución:
from math import acos, sin, cos, pi
print('Ingrese el punto 1')
t1 = float(input("Ingrese lat1: "))
g1 = float(input("Ingrese lon1: "))
print('Ingrese el punto 2')
t2 = float(input("Ingrese lat2: "))
g2 = float(input("Ingrese lon2: "))
distancia = round(6317.01*acos(sin(pi*t1/180)*sin(pi*t2/180)
+ cos(pi*t1/180)*cos(pi*t2/180)*cos(pi*(g1-g2)/180)),2)
print("La distancia entre los puntos 1 y 2 es:", distancia)
Ingrese el punto 1
Ingrese lat1: -12.1010611
Ingrese lon1: -77.0046259
Ingrese el punto 2
Ingrese lat2: -12.1362833
Ingrese lon2: -77.0230859
La distancia entre los puntos 1 y 2 es: 4.36
Tarea 1: Suma de Ángulos
Desarrollar un programa que resuelva el siguiente enunciado:
• Los ángulos son expresados en grados sexagesimales (grados, minutos y segundos).
Se le pide diseñar un programa que halle la suma de dos ángulos, expresando el
resultado en grados, minutos y segundos.
Por ejemplo:
Primer angulo : 71 45 52
Segundo angulo : 12 55 29
——————
Angulo suma : 84 41 21
Tarea 2: Cambiar sencillo
Desarrollar un programa que resuelva el siguiente enunciado:
• El Banco de Crédito del Perú, ha decidido instalar en sus
sucursales, cajeros especiales para cambiar sencillo a
sus clientes.
• Estos cajeros necesitan un programa en el que
conociendo como dato de entrada la cantidad de soles Por ejemplo:
(un número entero), permita calcular la menor cantidad
de billetes y monedas que se deberá entregar como Ingrese cantidad de dinero: 77
El cajero entregará:
sencillo al usuario. Billetes de 50 soles : 1
• Considere que existen billetes de: Billetes de 20 soles : 1
Billetes de 10 soles : 0
50, 20, 10 y monedas de: 5 y un sol. Monedas de 5 soles : 1
Monedas de 1 sol : 2
• Escriba un programa, que permita realizar este cálculo.
Evaluación
Responda las siguientes preguntas:
1.¿Qué es un operador lógico matemático en Python?
9.¿Cuál es el operador potencia? ¿Se puede calcular con el operador potencia un raíz cuadrada? De un ejemplo
Cierre
En esta sesión aprendiste: