indice:uba:ingenieria:uba-xxi:pensamiento-computacional:guias-y-resueltos:guia-6-parte-2

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Próxima revisión
Revisión previa
indice:uba:ingenieria:uba-xxi:pensamiento-computacional:guias-y-resueltos:guia-6-parte-2 [2025/05/12 01:57] – creado upadminindice:uba:ingenieria:uba-xxi:pensamiento-computacional:guias-y-resueltos:guia-6-parte-2 [2025/06/08 07:21] (actual) upadmin
Línea 1: Línea 1:
-sss+====== Guía 6 - Parte 2 ====== 
 + 
 +  * {{ :indice:uba:ingenieria:uba-xxi:pensamiento-computacional:guias-y-resueltos:guia_de_ejercicios_n_6_-_parte_2.docx.pdf |Guía de Ejercicios Nro 6 - Parte 2}} 
 + 
 +===== Resueltos ===== 
 + 
 +<file python resueltos_guia_6_-_Parte_2.py> 
 +#Ejercicio 1  
 +""" Se quiere hacer un programa para pedirle al usuario que ingrese un número entero, y en caso de que el valor ingresado no sea un número entero, mostrarle un mensaje apropiado. 
 +a. Realizarlo utilizando isnumeric(). ¿Qué limitaciones encuentra? 
 +b. Realizarlo utilizando try/ except.""" 
 + 
 +#a) 
 +a= input("Ingrese un entero: ") 
 + 
 +while not a.isnumeric(): 
 +    print("No ingreso un entero. Por favor intentelo nuevamente."
 +    a= input("Ingrese un entero: ") 
 + 
 +print(f"EL numero entero que ha ingresado es {int(a)}"
 +       
 +"""isnumeric() no detecta enteros negativos.""" 
 + 
 +#b)  
 +a = "" 
 + 
 +while type(a)!=int: 
 +    try: 
 +        a= int(input("Ingrese un entero: ")) 
 +        print(f"Ingreso el numero {a}. Muchas Gracias."
 +    except: 
 +        print("No ingreso un entero. Por favor intentelo nuevamente."
 + 
 +#Ejercicio 2  
 +"""Crear una función, utilizando el punto anterior, que le pida al usuario un número entero. Utilizarla para 
 +calcular el producto entre dos números enteros ingresados.""" 
 + 
 +def multiplicar(): 
 +    numero_1 = "" 
 +    while type(numero_1)!=int: 
 +        try: 
 +            numero_1= int(input("Ingrese un primer entero: ")) 
 +        except: 
 +            print("No ingreso un entero. Por favor intentelo nuevamente."
 +    numero_2 = "" 
 +    while type(numero_2)!=int: 
 +        try: 
 +            numero_2= int(input("Ingrese un segundo entero: ")) 
 +        except: 
 +            print("No ingreso un entero. Por favor intentelo nuevamente."
 +    return numero_1*numero_2 
 + 
 +print("La multiplicacion de los dos numeros ingresados es", multiplicar()) 
 + 
 +#Ejercicio 3  
 +"""Se quiere hacer un programa que le solicite al usuario un número divisor y un dividendo, y calcule el 
 +cociente entre ellos. 
 +AYUDA: Considerar que el usuario podría brindar un valor no numérico o un divisor nulo.""" 
 + 
 +dividendo = "" 
 +divisor = "" 
 + 
 +condicion = True 
 + 
 +while condicion: 
 +    try: 
 +        dividendo = float(input("Ingrese un dividendo: ")) 
 +        divisor = float(input("Ingrese un divisor: ")) 
 +        print(f"El cociente de los dos numeros es {dividendo / divisor}"
 +        condicion = False 
 +    except: 
 +        if divisor == 0: 
 +            divisor = "" 
 +            print("No se puede dividir por 0. Intentelo nuevamente."
 +        else: 
 +            print("No ingreso numeros. Por favor intente nuevamente."
 +             
 +#Ejercicio 4 
 +"""Crear un programa para abrir un archivo llamado “file.txt” en modo lectura y en caso de que este 
 +archivo no exista, mostrar el mensaje “No se pudo encontrar el archivo file.txt”.""" 
 + 
 +try: 
 +    archivo_lectura = open("file.txt", "r"
 +    lista_de_las_lineas = archivo_lectura.readlines() 
 +    print(lista_de_las_lineas) 
 +except: 
 +    print("No se pudo encontrar el archivo file.txt"
 + 
 +#Ejercicio 5 
 +"""Crear una función cuyos parámetros sean una lista y un índice de posición para mostrar el valor de la 
 +lista en esa ubicación. 
 +a. ¿Qué ocurre si ingreso un índice que se encuentra fuera del rango? 
 +b. Si el valor del índice ingresado se encuentra dentro del rango, mostrar el valor. En caso 
 +contrario, mostrar un mensaje apropiado para dicho error.""" 
 + 
 +#a) 
 +""" 
 +def mostrar_elemento(lista, indice): 
 +    print(lista[indice]) 
 + 
 +l = [1 , "pelota", (5,3)] 
 + 
 +mostrar_elemento(l,10) 
 + 
 +Un codigo como el escrito daria un IndexError: list index out of range""" 
 + 
 +#b) 
 +def mostrar_elemento(lista, indice): 
 +    try: 
 +        print(lista[indice]) 
 +    except: 
 +        print("Ha ingresado un indice mas grande que el tamaño de la lista por lo que no hay un elemento para mostrar."
 + 
 +l = [1 , "pelota", (5,3)] 
 + 
 +mostrar_elemento(l,10) 
 + 
 +#Ejercicio 6 
 +"""Para jugar al chinchón con un único mazo de cartas españolas, el número de jugadores puede ser: dos, 
 +tres o cuatro. Crear una función que pida al usuario informar el número de jugadores, considerando 
 +que este puede ingresar: 
 +● un valor no válido, por ejemplo, una palabra. 
 +● un valor menor a 2, en en cuyo caso, mostrar el mensaje "Debe haber al menos 2 jugadores." 
 +● un valor mayor a 4, en cuyo caso, mostrar el mensaje "Se puede jugar con un máximo de 4 
 +jugadores." 
 +● un valor válido, en cuyo caso, mostrarlo.""" 
 + 
 +def solicitar_cantidad_de_jugadores(): 
 +    cantidad_de_jugadores = 0 
 +    while (cantidad_de_jugadores < 2) or (cantidad_de_jugadores > 4) or (type(cantidad_de_jugadores) != int): 
 +        try: 
 +            cantidad_de_jugadores = int(input("Ingrese la cantidad de jugadores para la partida de chinchon: ")) 
 +            if cantidad_de_jugadores < 2: 
 +                print("Debe haber al menos 2 jugadores. Vuelva a ingresar la cantidad de jugadores."
 +            elif cantidad_de_jugadores > 4: 
 +                print("Se puede jugar con un máximo de 4 jugadores. Vuelva a ingresar la cantidad de jugadores."
 +            else: 
 +                print(f"Ha seleccionado {cantidad_de_jugadores} jugadores"
 +        except: 
 +                print("Debe ingresar un numero entero."              
 + 
 +solicitar_cantidad_de_jugadores() 
 + 
 +#Ejercicio 7 
 +"""Para jugar al truco con un único mazo de cartas españolas, el número de jugadores puede ser: dos, 
 +cuatro o seis. Crear una función que pida al usuario informar el número de jugadores, considerando 
 +que este puede ingresar: 
 +● un valor no válido, por ejemplo, una palabra. 
 +● un valor menor a 2, en en cuyo caso, mostrar el mensaje "Debe haber al menos 2 jugadores." 
 +● un valor mayor a 6, en cuyo caso, mostrar el mensaje "Se puede jugar con un máximo de 6 
 +jugadores."
 +● un valor impar, como 3 y 5, en cuyo caso, mostrar el mensaje "Debe haber un número par de 
 +jugadores."
 +● un valor válido, en cuyo caso, mostrarlo.""" 
 + 
 +def solicitar_cantidad_de_jugadores(): 
 +    cantidad_de_jugadores = 0 
 +    while (cantidad_de_jugadores < 2) or (cantidad_de_jugadores > 6) or (type(cantidad_de_jugadores) != int) or (cantidad_de_jugadores %2 != 0): 
 +        try: 
 +            cantidad_de_jugadores = int(input("Ingrese la cantidad de jugadores para la partida de truco: ")) 
 +            if cantidad_de_jugadores < 2: 
 +                print("Debe haber al menos 2 jugadores. Vuelva a ingresar la cantidad de jugadores."
 +            elif cantidad_de_jugadores > 6: 
 +                print("Se puede jugar con un máximo de 6 jugadores. Vuelva a ingresar la cantidad de jugadores."
 +            elif cantidad_de_jugadores %2 != 0: 
 +                print("Debe haber un numero par de jugadores. Vuelva a ingresar la cantidad de jugadores."
 +            else: 
 +                print(f"Ha seleccionado {cantidad_de_jugadores} jugadores"
 +        except: 
 +                print("Debe ingresar un numero entero."              
 + 
 +solicitar_cantidad_de_jugadores() 
 + 
 +#Ejercicio 8 
 +"""El kiosko de la facultad quiere automatizar un letrero que tome datos de un programa y le cobre al estudiante. 
 +Se tienen dos diccionarios, uno con un código y el producto, y otro con el código y el precio de cada producto. 
 + 
 +Ejemplo: 
 +opciones = { 
 +1: "hamburguesas", 
 +2: "milanesas", 
 +3: "gaseosa", 
 +4: "alfajor", 
 +5: "papas fritas", 
 +6: "agua" 
 +
 + 
 +valores = { 
 +1:1000, 
 +2:1500, 
 +3:500, 
 +4:300, 
 +5:600, 
 +6:350 
 +
 + 
 +Se quiere hacer un programa que muestre la información de la siguiente forma en la pantalla: 
 +1: hamburguesas -> 1000 
 +2: milanesas -> 1500 
 +3: gaseosa -> 500 
 +4: alfajor -> 300 
 +5: papas fritas -> 600 
 +6: agua -> 350 
 + 
 +Y le pida al usuario una opción y una cantidad. Luego, debe imprimir el total a pagar. 
 +Se debe considerar que el usuario podría ingresar una opción que no está en el diccionario, o ingresar 
 +una opción que no sea un número. El usuario debe en esos casos imprimir un mensaje de error que sea 
 +descriptivo y volver a pedirle al usuario que ingrese una opción.""" 
 + 
 +opciones = { 
 +1: "hamburguesas", 
 +2: "milanesas", 
 +3: "gaseosa", 
 +4: "alfajor", 
 +5: "papas fritas", 
 +6: "agua" 
 +
 + 
 +valores = { 
 +1:1000, 
 +2:1500, 
 +3:500, 
 +4:300, 
 +5:600, 
 +6:350 
 +
 + 
 +print("Le ponemos a disposicion nuestro menu:"
 + 
 +for i in range(1,len(opciones)+1): 
 +    print(f"{i}:", opciones[i], "->", valores[i]) 
 + 
 +opcion = -1 
 +cantidad = -1 
 + 
 +while (opcion < 1) or (opcion > 6) or (type(opcion) != int) or (cantidad <= 0) or (type(cantidad) != int): 
 +    try: 
 +        opcion = int(input("Ingrese una Opcion: "))  
 +        if (opcion < 1) or (opcion > 6): 
 +            print("Debe elegir una opcion de la 1 a la 6.") 
 +            continue 
 +        cantidad = int(input("Cuantas unidades desea? ")) 
 +        if (cantidad < 0): 
 +            print("Debe elegir una cantidad positiva"
 +            continue 
 +        else: 
 +            print(f"Usted ha elegido comprar {cantidad} {opciones[opcion]}. El total a pagar es ${cantidad * valores[opcion]}"
 +    except: 
 +        print("Debe ingresar un entero."
 +</file>
  • indice/uba/ingenieria/uba-xxi/pensamiento-computacional/guias-y-resueltos/guia-6-parte-2.1747015052.txt.gz
  • Última modificación: 2025/05/12 01:57
  • por upadmin