#! /usr/bin/env python3

def kubik(n):
    return n ** 3


def kugelvolumen(r):
    pi = 3.1415
    volumen = 4/3 * pi * r ** 3
    return volumen


def create_array(func, iterable):
    new_list = [func(i) for i in iterable]
    return new_list


def inc3(i):
    return i + 3


def inc_5(i):
    return i + 5


mylist = list(range(1, 11, 2))

print(list(map(kubik, mylist)))
# print('-'.join(create_array(str, mylist)))
print('-'.join(map(str, mylist)))

print(list(map(inc3, mylist)))
# Lambda-Ausdruck ist leichtgewichtige Funktion (Lightweight function)
print(list(map(lambda n:n + 3, mylist)))
print(create_array(lambda n:n + 3, mylist))

def quad(n):
    return n ** 4

func = lambda n: n ** 4
print("2 hoch 4:", func(2))
print("2 hoch 4:", quad(2))

# Lambda-Ausdruck direkt aufrufen
print((lambda n: n ** 4)(2))
