форкнуто от main/python-labs
Вы не можете выбрать более 25 тем
Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
64 строки
3.1 KiB
Markdown
64 строки
3.1 KiB
Markdown
# Общее контрольное задание по теме 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 <class 'time.struct_time'>
|
|
# 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
|
|
|
|
``` |