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

Ambos lados, revisión anterior Revisión previa
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:58] upadminindice:uba:ingenieria:uba-xxi:pensamiento-computacional:guias-y-resueltos:guia-6-parte-2 [2025/06/08 07:21] (actual) upadmin
Línea 4: Línea 4:
  
 ===== Resueltos ===== ===== 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.1747015106.txt.gz
  • Última modificación: 2025/05/12 01:58
  • por upadmin