3.3 KiB
Общее контрольное задание по теме 4
Володин Денис, А-02-23
Задание
Реализовать, записать в текстовый файл и проанализировать результаты последовательности инструкций, выполняющих следующие действия: • Напишите и исполните единое выражение, реализующее последовательное выполнение следующих операций: вычисление фазы комплексного числа 0.2+0.8j, округление результата до двух знаков после запятой, умножение полученного значения на 20, получение кортежа из двух значений: округленное вниз значение от деления результата на 3 и остатка от этого деления. • Создайте объект класса struct_time с временными параметрами для текущего московского времени. Создайте строку с текущим часом и минутами. • Создайте список с элементами – названиями дней недели. Сделайте случайную выборку из этого списка с тремя днями недели. • Напишите инструкцию случайного выбора числа из последовательности целых чисел от 14 до 32 с шагом 3. • Сгенерируйте нормально распределенное число N с математическим ожиданием 15 и стандартным отклонением 4 и округлите его до целого значения. Создайте список с N элементами – случайно выбранными буквами латинского алфавита. • Напишите инструкцию для определения временного интервала в минутах, прошедшего с момента предыдущего (из п.2) определения временных параметров.
Решение
>>> divmod((round(cmath.phase(0.2 + 0.8j), 2) * 20), 3)
(8.0, 2.6000000000000014)
>>> nowtime=time.gmtime(time.time()+3*3600)
>>> nowtime
time.struct_time(tm_year=2025, tm_mon=10, tm_mday=20, tm_hour=10, tm_min=25, tm_sec=58, tm_wday=0, tm_yday=293, tm_isdst=0)
>>> nows = str(nowtime.tm_hour) + ":" + str(nowtime.tm_min)
>>> nows
'10:25'
>>> week = ["понедельник", "вторник", "среда", "четверг", "пятница", "суббота", "воскресенье"]
>>> random.sample(week, 3)
['вторник', 'суббота', 'четверг']
>>> random.choice(range(14, 32, 3))
26
>>> random.choice(range(14, 32, 3))
14
>>> N = round(random.gauss(15,4))
>>> N
13
>>> lst = list("abcdefghijgklmnopqrstuvwxyz")
>>> random.sample(lst, N)
['i', 'g', 'g', 'j', 't', 's', 'r', 'v', 'f', 'y', 'b', 'z', 'l']
>>> current_time = time.time()
>>> t_sec = current_time - (time.mktime(nowtime) - 3*3600)
>>> t_min = round(t_sec / 60; 4)
0.0144