Загрузка данных


while True:
    print("\n" + "="*40)
    print("Выберите математическую операцию:")
    print("1. Факториал числа")
    print("2. Проверка на простое число")
    print("3. Наибольший общий делитель (НОД)")
    print("4. Наименьшее общее кратное (НОК)")
    print("5. Проверка на точный квадрат")
    print("0. Выход из программы")
    
    choice = input("Введите номер операции (0-5): ")
    
    # Блок обработки пользовательского ввода
    if choice == '0':
        print("Работа программы завершена.")
        break
        
    elif choice == '1':
        num = int(input("Введите целое число: "))
        if num < 0:
            print("Результат: Факториал для отрицательных чисел не определен.")
        else:
            print(f"Результат: Факториал числа {num} равен {factorial(num)}")
            
    elif choice == '2':
        num = int(input("Введите целое число: "))
        if is_prime(num):
            print(f"Результат: Число {num} является простым.")
        else:
            print(f"Результат: Число {num} НЕ является простым.")
            
    elif choice == '3':
        num1 = int(input("Введите первое число: "))
        num2 = int(input("Введите второе число: "))
        print(f"Результат: НОД({num1}, {num2}) = {gcd(num1, num2)}")
            
    elif choice == '4':
        num1 = int(input("Введите первое число: "))
        num2 = int(input("Введите второе число: "))
        print(f"Результат: НОК({num1}, {num2}) = {lcm(num1, num2)}")
            
    elif choice == '5':
        num = int(input("Введите целое число: "))
        if is_perfect_square(num):
            print(f"Результат: Число {num} является точным квадратом.")
        else:
            print(f"Результат: Число {num} НЕ является точным квадратом.")