# дз: ф-ция is_even(a) должна определить, четное это число или нечетное

def is_even(a):
    if a % 2 == 0:
        print("число " + str (a) + " четное")
    else:
        print("число " + str(a) + " нечетное")
            
is_even(8)



# дз: реализовать ф-цию, кот-я будет принимать на вход 2 аргумента. Если n > 20, сразу возвращаем из функции число 0
# если n <= 20, то проходимся по диапазону от 1 до n, все четные числа в этом диапазоне возвести в степень k и сложить эти числа. Сумму этих чисел вернуть пользователю

def my_function(n, k):
    if n > 20:
        return 0
    
    if n <= 20:
        total_sum5 = 0
        for i in range(1, n+1):
            if i % 2 == 0:
                total_sum5 += i ** k
        return total_sum5

my_function(7, 2)
        

# дз: создать калькулятор для индекса массы тела (вес в кг разделенный на квадрат)

name = "Tom"
height = 2
weight = 150
bmi = weight / (height ** 2)  

print("индекс массы тела: " + str(bmi))  

if bmi < 25:
    print("у " + name + " нет лишнего веса")
else:
    print("у " + name + " есть лишний вес")


# задача. Есть список с неким паттерном значений внутри него: есть одно строковое значение, после которого идут несколько числовых значений
# необходимо из списка создать словарь, где ключ - это срока, а значение - список из чисел за ней

a = ["first", 1, 2, 3, "second", 10, 20, "third", 15, 56, 70, "fourth", -50]


my_dict = {}
current_str = None

for e in a:
    if(type(e) == str):
        my_dict[e] = []    
        current_str = e    
    else:
        my_dict[current_str].append(e)  
                                        
        
print(my_dict)
                
