Dominando Python: Ejercicios Prácticos de Listas, Lógica Matemática y Cadenas
Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones
Escrito el en
con un tamaño de 4,11 KB
Gestión de Listas y Menús Interactivos en Python
En este primer bloque de código, aprenderemos a inicializar listas, validar la entrada de datos mediante excepciones y gestionar un menú interactivo para procesar información numérica.
# Inicializar listas
lista_num = []
primos = []
suma_cifras = []
# Crear la lista (máximo 7 números)
while len(lista_num) < 7:
try:
num = int(input("Introduce un número entero (entre 0 y 49): "))
if 0 <= num <= 49:
lista_num.append(num)
else:
print("El número debe estar entre 0 y 49.")
except ValueError:
print("Debes introducir un número válido.")
opcion = ""
while opcion != "4":
print("\nMENU")
print("1. Ver lista")
print("2. Ver números primos")
print("3. Ver números cuya suma de cifras > 7")
print("4. Salir")
opcion = input("Elige una opción: ")
if opcion == "1":
print("Lista:", lista_num)
elif opcion == "2":
primos = []
for num in lista_num:
if num > 1:
es_primo = True
for i in range(2, num):
if num % i == 0:
es_primo = False
break
if es_primo:
primos.append(num)
print("Números primos encontrados:", primos)
elif opcion == "3":
print("Números con suma de cifras > 7:")
for num in lista_num:
suma = 0
for cifra in str(num):
suma += int(cifra)
if suma > 7:
print(f"{num} -> suma: {suma}")
elif opcion == "4":
print("Fin del programa")
else:
print("Opción incorrecta")Comparación de Cadenas de Caracteres y Caracteres Comunes
A continuación, se presenta un algoritmo diseñado para comparar dos cadenas de caracteres, identificar los elementos únicos de cada una y determinar cuáles son los caracteres comunes (intersección) entre ambas.
# Inicializamos la variable para controlar la repetición del programa
respuesta = "S"
# Bucle que permite repetir el programa mientras el usuario quiera
while respuesta == "S":
# Paso 1: Solicitar al usuario dos cadenas de caracteres
cadena1 = input("Introduce la primera cadena de caracteres: ")
cadena2 = input("Introduce la segunda cadena de caracteres: ")
# Variables para guardar caracteres sin repetir
cadena_distintos_1 = ""
cadena_distintos_2 = ""
# Variable para guardar los caracteres comunes
cadena_iguales = ""
# Contador de caracteres comunes
contador = 0
# Obtener caracteres únicos de la primera cadena
for caracter in cadena1:
if caracter not in cadena_distintos_1:
cadena_distintos_1 += caracter
# Obtener caracteres únicos de la segunda cadena
for caracter in cadena2:
if caracter not in cadena_distintos_2:
cadena_distintos_2 += caracter
# Obtener caracteres que están en ambas cadenas
for caracter in cadena_distintos_1:
if caracter in cadena_distintos_2:
cadena_iguales += caracter
contador += 1
# Mostrar resultados
print("\nResultados:")
print(f"Caracteres iguales: {cadena_iguales}")
print(f"Número de caracteres comunes: {contador}")
# Preguntar al usuario si quiere repetir el programa
respuesta = input("\n¿Quieres volver a ejecutar (S/N)? ").upper()Conceptos Clave Aplicados
- Bucle While: Utilizado para el control de flujo y repetición de menús.
- Manejo de Excepciones: Implementación de
try-exceptpara evitar errores de ejecución al ingresar datos. - Iteración de Cadenas: Uso de bucles
forpara recorrer y analizar cada carácter de un texto. - Lógica Booleana: Determinación de números primos mediante banderas (
es_primo).