# Общее контрольное задание по теме 4 Марков Никита Сергеевич, А-03-23 ## Задание 1.Напишите и исполните единое выражение, реализующее последовательное выполнение следующих операций: вычисление фазы комплексного числа 0.2+0.8j, округление результата до двух знаков после запятой, умножение полученного значения на 20, получение кортежа из двух значений: округленное вниз значение от деления результата на 3 и остатка от этого деления. 2.Создайте объект класса struct_time с временными параметрами для текущего московского времени. Создайте строку с текущим часом и минутами. 3.Создайте список с элементами – названиями дней недели. Сделайте случайную выборку из этого списка с тремя днями недели. 4.Напишите инструкцию случайного выбора числа из последовательности целых чисел от 14 до 32 с шагом 3. 5.Сгенерируйте нормально распределенное число N с математическим ожиданием 15 и стандартным отклонением 4 и округлите его до целого значения. Создайте список с N элементами – случайно выбранными буквами латинского алфавита. 6.Напишите инструкцию для определения временного интервала в минутах, прошедшего с момента предыдущего (из п.2) определения временных параметров. ## Решение ```py import cmath import math import time import random import string # 1 >>> first = round(cmath.phase(0.2+0.8j), 2) * 20 >>> divmod(math.floor(first), 3) (8, 2) # 2 >>> moscow_time = time.localtime() >>> string_with_time = f"{moscow_time.tm_hour}:{moscow_time.tm_min}" >>> print(string_with_time, type(moscow_time)) 19:1 # 3 >>> days_of_week = ['Понедельник', 'Вторник', 'Среда', 'Четверг', 'Пятница', 'Суббота', 'Воскресенье'] >>> random.sample(days_of_week, 3) ['Четверг', 'Среда', 'Понедельник'] # 4 >>> numbers = list(range(14, 32+1, 3)) >>> random.choice(numbers) 20 #5 >>> N = round(random.normalvariate(15, 4)) >>> N 14 >>> gen_list = random.choices(string.ascii_uppercase, k=N) >>> gen_list ['A', 'N', 'V', 'L', 'N', 'U', 'O', 'V', 'N', 'R', 'L', 'Z', 'Q', 'R'] #6 >>> current_time = time.time() >>> previous_time = time.mktime(moscow_time) >>> time_interval_minutes = (current_time - previous_time) / 60 >>> time_interval_minutes 1.379131011168162 ```