From 8750e11f20f82384dff70847d8646540287c21c8 Mon Sep 17 00:00:00 2001 From: DobrovolskaY Date: Mon, 1 Dec 2025 09:26:03 +0000 Subject: [PATCH] =?UTF-8?q?=D0=A1=D0=BE=D0=B7=D0=B4=D0=B0=D0=BB(=D0=B0)=20?= =?UTF-8?q?'TEMA7/test.md'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- TEMA7/test.md | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 TEMA7/test.md diff --git a/TEMA7/test.md b/TEMA7/test.md new file mode 100644 index 0000000..39def36 --- /dev/null +++ b/TEMA7/test.md @@ -0,0 +1,55 @@ +## ИКЗ по теме 7 +Добровольска Елизавета +А-02-23 +Вариант 16 + +## Задание + +Разработайте функцию с 2 аргументами, которая для заданного словаря (аргумент функции) с любыми ключами и с числовыми значениями создаёт новый словарь с теми же ключами и со значениями, равными синусам от значений из входного словаря, и записывает новый словарь в бинарный файл с заданным именем (аргумент функции). Проверьте функцию на примере двух разных входных словарей. + +## Решение + +```py +import math +import pickle + +def slov_sin(input_dict, filename): + new_dict = {key: math.sin(value) for key, value in input_dict.items()} + with open(filename, 'wb') as f: + pickle.dump(new_dict, f) + + + +dict1 = {'a': 0, 'b': math.pi / 2, 'c': math.pi, 'd': 3 * math.pi / 2} +file1 = 'sin_values_1.bin' +slov_sin(dict1, file1) + + +with open(file1, 'rb') as f: + loaded_dict1 = pickle.load(f) +print(f"Исходный словарь 1: {dict1}") +print(f"Сохраненный и загруженный словарь 1: {loaded_dict1}") +print("-" * 30) + + +dict2 = {'x': 1.0, 'y': 2.0, 'z': -0.5} +file2 = 'sin_values_2.bin' +slov_sin(dict2, file2) + +with open(file2, 'rb') as f: + loaded_dict2 = pickle.load(f) +print(f"Исходный словарь 2: {dict2}") +print(f"Сохраненный и загруженный словарь 2: {loaded_dict2}") +``` + +ВЫВОД: + +```py +================== RESTART: C:/Users/u522-16/Downloads/gfg.py ================== +Исходный словарь 1: {'a': 0, 'b': 1.5707963267948966, 'c': 3.141592653589793, 'd': 4.71238898038469} +Сохраненный и загруженный словарь 1: {'a': 0.0, 'b': 1.0, 'c': 1.2246467991473532e-16, 'd': -1.0} +------------------------------ +Исходный словарь 2: {'x': 1.0, 'y': 2.0, 'z': -0.5} +Сохраненный и загруженный словарь 2: {'x': 0.8414709848078965, 'y': 0.9092974268256817, 'z': -0.479425538604203} +``` +