CODE PUZZLE

[Exemple 1] Programmes Python
**Programme 1** Compléter la fonction `puissance`. * La fonction prend en paramètres $a$ et $n$ avec $a$ et $n$ deux entiers positifs supérieurs ou égaux à zéro et renvoie $a^n$. * La fonction doit être une fonction récursive. * Indiquer dans le code, à l'aide de commentaires, la partie qui correspond à la condition d'arrêt et la partie qui correspond aux appels récursifs. **Programme 2** Compléter le code ci-dessous (dix `...` à compléter). Rappels: le 'slicing' ``` Soit L une liste L[1:] # sélection de tous les éléments sauf le premier (= suppression du premier élément) L[:2] # sélection des 2 premiers éléments L[-1] # sélection du dernier élément L[-3] # sélection du 3ème élément en partant de la fin L[-3:] # sélection des 3 derniers éléments L[1:3] # sélection de tous les éléments entre le 2ème (inclus) et le 4ème (exclu) ```
PROGRAMME 1
def puissance(a, n):
console
Prêt!
PROGRAMME 2
def fusion(L1, L2): if L1 == [] or L2 == []: return ... if L1[0] <= L2[0]: return ... + fusion(L1[1:], L2) return [L2[0]] + ... def tri_fusion(liste): if len(liste) <= 1: return ... milieu = ... demi_liste1 = liste[...] demi_liste2 = liste[...] demi_liste1_triee = ... demi_liste2_triee = ... return ...(demi_liste1_triee, demi_liste2_triee)
console
Prêt!