форкнуто от main/python-labs
				
			
			Вы не можете выбрать более 25 тем
			Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
		
		
		
		
		
			
		
			
				
	
	
		
			81 строка
		
	
	
		
			3.8 KiB
		
	
	
	
		
			Markdown
		
	
			
		
		
	
	
			81 строка
		
	
	
		
			3.8 KiB
		
	
	
	
		
			Markdown
		
	
| ## Общее контрольное задание по Теме 4
 | |
| 
 | |
| Кузьменко Елена, А-02-23
 | |
| 
 | |
| ## Задание
 | |
| 
 | |
|    1)Напишите и исполните единое выражение, реализующее последовательное выполнение следующих операций: вычисление фазы комплексного числа 0.2+0.8j, округление результата до двух знаков после запятой, умножение полученного значения на 20, получение кортежа из двух значений: округленное вниз значение от деления результата на 3 и остатка от этого деления. 
 | |
| 
 | |
|    2)Создайте объект класса struct_time с временными параметрами для текущего московского времени. Создайте строку с текущим часом и минутами.
 | |
| 
 | |
|    3)Создайте список с элементами – названиями дней недели. Сделайте случайную выборку из этого списка с тремя днями недели. 
 | |
| 
 | |
|    4)Напишите инструкцию случайного выбора числа из последовательности целых чисел от 14 до 32 с шагом 3.
 | |
| 
 | |
|    5)Сгенерируйте нормально распределенное число N с математическим ожиданием 15 и стандартным отклонением 4 и округлите его до целого значения. Создайте список с N элементами – случайно выбранными буквами латинского алфавита.
 | |
| 
 | |
|    6)Напишите инструкцию для определения временного интервала в минутах, прошедшего с момента предыдущего (из п.2) определения временных параметров.
 | |
|    
 | |
| 
 | |
| ## Решение
 | |
| 
 | |
| ### 1.Исполнение выражения.
 | |
| 
 | |
| ```py
 | |
| >>> import math
 | |
| >>> import cmath
 | |
| >>> divmod(math.floor(round(cmath.phase( 0.2+0.8j ), 2)) * 20), 3)
 | |
| (8, 2)
 | |
| ```
 | |
| 
 | |
| ### 2.Объект с временными параметрами.
 | |
| 
 | |
| ```py
 | |
| >>> import time
 | |
| >>> t = time.gmtime(time.time() + 3 * 3600); t
 | |
| >>> time.struct_time(tm_year=2025, tm_mon=10, tm_mday=20, tm_hour=10, tm_min=36, tm_sec=20, tm_wday=0, tm_yday=293, tm_isdst=0)
 | |
| >>> print('часов: ' + str(t.tm_hour) + '\nминут: ' + str(t.tm_min))
 | |
| >>> часов: 10
 | |
| >>> минут: 36
 | |
| ```
 | |
| 
 | |
| ### 3.Список.Случайная выборка.
 | |
| 
 | |
| ```py
 | |
| >>> import random
 | |
| >>> days = ['Понедельник', 'Вторник', 'Среда', 'Четверг', 'Пятница', 'Суббота', 'Воскресенье']
 | |
| >>> v = random.sample(days,3); v
 | |
| ['Понедельник', 'Четверг', 'Пятница']
 | |
| ```
 | |
| 
 | |
| ### 4.Случайный выбор чисел из последовательности.
 | |
| 
 | |
| ```py
 | |
| >>> r1 = random.choice(list(range(14, 32, 3))); r1
 | |
| 17
 | |
| ```
 | |
| 
 | |
| ### 5.Нормальное распределение.Список с латинскими буквами.
 | |
| 
 | |
| ```py
 | |
| >>> n = round(random.gauss(15,4)); n
 | |
| 10
 | |
| >>> alphabet = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
 | |
| >>> l = random.sample(alphabet * n, n); l
 | |
| ['K', 'I', 'B', 'I', 'L', 'D', 'W', 'O', 'Q', 'X']
 | |
| ```
 | |
| 
 | |
| ### 6.Временной интервал в минутах.
 | |
| 
 | |
| ```py
 | |
| >>> t2 = time.gmtime(time.time() + 3 * 3600); t2
 | |
| time.struct_time(tm_year=2025, tm_mon=10, tm_mday=20, tm_hour=10, tm_min=37, tm_sec=53, tm_wday=0, tm_yday=293, tm_isdst=0)
 | |
| >>> t_2 = (t2.tm_hour*3600+t2.tm_min*60+t2.tm_sec); t_2
 | |
| 38273
 | |
| >>> t_1 = (t.tm_hour*3600+t.tm_min*60+t.tm_sec); t_1
 | |
| 38180
 | |
| >>> t_3 = math.floor((t_2 - t_1)/60); t_3
 | |
| 1
 | |
| ```
 | |
| 
 |