-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathhw02_norm.py
More file actions
132 lines (111 loc) · 4.74 KB
/
hw02_norm.py
File metadata and controls
132 lines (111 loc) · 4.74 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
__author__ = 'Пашков Игорь Владимирович'
# Задача-1:
# Дан список, заполненный произвольными целыми числами, получите новый список,
# элементами которого будут квадратные корни элементов исходного списка,
# но только если результаты извлечения корня не имеют десятичной части и
# если такой корень вообще можно извлечь
# Пример: Дано: [2, -5, 8, 9, -25, 25, 4] Результат: [3, 5, 2]
print('')
print('Задача 1')
print('')
import math
z1_list1 = [2, -5, 8, 9, -25, 25, 4]
z1_list2 = []
for z1_unit1 in z1_list1:
if z1_unit1 > 0 and math.sqrt(z1_unit1).is_integer():
z1_list2.append(int(math.sqrt(z1_unit1)))
print(z1_list2)
# Задача-2: Дана дата в формате dd.mm.yyyy, например: 02.11.2013.
# Ваша задача вывести дату в текстовом виде, например: второе ноября 2013 года.
# Склонением пренебречь (2000 года, 2010 года)
print('')
print('Задача 2')
print('')
z2_days = {
'01': 'первое',
'02': 'второе',
'03': 'третье',
'04': 'четвёртое',
'05': 'пятое',
'06': 'шестое',
'07': 'седьмое',
'08': 'восьмое',
'09': 'девятое',
'10': 'десятое',
'11': 'одиннадцатое',
'12': 'двенадцатое',
'13': 'тринадцатое',
'14': 'четырнадцатое',
'15': 'пятнадцатое',
'16': 'шестнадцатое',
'17': 'семнадцатое',
'18': 'восемнадцатое',
'19': 'девятнадцатое',
'20': 'двадцатое',
'21': 'двадцать первое',
'22': 'двадцать второе',
'23': 'двадцать третье',
'24': 'двадцать четвёртое',
'25': 'двадцать пятое',
'26': 'двадцать шестое',
'27': 'двадцать седьмое',
'28': 'двадцать восьмое',
'29': 'двадцать девятое',
'30': 'тридцатое',
'31': 'тридцать первое'
}
z2_months = {
'01': 'января',
'02': 'февраля',
'03': 'марта',
'04': 'апреля',
'05': 'мая',
'06': 'июня',
'07': 'июля',
'08': 'августа',
'09': 'сентября',
'10': 'октября',
'11': 'ноября',
'12': 'декабря'
}
try:
z2_inputdate = input('Введите дату в формате dd.mm.yyyy: ').split('.')
print(z2_days[z2_inputdate[0]] + ' ' + z2_months[z2_inputdate[1]] + ' ' + z2_inputdate[2] + ' ' + 'года')
except:
print('Дата введена некорректно!')
# Задача-3: Напишите алгоритм, заполняющий список произвольными целыми числами
# в диапазоне от -100 до 100. В списке должно быть n - элементов.
# Подсказка:
# для получения случайного числа используйте функцию randint() модуля random
print('')
print('Задача 3')
print('')
import random
z3_list1 = []
n = input('Введите количество элементов списка: ')
z3_count1 = 0
while z3_count1 < int(n):
z3_list1.append(random.randint(-100, 100))
z3_count1 += 1
print('Список с произвольными целыми числами: ', z3_list1)
# Задача-4: Дан список, заполненный произвольными целыми числами.
# Получите новый список, элементами которого будут:
# а) неповторяющиеся элементы исходного списка:
# например, lst = [1, 2, 4, 5, 6, 2, 5, 2], нужно получить lst2 = [1, 2, 4, 5, 6]
# б) элементы исходного списка, которые не имеют повторений:
# например, lst = [1 , 2, 4, 5, 6, 2, 5, 2], нужно получить lst2 = [1, 4, 6]
print('')
print('Задача 4')
print('')
z4_list1 = [1, 2, 4, 5, 6, 2, 5, 2]
print('Исходный список:', z4_list1)
# a)
z4_list2 = list(set(z4_list1))
print('Неповторяющиеся элементы:', z4_list2)
# б)
z4_list3 = []
for z4_unit1 in z4_list1:
z4_count = z4_list1.count(z4_unit1)
if z4_count == 1:
z4_list3.append(z4_unit1)
print('Элементы, которые не имеют повторений:', z4_list3)