• Aucun résultat trouvé

DS 1

N/A
N/A
Protected

Academic year: 2022

Partager "DS 1"

Copied!
2
0
0

Texte intégral

(1)

DS 1

Informatique pour tous, deuxième année

Julien Reichert

Durée : 2 heures maximum.

Exercice 1 : Réaliser une implémentation de la structure de pile : expliquer la structure choisie et écrire les trois fonctions de base associées, ainsi que les fonctionssommet,est_videettaille.

Exercice 2 : D’après la formule du cours, quelle est la complexitécnd’un algorithme en fonction de la taillende son entrée si cette complexité s’obtient par la formule de récurrencecn =cn/2+ 1? Donner un exemple d’algorithme ayant cette complexité.

Exercice 3 : Écrire un programme qui, étant donné une liste d’entiers représentant une expression utilisant diverses parenthèses ouvrantes et fermantes, revoie la liste des couples correspondant aux positions des ouvertures et ferme- tures des paires de parenthèses associées. Par convention, l’entier positif i correspond à une parenthèse ouvrante de typei, l’entier négatif -icorrespond à une parenthèse fermante de typei, et l’entier0correspond à autre chose qu’une parenthèse et qui est donc à ignorer. La fonction doit renvoyer un message d’erreur si la liste ne correspond pas à un bon parenthésage.

La fonction, prenant comme argument la liste [1,0,2,0,-2,3,-3,-1], renverra alors [(0,7),(2,4),(5,6)].

L’ordre d’apparition des couples n’est pas important pour cette question.

Exercice 4 : Écrire un programme qui, étant donné une configuration intermédiaire possible dans le problème des tours de Hanoï, imprime la liste des opérations nécessaires pour arriver à une configuration finale (peu importe sur lequel des trois piquets les anneaux seront placés). Les arguments de la fonction seront alors trois listes décroissantes contenant à elles trois une et une seule fois tous les nombres de 0à un certain entier naturel n. Il est essentiel de bien voir comment lancer la récursion. On ne demande pas que la séquence d’opérations soit optimale.

1

(2)

Exercice 5 : Robozzle.

Une instance de Robozzle est un plateau de jeu contenant des cases de trois couleurs différentes : des bleues, des rouges et des vertes, certaines de ces cases étant marquées d’une étoile, d’un robot présent sur une des cases avec une orientation quelconque parmi les quatre directions cardinales, et d’une liste de fonctions à remplir avec pour chaque fonction une limite d’instructions. Les instructions possibles sont de la formesi condition alors action, avec 4 conditions possibles : vrai, la case du robot est bleue, la case du robot est rouge, la case du robot est verte.

Les actions possibles sont l’avancée d’une case, un virage à gauche sur place, un virage à droite sur place et un appel récursif à n’importe laquelle des fonctions. Une instance est résolue si on parvient à renseigner les fonctions disponibles (pas nécessairement toutes) dans la limite de la place disponible de sorte que le robot passe par toutes les cases marquées d’une étoile (ce qui interrompt immédiatement l’exécution des instructions) sans jamais sortir du plateau (par exemple en avançant à un endroit où il n’y a pas de case). L’exécution doit démarrer sur F1, en outre.

À titre d’exemple, l’instance suivante peut se résoudre en fournissant, avec une fonction de 5 instructions disponible : F1 : si vrai alors avancer (qu’on écrira simplement « avancer »), avancer, tourner à gauche, si la case du robot est verte alors tourner à droite (qu’on écrira simplement « droite vert ») et répéter F1.

Résoudre les six autres instances du jeu ci-dessous.

Résoudre la dernière instance signifie que les piles et la récursivité sont pleinement maîtrisées. . .

2

Références

Documents relatifs

Déterminer le plus petit entier > 2015 qui a une étiquette bleue puis le plus petit entier > 2015 qui a une étiquette

Q 4 Démontrer qu’il existe une infinité d’entiers ayant une étiquette rouge. ) Pour vérifier si un nombre a une étiquette bleue il suffit de tester tous les nombres qui lui sont

Les nombres ayant l'étiquette violette font partie des nombres colombiens (http://oeis.org/A003052) qui sont multiples de 9. Les étiquettes violettes, au nombre de 20, sont

Complète les cases.. Complète

Toon heeft vorige zaterdag voor zijn vrienden in de garage een feestje

en Rhône-Alpes : une 20 aine de SCoT et de nombreux enjeux de préservation des corridors.. Image

La grenouille fait toujours des sauts de trois cases (elle arrive donc sur le 3 après son premier saut), le kangourou fait toujours des sauts de six cases et le lièvre des sauts

Le joueur en tête de course avance d’une case supplémentaire.. Le joueur en