Grupo #6: Trabajo Práctico #3: "

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 11

TRABAJO PRÁCTICO N° 3: “MÉTODOS”

Facultad de
Tecnología y Cs. GRUPO N° 6
Aplicadas-UNCa

INTEGRANTES:
• CALDERÓN, Valentín Andrés // DNI: 44221107 // Ingeniería Electrónica.
• MARQUEZ, Franco Manuel // DNI: 43.559.830 // Ingeniería Electrónica
• MORALES LEGUIZAMÓN, Denise Agostina // M.U: 01236 //
Ingeniería de Minas
• CHAILE, Kevin Facundo // DNI: 40.961.855// Ingeniería de Minas
• MOYA, Facundo Samuel // DNI: 43.821.594// Ingeniería Electrónica
• SUÁREZ, Carlos Manuel // DNI: 43.191.763 // Ingeniería de Minas
• BAZÁN, Álvaro Martín// M.U: 00947// Ingeniería Electrónica
➢ EJERCICIO 1
#Elaborar un algoritmo que calcule el promedio de tres alturas de jugadores de básquet.
#Utilizar un método que no reciba en parámetros y no retorna valor. Utilice Variable Globa
l

def principal():
global j1, j2, j3
j1= float (input('Ingrese la altura del jugador 1 '))
j2= float (input('Ingrese la altura del jugador 2 '))
j3= float (input('Ingrese la altura del jugador 3 '))

def calcula_promedio():
promedio= (j1+j2+j3)/(3)
print (promedio)

principal()
calcula_promedio()

➢ EJERCICIO 2
#Elaborar un algoritmo que imprima el costo de un pedido de un artículo del cual se tiene
#la descripción, la cantidad pedida y el precio unitario. Si la cantidad pedida excede de
#50 unidades, se hace un descuento de 15 %, si supera las 100 unidades el descuento
#será de 25% y menos de 10 unidades no dejar pedir e imprima una alerta.
#Utilizar un método que no recba en parámetros y no retorna valor. No usar Variables
#globales

'''variables de entrada: descripcion, la cantidad pedida, precio unitario


#variables de salida: el costo del pedido completo'''

def calcula_costo():
cantidad= float (input('Ingrese la cantidad de unidades '))
precio= float (input('Ingrese el precio unitario '))
costo_del_pedido= cantidad*precio

if cantidad> 50 and cantidad<100:


primer_descuento= costo_del_pedido* 0.85
print ('El costo total es' ,primer_descuento, 'pesos')
elif cantidad >100:
segundo_descuento= costo_del_pedido * 0.75
print ('El costo total es', segundo_descuento, 'pesos')
elif cantidad ==10:
tercera_situacion= costo_del_pedido*1
print ('El costo total es', tercera_situacion, 'pesos')
elif cantidad<10:
print ('No es posible hacer esta operación. La cantidad mínima a comprar es 10 uni
dades')

def principal():
calcula_costo()

principal()

➢ EJERCICIO 3

#Elaborar un algoritmo que permita determinar el mayor y menor de 5 números.


#Imprimirlo
#Utilizar un método que recibe en parámetros y retorna valor para obtener el mayor, y otro
#igual características para el menor . El método principal no podrá imprimir este valor, e
s
#decir no puede tener el print(). ¿Necesita crear otro método?

'''Variables de entrada: 5 numeros que el usuario desee


variables de salida: el numero menor y el numero menos entre esos cinco numeros'''

def numero_mayor(n1_aux, n2_aux, n3_aux):

if n2_aux<n1_aux>n3_aux:
mayor = n1_aux
print ('El numero mayor es el primer número', mayor)
elif n1_aux<n2_aux>n3_aux:
mayor= n2_aux
print ('El número mayor es el segundo número', mayor)
elif n1_aux< n3_aux>n2_aux:
mayor=n3_aux
print ('El número mayor es el tercer numero', mayor)
return mayor

def numero_menor(n1_aux, n2_aux, n3_aux):


if n2_aux>n1_aux<n3_aux:
menor= n1_aux
print ('El número menor es el primer número' , menor)
elif n1_aux>n2_aux<n3_aux:
menor= n2_aux
print('El número menor es el segundo número' ,menor)
elif n1>n3_aux<n2_aux:
menor= n3_aux
print('El número menor es el tercer númeero' , menor)
return menor
def principal():
n1= float (input('Ingrese el primero número '))
n2= float (input('Ingrese el segundo número '))
n3= float (input('Ingrese el tercer número '))
numero_mayor_2= numero_mayor (n1, n2, n3)
numero_menor_2= numero_menor (n1, n2, n3)

principal()

➢ EJERCICIO 4

#De acuerdo con la clase de sus ángulos, los triángulos se clasifican en:
#● Rectángulo tiene un ángulo recto (igual a 90º)
#● Acutángulo los tres ángulos son agudos (menor que a 90º)
#● Obtusángulo tiene un ángulo obtuso (mayor 90º y menor a 180º)
#Elaborar un algoritmo que permita leer el tamaño de los tres ángulos (A,B,C) de un
#triángulo e imprima qué tipo es. Contemple todas las validaciones.
#Utilizar un método que reciba en parámetros y retorna valor.

def principal():
Angulo_1= float(input("ingrese el primer ángulo "))
Angulo_2= float(input("ingrese el segundo ángulo "))
Angulo_3= float(input("ingrese el tercer ángulo "))
tipo_de_T= calculo_angulos(Angulo_1, Angulo_2, Angulo_3)
print("Los ángulos ingresados son: ", Angulo_1, Angulo_2, Angulo_3)
if tipo_de_T == False:
print("Los ángulos ingresados no forman un triangulo")
else:
print("El tipo de triangulo que se forma es: ", tipo_de_T)
def calculo_angulos(auxAngulo_1, auxAngulo_2, auxAngulo_3):
if (auxAngulo_1 + auxAngulo_2 + auxAngulo_3) == 180:
if auxAngulo_1 > 90 and auxAngulo_2 < 90 and auxAngulo_3 < 90:
tipo_de_T= "Obtusángulo"
return tipo_de_T
elif auxAngulo_2 > 90 and auxAngulo_1 < 90 and auxAngulo_3 < 90:
tipo_de_T= "Obtusángulo"
return tipo_de_T
elif auxAngulo_3 > 90 and auxAngulo_1 < 90 and auxAngulo_1 < 90:
tipo_de_T= "Obtusángulo"
return tipo_de_T
if auxAngulo_1 == 90 and auxAngulo_2 < 90 and auxAngulo_3 < 90:
tipo_de_T= "Rectángulo"
return tipo_de_T
elif auxAngulo_2 == 90 and auxAngulo_1 < 90 and auxAngulo_3 < 90:
tipo_de_T= "Rectángulo"
return tipo_de_T
elif auxAngulo_3 == 90 and auxAngulo_2 < 90 and auxAngulo_1 < 90:
tipo_de_T= "Rectángulo"
return tipo_de_T
if auxAngulo_1 < 90 and auxAngulo_2 < 90 and auxAngulo_3 < 90:
tipo_de_T= "Acutángulo"
return tipo_de_T
else:
tipo_de_T= False
return tipo_de_T
principal()


➢ EJERCICIO 5
#Elaborar un algoritmo que permita devolver el nombre del día indicado empezando que el nú
mero 1 corresponde al DOMINGO.
#Utilizar un método que no reciba en parámetros y retorna valor.

def principal():
nombre_del_dia()

def nombre_del_dia():
numero = float(input("Coloque el numero del día sabiendo que 1 es domingo:" ))
if numero == 1:
print("Su dia es DOMINGO.")
elif numero == 2:
print("Su dia es LUNES")
elif numero == 3:
print("Su dia es MARTES")
elif numero == 4:
print("Su dia es MIERCOLES")
elif numero == 5:
print("Su dia es JUEVES")
elif numero == 6:
print("Su dia es VIERNES")
elif numero == 7:
print("Su dia es SABADO")
elif numero < 1:
print("SU NUMERO INGRESADO ES INCORRECTO")
elif numero > 7:
print("SU NUMERO INGRESADO ES INCORRECTO")
return (numero)
principal()
➢ EJERCICIO 6
"""Elaborar un algoritmo que dada 4 variables, 2 números y 2 alfanuméricas, se pretende
ingresarlas en un método que concatene todo en una sola línea transformada en
mayúsculas. Por ejemplo:"""
#a = El libro que b = 3.96 c = La vida es Bella d = 448.89
#Salida: EL LIBRO QUE 3.96 LA VIDA ES BELLA 448.89
#Vbls Entrada: valores numericos
# numeros, alfanumericas
#Vbls Salida:
# linea concatenada y transformada a mayúsculas

def metodo_concat2(Cnum1,Cnum2,Calfa1,Calfa2):
Cnum1= str(Cnum1)
Cnum2= str(Cnum2)
concatenar= Calfa1 +' '+ Cnum1 +' '+ Calfa2 +' '+ Cnum2
return concatenar

def principal2():
print("Ingrese los 2 numeros a concatenar")
num1= str(float(input()))
num2= str(float(input()))
print("ingrese las 2 alfanuméricas a concatenar")
alfa1= input()
alfa2= input()
línea_mayus= metodo_concat2(num1,num2,alfa1,alfa2)
print ("Salida:", línea_mayus.upper())
principal2()

➢ EJERCICIO 7

#Dada 3 notas de parciales determinar si está libre, regular, promocionado según:


#Si el promedio es menor a 5 entonces estará libre
#Si el promedio está entre 5 y menos de 7 estará regular
#Si el promedio es mayor o igual a 10 y menor igual a 10 estará promocionado
#La nota debe ser entre 1 y 10 y contemplar números reales
#Utilizar un método que reciba en parámetros y retorna valor (Retorna el promedio)
#Utilizar un método que reciba en parámetros y retorna valor (Estado del mismo)

def calculo_promedio_es(nota_1,nota_2, nota_3):


global promedio
promedio = (nota_1+nota_2+nota_3)/3
return promedio
def define_condicion_alumno (promedio_aux):
if promedio_aux< 5:
condicion = print ('Su condición es "Alumno libre"')
elif promedio_aux >5 and promedio <7:
condicion = print ('Su condición es "Alumno regular"')
elif promedio_aux >7 and promedio <10 or promedio ==10:
condicion = print ('Su condición es "Alumno promocional"')
return condicion

def principal():
n1= float (input('Ingrese la primera nota '))
n2= float (input('Ingrese la segunda nota '))
n3= float (input('Ingrese la tercera nota '))
promedio= calculo_promedio_es(n1,n2,n3)
print ('Su promedio es:', promedio)
condicion_alumno_FINAL= define_condicion_alumno(promedio)

principal()

➢ EJERCICIO 8

#Un motociclista viaja por la ruta 38 desde el Portezuelo hacia La Merced a una
#velocidad constante de 90Km/h, se desea saber qué distancia recorre en 8 minutos.
#Considere poder cambiar los datos de entrada, conservando las mismas unidades de medida.
#Utilizar un método que reciba en parámetros y retorna valor.

def pasaje_de_velocidad__a_m_s (m_indicacion_de_valocidad, m_velocidad_constante):


if m_indicacion_de_valocidad == 1:
calculo = (m_velocidad_constante * 1)
elif m_indicacion_de_valocidad == 2:
calculo = (m_velocidad_constante / 3.6)
elif m_indicacion_de_valocidad == 3:
calculo = (m_velocidad_constante * 1000)
else:
print("Error de Datos (en la eleccion de de m/s, km/h o km/s)")
return (calculo)
def pasaje_de_teimpo_a_s (n_indicacion_de_tiempo, n_tiempo):
if n_indicacion_de_tiempo == 1:
calculo_tiempo = (n_tiempo * 1)
elif n_indicacion_de_tiempo == 2:
calculo_tiempo = (n_tiempo * 60)
elif n_indicacion_de_tiempo == 3:
calculo_tiempo = (n_tiempo * 3600)
else:
print("Error de Datos (en la eccion de segundo, minuto u hora)")
return (calculo_tiempo)

def principal():
indicacion_de_valocidad = float(input("Ingrese la el valor 1 si su velocidad es m/s, I
ngrese el valor 2 si su velocidad es km/h, Ingrese el valor 3 si su velocidad es km/s",))
velocidad_constante = float(input("Ingrese su velocidad constante", ))
indicacion_de_tiempo = float(input("Ingrese la el valor 1 si su tiempo es en segundo,
Ingrese el valor 2 si su tiempo es en minutos, Ingrese el valor 3 si su tiempo está en hor
as", ))
tiempo = float(input("ingrese su tiempo", ))
calculo_velocidad = pasaje_de_velocidad__a_m_s(indicacion_de_valocidad, velocidad_cons
tante)
calculo_tiempo = pasaje_de_teimpo_a_s(indicacion_de_tiempo, tiempo)
print("Su velocidad es:", calculo_velocidad,"m/s")
print("Su tiempo es:", calculo_tiempo,"s")
distancia = (calculo_velocidad * calculo_tiempo)
print("La distancia final sera:", distancia,"m")

principal()

➢ EJERCICIO 9

#Un niño deja caer una piedra desde una altura de 90mts. Se desea saber cuánto tiempo
#tarda en llegar al suelo? Y también se desea saber la velocidad con la que llega al suelo
.
#Considere poder cambiar los datos de entrada, conservando las mismas unidades de
#medida.
#Utilizar 2 método para lo solicitado que reciba en parámetros y retorna valor

def calcular_velocidad(altura_aux):
gravedad= float (9.8) #m/s
import math
valor_velocidad = math.sqrt(altura_aux*2*gravedad)
return valor_velocidad

def calcular_tiempo (altura_aux):


gravedad= float (9.8) #m/s
import math
valor_tiempo = math.sqrt (2*altura_aux/gravedad)
return valor_tiempo

def principal():
altura= float (input('Ingrese la altura desde la que fue arrojada la piedra '))
velocidad= calcular_velocidad(altura)
tiempo= calcular_tiempo(altura)
print ('La velocidad de la piedra al caer es de:', velocidad, 'm/s')
print ('El tiempo que tarda en llegar al suelo es de', tiempo, 'segundos')
principal()

➢ EJERCICIO 10

#Plantear un problema y resolverlo que posea 2 métodos, ambos que reciban en


#parámetros y retornan valores, con la condición que el segundo método dependa del
#resultado del primer método.

#Algoritmo que calcula el valor aproximado de un terreno a partir de su superficie (solo t


enemos como datos ancho y largo)
#y su ubicacion.
#Si el terreno está ubicado en el casco céntrico de la ciudad aumentar su valor un 50%
#Si el terreno está ubicado a menos de 1 km del casco céntrico de la ciudad aumentar un 40
% su valor
#Si el terreno está ubicado entre 1 km y 5 km del casco céntrico aumentar un 20% su valor
#Si el terreno está ubicado a más de 5 km del casco céntrico de la ciudad conservar su val
or.

# Vbles de entrada:
# largo, ancho
# precio por metro cuadrado del terreno
# Vbles de salida:
# precio del terreno

# Supuestos
# Unidad de medida metros
# largo y ancho son numeros Reales
# El precio del m2 es en $

def la_superficie_del_terreno_es(ancho_aux, largo_aux):


global superficie
superficie_aux = ancho_aux * largo_aux
return superficie_aux

def ubicacion_del_terreno_es():
global ubicacion_aux
ubicacion_aux= float (input('Ingrese la distancia en km desde el terreno al casco cént
rico '))
return ubicacion_aux

def calcula_costo_del_terreno(area_aux, distancia_aux):


precio_por_m2 = float(input("Ingrese el precio de cada m2 en $ "))
costo_aux= area_aux*precio_por_m2
if distancia_aux==0:
costo_total= costo_aux*0.5
if distancia_aux < 1:
costo_total= costo_aux*0.4
if distancia_aux >1 and distancia_aux<5:
costo_total= costo_aux
return costo_aux

def principal():
ancho= float (input('Ingrese el ancho del terreno '))
largo= float (input('Ingrese el ancho del terreno '))
superficie= la_superficie_del_terreno_es (ancho, largo)
ubicacion= ubicacion_del_terreno_es()
costo_definitivo = calcula_costo_del_terreno (superficie, ubicacion)
print ('El costo definitivo del terreno es', costo_definitivo)

principal()

➢ EJERCICIO 11

''' Elabore un algoritmo que permita validar una fecha dada. La fecha está integrada por 3
vbles: año, mes y día. Para que una fecha sea correcta es necesario que:
El día, mes mayor o igual a 1 y año debe ser mayor que cero.
El mes debe estar entre 1 y 12.
Dependiendo del mes que sea, el día debe estar dentro del rango válido.
Si existe algún error, imprimir por pantalla la ctte “ERROR EN FECHA”
Si la fecha es correcta, imprimir “FECHA CORRECTA” '''

# Variables de Entrada
# anio, mes, dia
# Variables de Salidas
# mensaje con FECHA CORRECTA o FECHA INCORRECTA
# Supuestos no se contemplan años bisiestos

def principal():
anio = int(input("Ingrese el año "))
mes = int(input("Ingrese el mes "))
dia = int(input("Ingrese el día "))
bisiesto= bisiestos(anio)
mensaje= calculo_veracidad(anio, mes, dia, bisiesto)
if bisiesto == True:
print("EL AÑO ES BISIESTO")
else:
print("EL AÑO NO ES BISIESTO")
print(mensaje)
def bisiestos(anio1):
bisiesto_1ra_con= anio1%4
bi_2da_con= anio1%100
secular_bisiesto= anio1%400
if anio1 >= 2000 and anio1 <= 10000:
if bisiesto_1ra_con == 0 :
if bi_2da_con != 0:
bisiesto_1ra_con = True
return bisiesto_1ra_con
else:
if secular_bisiesto == 0:
secular_bisiesto = True
return secular_bisiesto
else:
secular_bisiesto = False
return secular_bisiesto
else:
bisiesto_1ra_con = False
return bisiesto_1ra_con

def calculo_veracidad(anio1, mes1, dia1, bisiesto1):


if dia1 >=1 and mes1 >=1 and anio1 >= 2000 and anio1 <= 10000: # es posible que la fec
ha sea válida
if mes1==1 or mes1==3 or mes1==5 or mes1==7 or mes1==8 or mes1==10 or mes1==12:
if dia1 <= 31:
mensaje = "FECHA CORRECTA"
else:
mensaje = "ERROR EN FECHA"
elif mes1 == 4 or mes1 == 6 or mes1 == 9 or mes1 == 11:
if dia1 <= 30:
mensaje = "FECHA CORRECTA"
else:
mensaje = "ERROR EN FECHA"
elif mes1 == 2:
# mes es febrero o sea 2
if bisiesto1 == True:
if dia1 <= 29:
mensaje = "FECHA CORRECTA"
else:
mensaje = "ERROR EN FECHA"
else:
if dia1 <= 28:
mensaje = "FECHA CORRECTA"
else:
mensaje= "ERROR EN FECHA"
else:
mensaje = "ERROR EN FECHA"
else:
mensaje = "ERROR EN FECHA"
return mensaje
principal()

También podría gustarte