NSI (terminale) · Chapitre 6 · Exercice d'entraînement
Problème — Faire tourner une image
Diviser pour régner · D'autres algorithmes « diviser pour régner » · niveau 3 (difficile)
Énoncé
Problème — Faire tourner une image.
Une image carrée de pixels, avec puissance de , est représentée par une liste de lignes, chaque ligne étant une liste de pixels. On veut la faire tourner d'un quart de tour dans le sens des aiguilles d'une montre, par la méthode « diviser pour régner » :
- on découpe l'image en quatre quarts :
A(haut gauche),B(haut droite),C(bas gauche),D(bas droite) ; - on fait tourner chaque quart, récursivement ;
- on recompose l'image en déplaçant les quarts.
- Dans un quart de tour horaire, où vont les quarts
A,B,CetD? - Écrire la fonction récursive
rotation(M)qui renvoie l'image tournée, et la tester sur la matrice des nombres de à écrits ligne par ligne. - Évaluer le coût en fonction du nombre de pixels .
Un exercice à chercher : son corrigé n'est pas publié. Sur Adloun, le tuteur guide par questions, sans donner la réponse.