форкнуто от main/python-labs
Вы не можете выбрать более 25 тем
Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
42 строки
3.6 KiB
Markdown
42 строки
3.6 KiB
Markdown
# Общее контрольное задание по теме 4
|
|
|
|
Добровольска Елизавета, А-02-23
|
|
|
|
## Задание
|
|
|
|
Реализовать, записать в текстовый файл и проанализировать результаты последовательности инструкций, выполняющих следующие действия:
|
|
• Напишите и исполните единое выражение, реализующее последовательное выполнение следующих операций: вычисление фазы комплексного числа 0.2+0.8j, округление результата до двух знаков после запятой, умножение полученного значения на 20, получение кортежа из двух значений: округленное вниз значение от деления результата на 3 и остатка от этого деления.
|
|
• Создайте объект класса struct_time с временными параметрами для текущего московского времени. Создайте строку с текущим часом и минутами.
|
|
• Создайте список с элементами – названиями дней недели. Сделайте случайную выборку из этого списка с тремя днями недели.
|
|
• Напишите инструкцию случайного выбора числа из последовательности целых чисел от 14 до 32 с шагом 3.
|
|
• Сгенерируйте нормально распределенное число N с математическим ожиданием 15 и стандартным отклонением 4 и округлите его до целого значения. Создайте список с N элементами – случайно выбранными буквами латинского алфавита.
|
|
• Напишите инструкцию для определения временного интервала в минутах, прошедшего с момента предыдущего (из п.2) определения временных параметров.
|
|
|
|
## Решение
|
|
|
|
```py
|
|
>>>divmod((round(cmath.phase(0.2+0.8j), 2))*20, 3)
|
|
(8.0, 2.6000000000000014)
|
|
>>>divmod(math.floor((round(cmath.phase(0.2+0.8j), 2))*20), 3) #Для получения остатка в целом виде и делении целых чисел, можно использовать такое выражение.
|
|
(8, 2)
|
|
>>>v = time.localtime()
|
|
>>>v
|
|
time.struct_time(tm_year=2025, tm_mon=9, tm_mday=11, tm_hour=14, tm_min=3, tm_sec=26, tm_wday=3, tm_yday=254, tm_isdst=0)
|
|
>>>st = v.tm_hour, v.tm_min
|
|
>>>st = str(v.tm_hour)+" hour "+str(v.tm_min)+" min "
|
|
>>>st
|
|
'14 hour 3 min '
|
|
>>>ned = ["пн", "вт", "ср", "чт", "пт", "сб", "вскр"]
|
|
>>>random.sample(ned, 3)
|
|
['пн', 'вскр', 'вт']
|
|
>>>random.choice(list(range(14, 33, 3)))
|
|
20
|
|
>>>N = round(random.gauss(15, 4))
|
|
>>>N
|
|
15
|
|
>>>import string #Импортировали модуль в котором есть латинский алфавит, чтобы из него выбрать буквы. Без использования этого модуля создавать список с алфавитом нужно было бы вручную.
|
|
>>>random.sample(string.ascii_letters, N)
|
|
['M', 'J', 'X', 'H', 'R', 'D', 'V', 'U', 'c', 'g', 'l', 'k', 'm', 't', 'w']
|
|
>>>time.localtime().tm_min - v.tm_min
|
|
24
|
|
``` |