# Areglo para Cadenas y números # Variables que necesito para mi programa tam = 0 # Tamaño de mi arreglo arr = [] # Arreglo donde almacenare mis datos # Clase Perro class Perro: animal = "perro" def __init__(self, raza, edad, color, comida): """Constructor de la clase""" self.raza = raza self.edad = edad self.color = color self.comida = comida def visualizar(self): """Visualiza la clase""" print(self) def __repr__(self): """Visualiza la clase""" a = "[Raza: {0},".format(self.raza) a += "edad: {0},".format(self.edad) a += "Color: {0},".format(self.color) a += "Comida: {0}]".format(self.comida) return a def capturaPerro(): """Permite la captura de los datos para un objeto de la clase perro""" print("Registro de Perro\n") raza = input("¿Raza de perro? ") edad = input("¿Edad del perro? ") color = input("¿Color del perrro? ") comida = input("¿Qué come el perro? ") objPerro = Perro(raza, edad, color, comida) return objPerro def capturaDato(): """Permite seleccionar que tipo de dato desea capturar el usuario""" print("1) Números") print("2) Cadena") print("3) Objetos") print("(Una vez elegidos los datos vuelve al menú anterior)") ing = int(input("\nElige una opcion: ")) # 1) Números: if ing == 1: print("Ingresa el numero: ") elem = float(input()) return elem # 2) Cadena: elif ing == 2: print("Ingresa una cadena: ") elem = input() return elem # 3) Objetos: elif ing == 3: print("Ingresa los atributos del objeto:") elem = capturaPerro() return elem else: print("Opción incorrecta") return "" # Programa de arreglo unidimensional # Ciclo para que el programe se ejecute hasta que el usuario # lo decida while True: print("\n***** Menu *****\n") print("1) Asignar tamaño") print("2) Insertar elementos") print("3) Mostrar elementos") print("4) Actualizar elemento") print("5) Buscar por posicion") print("0) Salir") op = int(input("\nElige una opcion: ")) # OPCION 1: ASIGNA NUMERO DE ELEMENTOS if op == 1: if tam > 0: print("ya asignaste un tamaño y no es posoble modificarlo") else: tam = int(input("Cuantos elementos vas a almacenar? ")) arr = [0] * tam # OPCION 2: INSERTAR elif op == 2: if tam == 0: print("*** ERROR: Antes debes definir el tamaño") pos = int(input("Ingresa la posicion que quieres adicionar: ")) if pos < 0 or pos >= tam: print("*** ERROR: Posicion fuera de rango") else: print("¿Qué tipo de dato deseas ingresar? ") dato = capturaDato() if dato != "": arr[pos] = dato # OPCION 3: MOSTRAR elif op == 3: if tam == 0: print("*** ERROR: No hay nada que mostrar") print(arr) # OPCION 4: ACTUALIZAR elif op == 4: if tam == 0: print("*** ERROR: Antes debes definir el tamanio") pos = int(input("Ingresa la posicion que quieres modificar: ")) if pos < 0 or pos >= tam: print("*** ERROR: Posicion fuera de rango") else: print("Valor actual: " + str(arr[pos])) print("¿Qué tipo de dato deseas ingresar? ") dato = capturaDato() if dato != "": arr[pos] = dato # MUESTRA ELEMENTO POR POSICION elif op == 5: if tam == 0: print("*** ERROR: Antes debes definir el tamanio") pos = int(input("Ingresa la posicion a la que quieres visualizar: ")) if pos < 0 or pos >= tam: print("*** ERROR: Posicion fuera de rango") else: print(arr[pos]) # OPCION 0: SALIR elif op == 0: print("Bye") break # ERROR else: print("Opcion incorrecta")