# ============================================
# OPERACIONES CON VECTORES USANDO MENU
# ============================================
def definir_tamano():
while True:
try:
n = int(input("Ingrese el tamaño de los vectores A y B: "))
if n > 0:
return n
else:
print("El tamaño debe ser mayor que cero.")
except ValueError:
print("Error: ingrese un número entero válido.")
def llenar_vector(nombre, n):
vector = []
print(f"\nLlenado del vector {nombre}")
for i in range(n):
while True:
try:
valor = float(input(f"{nombre}[{i}] = "))
vector.append(valor)
break
except ValueError:
print("Error: ingrese un valor numérico válido.")
return vector
def desplegar_vector(nombre, vector):
print(f"\nVector {nombre}:")
for i in range(len(vector)):
print(f"{nombre}[{i}] = {vector[i]}")
def sumar_vectores(a, b):
r = []
for i in range(len(a)):
r.append(a[i] + b[i])
return r
def restar_vectores(a, b):
r = []
for i in range(len(a)):
r.append(a[i] - b[i])
return r
def multiplicar_vectores(a, b):
r = []
for i in range(len(a)):
r.append(a[i] * b[i])
return r
def dividir_vectores(a, b):
r = []
for i in range(len(a)):
if b[i] == 0:
r.append("Indefinido")
else:
r.append(a[i] / b[i])
return r
def vectores_definidos(a, b):
return len(a) > 0 and len(b) > 0
def mostrar_menu():
print("\n" + "=" * 50)
print("MENU DE OPERACIONES CON VECTORES")
print("=" * 50)
print("0) Tamaño de vectores A y B")
print("1) Llenado vector A")
print("2) Llenado vector B")
print("3) Suma A + B")
print("4) Resta A - B")
print("5) Multiplicación A * B")
print("6) División A / B")
print("7) Desplegar vector A")
print("8) Desplegar vector B")
print("9) Salir")
def main():
n = 0
A = []
B = []
while True:
mostrar_menu()
try:
opcion = int(input("Seleccione una opción: "))
except ValueError:
print("Error: debe ingresar un número entero.")
continue
if opcion == 0:
n = definir_tamano()
A = [0] * n
B = [0] * n
print(f"Se definió el tamaño de los vectores en {n} elementos.")
elif opcion == 1:
if n == 0:
print("Primero debe definir el tamaño de los vectores con la opción 0.")
else:
A = llenar_vector("A", n)
elif opcion == 2:
if n == 0:
print("Primero debe definir el tamaño de los vectores con la opción 0.")
else:
B = llenar_vector("B", n)
elif opcion == 3:
if vectores_definidos(A, B):
R = sumar_vectores(A, B)
desplegar_vector("A", A)
desplegar_vector("B", B)
desplegar_vector("R = A + B", R)
else:
print("Debe definir y llenar los vectores A y B.")
elif opcion == 4:
if vectores_definidos(A, B):
R = restar_vectores(A, B)
desplegar_vector("A", A)
desplegar_vector("B", B)
desplegar_vector("R = A - B", R)
else:
print("Debe definir y llenar los vectores A y B.")
elif opcion == 5:
if vectores_definidos(A, B):
R = multiplicar_vectores(A, B)
desplegar_vector("A", A)
desplegar_vector("B", B)
desplegar_vector("R = A * B", R)
else:
print("Debe definir y llenar los vectores A y B.")
elif opcion == 6:
if vectores_definidos(A, B):
R = dividir_vectores(A, B)
desplegar_vector("A", A)
desplegar_vector("B", B)
desplegar_vector("R = A / B", R)
else:
print("Debe definir y llenar los vectores A y B.")
elif opcion == 7:
if len(A) > 0:
desplegar_vector("A", A)
else:
print("El vector A no está definido.")
elif opcion == 8:
if len(B) > 0:
desplegar_vector("B", B)
else:
print("El vector B no está definido.")
elif opcion == 9:
print("Programa finalizado.")
break
else:
print("Opción no válida. Intente nuevamente.")
# Ejecutar programa
main()