import os import pickle from M1 import process_tuples, calculate_stats def process_data_and_save_results(): filename = "" while not os.path.exists(filename): filename = input("Введите имя бинарного файла с данными (например, input_data.bin): ") if not os.path.exists(filename): print(f"Файл '{filename}' не найден. Попробуйте еще раз.") with open(filename, 'rb') as f: krt1 = pickle.load(f) krt2 = pickle.load(f) print(f"\nДанные успешно считаны из файла '{filename}'.") print(f"KRT1 (первые 5 элементов): {krt1[:5]}") print(f"KRT2 (первые 5 элементов): {krt2[:5]}") sps1, sps2 = process_tuples(krt1, krt2) print("\n--- Результаты функции 1 ---") print(f"SPS1 (упорядоченный список элементов): {sps1[:10]}... (длина {len(sps1)})") print(f"SPS2 (список происхождения элементов): {sps2[:10]}... (длина {len(sps2)})") stats = calculate_stats(sps1) print("\n--- Результаты функции 2 (для SPS1) ---") for key, value in stats.items(): print(f"{key}: {value:.2f}") output_filename = "Res22.txt" with open(output_filename, 'w') as f: for val1, val2 in zip(sps1, sps2): f.write(f"{val1} {val2}\n") print(f"\nРезультаты функции 1 записаны в файл '{output_filename}'.") return sps1