На это лучший варик
def multiply_elements(A):
k = A[0] * A[1]
n = len(A)
for i in range(n):
A[i] = k * A[i]
for j in range(5):
k *= 2
k *= A[n - 1]
return A, k
def print_header():
print("\n" + "=" * 50)
print("? Добро пожаловать в программу умножения элементов массива! ?")
print("=" * 50 + "\n")
def print_footer():
print("=" * 50)
def main():
RED = "\033[91m"
GREEN = "\033[92m"
RESET = "\033[0m"
print_header()
while True:
while True:
try:
user_input = input("Введите элементы массива через запятую (например, 1,2,3,4): ")
A = list(map(int, user_input.split(',')))
if len(A) < 2:
raise ValueError("Массив должен содержать как минимум два элемента.")
break
except ValueError as e:
print(f"{RED}❌ Ошибка ввода: {e}. Пожалуйста, попробуйте снова.{RESET}")
result, final_k = multiply_elements(A)
print_footer()
print(f"{GREEN}? Изменённый массив: {result}{RESET}")
print(f"{GREEN}? Финальное значение k: {final_k}{RESET}")
print_footer()
while True:
continue_prompt = input("Хотите ли вы продолжить? (да/нет): ").strip().lower()
if continue_prompt in ['да', 'нет']:
break
else:
print(f"{RED}❌ Ошибка: ответьте 'да' или 'нет'.{RESET}")
if continue_prompt == 'нет':
print(f"{GREEN}? Спасибо за использование программы!{RESET}")
break
if __name__ == "__main__":
main()