Skip to content

Commit 3a1c01f

Browse files
committed
Домашнее задание №2_normal
1 parent d7f8836 commit 3a1c01f

1 file changed

Lines changed: 59 additions & 0 deletions

File tree

lesson02/home_work/hw02_normal.py

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,84 @@
1+
__author__ = 'Иванов Сергей Борисович'
12
# Задача-1:
23
# Дан список, заполненный произвольными целыми числами, получите новый список,
34
# элементами которого будут квадратные корни элементов исходного списка,
45
# но только если результаты извлечения корня не имеют десятичной части и
56
# если такой корень вообще можно извлечь
67
# Пример: Дано: [2, -5, 8, 9, -25, 25, 4] Результат: [3, 5, 2]
78

9+
import math
10+
11+
spisok1 = [2, -5, 8, 9, -25, 25, 64, 49]
12+
spisok2 = []
13+
for item in spisok1:
14+
if item > 0:
15+
val=math.sqrt(item)
16+
if ((val % 1) == 0):
17+
spisok2.append(int(val))
18+
print(spisok2)
819

920
# Задача-2: Дана дата в формате dd.mm.yyyy, например: 02.11.2013.
1021
# Ваша задача вывести дату в текстовом виде, например: второе ноября 2013 года.
1122
# Склонением пренебречь (2000 года, 2010 года)
23+
dana_data = '01.04.2018'
24+
data_list = dana_data.split('.')
25+
dict_months = {
26+
'01': 'января',
27+
'02': 'февраля',
28+
'03': 'марта',
29+
'04': 'апреля',
30+
'05': 'мая',
31+
'06': 'июня',
32+
'07': 'июля',
33+
'08': 'августа',
34+
'09': 'сентября',
35+
'10': 'октября',
36+
'11': 'ноября',
37+
'12': 'декабря',
38+
}
39+
dict_days = {
40+
'01': 'первое', '02': 'второе', '03': 'третье', '04': 'четвёртое', '05': 'пятое',
41+
'06': 'шестое', '07': 'седьмое', '08': 'восьмое', '09': 'девятое', '10': 'десятое',
42+
'11': 'одиннадцатое', '12': 'двенадцатое', '13': 'тринадцатое', '14': 'четырнадцатое', '15': 'пятнадцатое',
43+
'16': 'шестнадцатое', '17': 'семнадцатое', '18': 'восемнадцатое', '19': 'девятнадцатое', '20': 'двадцатое',
44+
'21': 'двадцать первое', '22': 'двадцать второе', '23': 'двадцать третье', '24': 'двадцать четвёртое',
45+
'25': 'двадцать пятое', '26': 'двадцать шестое', '27': 'двадцать седьмое', '28': 'двадцать восьмое',
46+
'29': 'двадцать девятое', '30': 'тридцатое', '31': 'тридцать первое',
47+
}
48+
myday = dict_days[data_list[0]]
49+
mymonth = dict_months[data_list[1]]
50+
answer_data = myday + ' ' + mymonth + ' ' + data_list[2] + ' ' "года"
51+
print(answer_data)
1252

1353

1454
# Задача-3: Напишите алгоритм, заполняющий список произвольными целыми числами
1555
# в диапазоне от -100 до 100. В списке должно быть n - элементов.
1656
# Подсказка:
1757
# для получения случайного числа используйте функцию randint() модуля random
1858

59+
import random
60+
61+
n = input('Введите количество элементов в списке: ')
62+
spisok = []
63+
for i in range(int(n)):
64+
spisok.append(str(random.randint(-100,100)))
65+
print(spisok)
66+
1967

2068
# Задача-4: Дан список, заполненный произвольными целыми числами.
2169
# Получите новый список, элементами которого будут:
2270
# а) неповторяющиеся элементы исходного списка:
2371
# например, lst = [1, 2, 4, 5, 6, 2, 5, 2], нужно получить lst2 = [1, 2, 4, 5, 6]
2472
# б) элементы исходного списка, которые не имеют повторений:
2573
# например, lst = [1 , 2, 4, 5, 6, 2, 5, 2], нужно получить lst2 = [1, 4, 6]
74+
75+
lst = [1, 1, 2, 4, 5, 6, 2, 5, 2]
76+
new_lst = set(lst)
77+
print(new_lst)
78+
79+
new2_lst = []
80+
for item in lst:
81+
if lst.count(item) == 1:
82+
new2_lst.append(item)
83+
print(new2_lst)
84+

0 commit comments

Comments
 (0)