GENERAR UN PROGRAMA CON 5 PAISES INICIALIZADOS CON SUS RESPECTIVAS SUPERFIVCIES Y QUE RESPONDA EN UN CUADRO EN FORMA DE UN LISTADO 1.CUALDE LAS CAPITALES TIENE MAYOR SUPERFICIE? 2. COMPARAR 2 CAPITALES ENTRE SI Y ARROJAR CUAL ES DE MAYOR EXTECION ? 3. CUAL ES EL PAIS QUE TIENE MENOR EXTENCION ? Y CUAL ES EL PAIS QUE LE SIGUE A ESE? con lenguaje basico .
Aquí te muestro un ejemplo de cómo podrías implementar el programa que solicitas en Python: ```python class Pais: def __init__(self, nombre, capital, superficie): self.nombre = nombre self.capital = capital self.superficie = superficie class Programa: def __init__(self): self.paises = [ Pais("Argentina", "Buenos Aires", 2780400), Pais("Brasil", "Brasilia", 8514877), Pais("Chile", "Santiago", 756096), Pais("Colombia", "Bogota", 1141748), Pais("Peru", "Lima", 1285217) ] def mostrar_paises(self): print("Lista de paises:") for pais in self.paises: print(f"Nombre: {pais.nombre}, Capital: {pais.capital}, Superficie: {pais.superficie} km²") def mayor_superficie_capital(self): mayor_superficie = 0 capital_mayor_superficie = "" for pais in self.paises: if pais.superficie > mayor_superficie: mayor_superficie = pais.superficie capital_mayor_superficie = pais.capital print(f"La capital con mayor superficie es {capital_mayor_superficie} con una superficie de {mayor_superficie} km²") def comparar_capitales(self): pais1 = input("Ingrese el nombre del primer pais: ") pais2 = input("Ingrese el nombre del segundo pais: ") pais1_obj = next((pais for pais in self.paises if pais.nombre == pais1), None) pais2_obj = next((pais for pais in self.paises if pais.nombre == pais2), None) if pais1_obj and pais2_obj: if pais1_obj.superficie > pais2_obj.superficie: print(f"La capital de {pais1} tiene una superficie mayor que la capital de {pais2}") elif pais2_obj.superficie > pais1_obj.superficie: print(f"La capital de {pais2} tiene una superficie mayor que la capital de {pais1}") else: print(f"Las capitales de {pais1} y {pais2} tienen la misma superficie") else: print("Pais no encontrado") def menor_superficie(self): menor_superficie = float('inf') pais_menor_superficie = "" pais_segundo_menor_superficie = "" for pais in self.paises: if pais.superficie < menor_superficie: menor_superficie = pais.superficie pais_menor_superficie = pais.nombre elif pais.superficie == menor_superficie: pais_segundo_menor_superficie = pais.nombre print(f"El pais con menor superficie es {pais_menor_superficie} con una superficie de {menor_superficie} km²") print(f"El pais con la segunda menor superficie es {pais_segundo_menor_superficie} con una superficie de {menor_superficie} km²") programa = Programa() while True: print("\nOpciones:") print("1. Mostrar lista de paises") print("2. Encontrar la capital con mayor superficie") print("3. Comparar capitales de dos paises") print("4. Encontrar el pais con menor superficie y el siguiente") print("5. Salir") opcion = input("Ingrese la opcion: ") if opcion == "1": programa.mostrar_paises() elif opcion == "2": programa.mayor_superficie_capital() elif opcion == "3": programa.comparar_capitales() elif opcion == "4": programa.menor_superficie() elif opcion == "5": break else: print("Opcion invalida") ``` Este programa define una clase `Pais` para representar a cada país con sus respectivas propiedades, y una clase `Programa` para manejar la lógica del programa. La clase `Programa` tiene métodos para mostrar la lista de paises, encontrar la capital con mayor superficie, comparar capitales de dos paises, y encontrar el país con menor superficie y el siguiente. El programa utiliza un bucle infinito para mostrar un menú de opciones al usuario y ejecutar la opción seleccionada.