|
|
|
@ -20,11 +20,15 @@ import time
|
|
|
|
import random
|
|
|
|
import random
|
|
|
|
import cmath
|
|
|
|
import cmath
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
print("=== ВЫПОЛНЕНИЕ КОНТРОЛЬНОГО ЗАДАНИЯ ===\n")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
print("1. Вычисление фазы комплексного числа и последующие операции:")
|
|
|
|
print("1. Вычисление фазы комплексного числа и последующие операции:")
|
|
|
|
result = math.floor((round(cmath.phase(0.2+0.8j), 2) * 20) / 3), (round(cmath.phase(0.2+0.8j), 2) * 20) % 3
|
|
|
|
result = math.floor((round(cmath.phase(0.2+0.8j), 2) * 20) / 3), (round(cmath.phase(0.2+0.8j), 2) * 20) % 3
|
|
|
|
print(f"Результат: {result}")
|
|
|
|
print(f"Результат: {result}")
|
|
|
|
print()
|
|
|
|
print()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
print("2. Создание объекта struct_time для московского времени:")
|
|
|
|
print("2. Создание объекта struct_time для московского времени:")
|
|
|
|
moscow_time = time.localtime()
|
|
|
|
moscow_time = time.localtime()
|
|
|
|
print(f"Московское время: {moscow_time}")
|
|
|
|
print(f"Московское время: {moscow_time}")
|
|
|
|
@ -32,6 +36,7 @@ time_str = time.asctime(moscow_time)
|
|
|
|
print(f"Строка с часом и минутами: '{time_str}'")
|
|
|
|
print(f"Строка с часом и минутами: '{time_str}'")
|
|
|
|
print()
|
|
|
|
print()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
print("3. Случайная выборка дней недели:")
|
|
|
|
print("3. Случайная выборка дней недели:")
|
|
|
|
week_days = ['Понедельник', 'Вторник', 'Среда', 'Четверг', 'Пятница', 'Суббота', 'Воскресенье']
|
|
|
|
week_days = ['Понедельник', 'Вторник', 'Среда', 'Четверг', 'Пятница', 'Суббота', 'Воскресенье']
|
|
|
|
random_days = random.sample(week_days, 3)
|
|
|
|
random_days = random.sample(week_days, 3)
|
|
|
|
@ -39,6 +44,7 @@ print(f"Дни недели: {week_days}")
|
|
|
|
print(f"Случайная выборка: {random_days}")
|
|
|
|
print(f"Случайная выборка: {random_days}")
|
|
|
|
print()
|
|
|
|
print()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
print("4. Случайный выбор числа из последовательности:")
|
|
|
|
print("4. Случайный выбор числа из последовательности:")
|
|
|
|
sequence = list(range(14, 33, 3))
|
|
|
|
sequence = list(range(14, 33, 3))
|
|
|
|
random_number = random.choice(sequence)
|
|
|
|
random_number = random.choice(sequence)
|
|
|
|
@ -46,6 +52,7 @@ print(f"Последовательность: {sequence}")
|
|
|
|
print(f"Случайно выбранное число: {random_number}")
|
|
|
|
print(f"Случайно выбранное число: {random_number}")
|
|
|
|
print()
|
|
|
|
print()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
print("5. Генерация нормально распределенного числа и создание списка букв:")
|
|
|
|
print("5. Генерация нормально распределенного числа и создание списка букв:")
|
|
|
|
N = round(random.gauss(15, 4))
|
|
|
|
N = round(random.gauss(15, 4))
|
|
|
|
# Создаем список букв латинского алфавита
|
|
|
|
# Создаем список букв латинского алфавита
|
|
|
|
@ -55,33 +62,87 @@ print(f"N = {N}")
|
|
|
|
print(f"Случайные буквы: {random_letters}")
|
|
|
|
print(f"Случайные буквы: {random_letters}")
|
|
|
|
print()
|
|
|
|
print()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
print("6. Определение временного интервала в минутах:")
|
|
|
|
print("6. Определение временного интервала в минутах:")
|
|
|
|
time_diff = (time.time() - time.mktime(moscow_time))/ 60
|
|
|
|
time_diff = (time.time() - time.mktime(moscow_time)) / 60
|
|
|
|
print(f"Прошло минут: {time_diff:.2f}")
|
|
|
|
print(f"Прошло минут: {time_diff:.2f}")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
with open('TEMA4/results_analysis.txt', 'w', encoding='utf-8') as file:
|
|
|
|
|
|
|
|
file.write("АНАЛИЗ РЕЗУЛЬТАТОВ\n")
|
|
|
|
|
|
|
|
file.write("=" * 40 + "\n\n")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
file.write("1. КОМПЛЕКСНОЕ ЧИСЛО:\n")
|
|
|
|
|
|
|
|
file.write(f"Результат: {result}\n")
|
|
|
|
|
|
|
|
file.write("Анализ: Вычислена фаза комплексного числа 0.2+0.8j, выполнены\n")
|
|
|
|
|
|
|
|
file.write("последовательные операции округления, умножения, деления\n")
|
|
|
|
|
|
|
|
file.write("с получением целой части и остатка. Результат - кортеж.\n\n")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
file.write("2. ВРЕМЯ:\n")
|
|
|
|
|
|
|
|
file.write(f"struct_time: {moscow_time}\n")
|
|
|
|
|
|
|
|
file.write(f"Временная строка: {time_str}\n")
|
|
|
|
|
|
|
|
file.write("Анализ: Создан объект struct_time с текущим московским временем.\n")
|
|
|
|
|
|
|
|
file.write("Преобразован в читаемую строку с помощью asctime().\n\n")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
file.write("3. ДНИ НЕДЕЛИ:\n")
|
|
|
|
|
|
|
|
file.write(f"Исходный список: {week_days}\n")
|
|
|
|
|
|
|
|
file.write(f"Выборка: {random_days}\n")
|
|
|
|
|
|
|
|
file.write("Анализ: random.sample() выполнил случайную выборку 3 дней\n")
|
|
|
|
|
|
|
|
file.write("без повторений из полного списка дней недели.\n\n")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
file.write("4. СЛУЧАЙНОЕ ЧИСЛО:\n")
|
|
|
|
|
|
|
|
file.write(f"Последовательность: {sequence}\n")
|
|
|
|
|
|
|
|
file.write(f"Выбранное число: {random_number}\n")
|
|
|
|
|
|
|
|
file.write("Анализ: random.choice() выбрал случайное число из\n")
|
|
|
|
|
|
|
|
file.write("арифметической прогрессии от 14 до 32 с шагом 3.\n\n")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
file.write("5. СЛУЧАЙНЫЕ БУКВЫ:\n")
|
|
|
|
|
|
|
|
file.write(f"N = {N}\n")
|
|
|
|
|
|
|
|
file.write(f"Буквы: {random_letters}\n")
|
|
|
|
|
|
|
|
file.write("Анализ: random.gauss() сгенерировал число с нормальным\n")
|
|
|
|
|
|
|
|
file.write("распределением (μ=15, σ=4). random.choices() создал список\n")
|
|
|
|
|
|
|
|
file.write("из N случайных заглавных латинских букв.\n\n")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
file.write("6. ВРЕМЕННОЙ ИНТЕРВАЛ:\n")
|
|
|
|
|
|
|
|
file.write(f"Интервал: {time_diff:.2f} минут\n")
|
|
|
|
|
|
|
|
file.write("Анализ: Измерено время между созданием struct_time и\n")
|
|
|
|
|
|
|
|
file.write("моментом вычисления. time.mktime() преобразует struct_time\n")
|
|
|
|
|
|
|
|
file.write("в секунды с эпохи для вычисления разницы.\n\n")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
file.write("ОБЩИЙ ВЫВОД:\n")
|
|
|
|
|
|
|
|
file.write("Все операции выполнены успешно. Продемонстрирована работа\n")
|
|
|
|
|
|
|
|
file.write("с математическими функциями, временем, случайными числами\n")
|
|
|
|
|
|
|
|
file.write("и различными структурами данных Python.\n")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
print("\nРезультаты записаны в файл 'results_analysis.txt'")
|
|
|
|
```
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
Ответ программы:
|
|
|
|
Ответ программы:
|
|
|
|
|
|
|
|
|
|
|
|
```shell
|
|
|
|
```shell
|
|
|
|
|
|
|
|
=== ВЫПОЛНЕНИЕ КОНТРОЛЬНОГО ЗАДАНИЯ ===
|
|
|
|
|
|
|
|
|
|
|
|
1. Вычисление фазы комплексного числа и последующие операции:
|
|
|
|
1. Вычисление фазы комплексного числа и последующие операции:
|
|
|
|
Результат: (8, 2.6000000000000014)
|
|
|
|
Результат: (8, 2.6000000000000014)
|
|
|
|
|
|
|
|
|
|
|
|
2. Создание объекта struct_time для московского времени:
|
|
|
|
2. Создание объекта struct_time для московского времени:
|
|
|
|
Московское время: time.struct_time(tm_year=2025, tm_mon=10, tm_mday=24, tm_hour=11, tm_min=34, tm_sec=15, tm_wday=4, tm_yday=297, tm_isdst=0)
|
|
|
|
Московское время: time.struct_time(tm_year=2025, tm_mon=10, tm_mday=24, tm_hour=12, tm_min=8, tm_sec=35, tm_wday=4, tm_yday=297, tm_isdst=0)
|
|
|
|
Строка с часом и минутами: 'Fri Oct 24 11:34:15 2025'
|
|
|
|
Строка с часом и минутами: 'Fri Oct 24 12:08:35 2025'
|
|
|
|
|
|
|
|
|
|
|
|
3. Случайная выборка дней недели:
|
|
|
|
3. Случайная выборка дней недели:
|
|
|
|
Дни недели: ['Понедельник', 'Вторник', 'Среда', 'Четверг', 'Пятница', 'Суббота', 'Воскресенье']
|
|
|
|
Дни недели: ['Понедельник', 'Вторник', 'Среда', 'Четверг', 'Пятница', 'Суббота', 'Воскресенье']
|
|
|
|
Случайная выборка: ['Вторник', 'Четверг', 'Пятница']
|
|
|
|
Случайная выборка: ['Суббота', 'Среда', 'Четверг']
|
|
|
|
|
|
|
|
|
|
|
|
4. Случайный выбор числа из последовательности:
|
|
|
|
4. Случайный выбор числа из последовательности:
|
|
|
|
Последовательность: [14, 17, 20, 23, 26, 29, 32]
|
|
|
|
Последовательность: [14, 17, 20, 23, 26, 29, 32]
|
|
|
|
Случайно выбранное число: 17
|
|
|
|
Случайно выбранное число: 26
|
|
|
|
|
|
|
|
|
|
|
|
5. Генерация нормально распределенного числа и создание списка букв:
|
|
|
|
5. Генерация нормально распределенного числа и создание списка букв:
|
|
|
|
N = 16
|
|
|
|
N = 13
|
|
|
|
Случайные буквы: ['F', 'H', 'H', 'D', 'B', 'U', 'A', 'E', 'V', 'F', 'H', 'L', 'L', 'X', 'A', 'I']
|
|
|
|
Случайные буквы: ['X', 'J', 'L', 'J', 'S', 'L', 'M', 'G', 'N', 'P', 'Y', 'S', 'W']
|
|
|
|
|
|
|
|
|
|
|
|
6. Определение временного интервала в минутах:
|
|
|
|
6. Определение временного интервала в минутах:
|
|
|
|
Прошло минут: 0.01
|
|
|
|
Прошло минут: 0.01
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Результаты записаны в файл 'results_analysis.txt'
|
|
|
|
```
|
|
|
|
```
|