import random
import math

# Задача-1:
# Дан список, заполненный произвольными целыми числами, получите новый список,
# элементами которого будут квадратные корни элементов исходного списка,
# но только если результаты извлечения корня не имеют десятичной части и
# если такой корень вообще можно извлечь
# Пример: Дано: [2, -5, 8, 9, -25, 25, 4]   Результат: [3, 5, 2]
'''
l = [2, -5, 8, 9, -25, 25, 4]

l2 = [l2 ** 0.5 for l2 in l if l2 > 0 and (l2 ** 0.5) - math.trunc(l2 ** 0.5) == 0]

print(l2)
'''
# Задача-2: Дана дата в формате dd.mm.yyyy, например: 02.11.2013.
# Ваша задача вывести дату в текстовом виде, например: второе ноября 2013 года.
# Склонением пренебречь (2000 года, 2010 года)
'''
date = input("Введите дату в формате dd.mm.yyyy: ")
split_date = date.split(".")
year = split_date[2]
day = split_date[0]
month = split_date[1]

if day.startswith('0'):
	day_without_zero = day.replace('0', '')
else:
	day_without_zero = day

if month.startswith('0'):
	month_without_zero = month.replace('0', '')
else:
	month_without_zero = month

monthes = {'1': "января", '2': "февраля", 
		 '3': "марта", '4': "апреля",
		 '5': "мая", '6': "июня",
		 '7': "июля", '8': "августа",
		 '9': "сентября", '10': "октября",
		 '11': "ноября", '12': "декабря"}

days = {'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': "тридцать первое"}

print('{} {} {} {}'.format(days[day_without_zero], monthes[month_without_zero], year, "года"))
'''
# Задача-3: Напишите алгоритм, заполняющий список произвольными целыми числами
# в диапазоне от -100 до 100. В списке должно быть n - элементов.
# Подсказка:
# для получения случайного числа используйте функцию randint() модуля random
'''
try:
	N = int(input("Введите количество элементов списка: "))
except:
	print("Введите число")

rl = [rl for rl in range(random.randint(-100, 0), random.randint(0, 100))]
print(rl)
'''
# Задача-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]

# a)
#lst = [1, 2, 4, 5, 6, 2, 5, 2]
#lst2 = list(set(lst))
#print(lst2)

# b)
lst = [1, 2, 4, 5, 6, 2, 5, 2]
lst2 = []
lst2 = [lst2 for lst2 in lst if lst.count(lst2) == 1]
print(lst2)