import os import M1 def process_signal(): """ Основная функция модуля M2 Запрашивает имя файла, проверяет его существование, вызывает функцию2 из M1 и записывает результаты в файл Res101.txt """ # Запрос имени файла с проверкой существования while True: filename = input("\nВведите имя файла с данными: ").strip() if os.path.exists(filename): print(f"Файл '{filename}' найден") break else: print(f"Файл '{filename}' не существует. Повторите ввод.") # Вызов функции 2 из модуля M1 signal, t_stat, F_stat, mean1, mean2, var1, var2 = M1.function2(filename) print("Отсчеты сигнала:") for i in range(len(signal)): print(f" {i:2d}: {signal[i]:8.2f}") print("\n--- Анализ результатов ---") messages = [] if t_stat > 2: msg_t = "Сигнал сильно меняется" print(f"t={t_stat:.4f} > 2: {msg_t}") else: msg_t = "Сигнал заметно не меняется" print(f"t={t_stat:.4f} ≤ 2: {msg_t}") messages.append(msg_t) if F_stat > 4: msg_F = "Разброс сигнала сильно меняется" print(f"F={F_stat:.4f} > 4: {msg_F}") else: msg_F = "Разброс сигнала заметно не меняется" print(f"F={F_stat:.4f} ≤ 4: {msg_F}") messages.append(msg_F) res_filename = "Res101.txt" file = open(res_filename, 'w', encoding='utf-8') file.write(f"Исходный файл: {filename}\n") file.write(f"Количество отсчетов: {len(signal)}\n") file.write(f"t-статистика: {t_stat:.6f}\n") file.write(f"F-статистика: {F_stat:.6f}\n") file.write("-"*40 + "\n") file.write(f"Вывод 1: {msg_t}\n") file.write(f"Вывод 2: {msg_F}\n") file.close() print(f"\nРезультаты сохранены в файл '{res_filename}'") return signal, t_stat, F_stat