## Exercice 1
def valeur_maximum(L):
    max = L[0]
    for elem in L:
        if elem > max:
            max = elem
    return max

def position_maximum(L):
    pos_max = 0
    for i in range(len(L)):
        if L[i] > L[pos_max]:
            pos_max = i
    return pos_max

def valeur_minimum(L):
    min = L[0]
    for elem in L:
        if elem < min:
            min = elem
    return min

def position_minimum(L):
    pos_min = 0
    for i in range(len(L)):
        if L[i] < L[pos_min]:
            pos_min = i
    return pos_min


## Exercice 2
L1 = [0, "boujour", 3]
L2 = [7.5, 1]
#print(L1 + L2, L1 + [L2], L1 + [0], L2 + L2 + L2)

## Exercice 3
nombre_de_chiffres = [1]*10 + [2]*90 + [3]*900 + [4]*500
#print((nombre_de_chiffres[27], nombre_de_chiffres[999], nombre_de_chiffres[1000]))

## Exercice 4
def zéros(k):
    Zer = []
    for i in range(k):
        Zer.append(0)
    return Zer
#print(zéros(8))

def concatène(L1, L2):
    nouvelle_liste = []
    for elem in L1:
        nouvelle_liste.append(elem)
    for elem in L2:
        nouvelle_liste.append(elem)
    return nouvelle_liste
#print(concatène([0, 3, -4, 3], [2, 5]))

## Exercice 5
carrés_parfaits = [ i**2 for i in range(31) ]
multiples = [ 3*i for i in range(5, 34) ]
#print(carrés_parfaits, impairs)

def premiers(k, L):
    return [ L[i] for i in range(k) ]
#print(premiers(4, [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]))



## Exercice 7
def éléments_pairs(L):
    liste_pairs = []
    for elem in L:
        if elem % 2 == 0:
            liste_pairs.append(elem)
    return liste_pairs

#print(éléments_pairs([3, 2, 14, -2, 5, 2, 7, 9]), éléments_pairs([1, 5, 11])) # Pour tester


## Exercice 8
def premières_valeurs(n):
    L = [-1]
    u = -1
    for i in range(n):
        u = i*u - 3
        L.append(u)
    return L
