• Aucun résultat trouvé

Exercices complémentaires sur les bases procédurales de Java

N/A
N/A
Protected

Academic year: 2022

Partager "Exercices complémentaires sur les bases procédurales de Java"

Copied!
2
0
0

Texte intégral

(1)

Exercices complémentaires sur les bases procédurales de Java

Université Paris Sud

Exercice 1 Les tours de Hanoï

Ce problème est un classique de la programmation récursive, où les méthodes s’appelent elle-mêmes pour résoudre un problème plus simplement. Il s’agit ici de déplacer un en- semble deN anneaux d’un piquetAà un piquetC, en se servant d’un piquet intermédiaire B. Les anneaux ont des diamètres tous différents ; nommonsai les anneaux (i= 1, . . . N) où le rayon de aj est supérieur au rayon de ai+j (j = 1, . . . N −1). Les anneaux sont au départ placés sur le piquet A, en ordre, c.à.d.ai+j au-dessus de aj (j = 1, . . . N−1). Le but est qu’ils se retrouvent à la fin en ordre sur le piquetC, sachant qu’aucun déplacement ne peut créer d’inversion d’ordre (placer un anneau d’un certain diamètre sur un anneau d’un diamètre plus petit).

Un algorithme possible pour résoudre ce problème utilise une récurrence.

On effectuera un programme avec interface textuelle (affichant les anneaux par leur numero et les piquets par leur lettre), par exemple, pour trois anneaux :

A : 1 2 3 B : C : A : 1 2 B : C : 3 A : 1 B : 2 C : 3 A : 1 B : 2 3 C : A : B : 2 3 C : 1 A : 3 B : 2

1

(2)

2 Exercices complémentaires sur les bases procédurales de Java

C : 1 A : 3 B : C : 1 2 A : B : C : 1 2 3

Exercice 2 Évaluation de polynôme par le schéma de Horner

Créer un programme qui calcule un polynômeptel que

p(x) =anxn+an−1xn−1+. . .+a0

par deux méthodes :

1. en utilisant la formule ci-dessus ; 2. en utilisant le schéma de Horner :

p(x) = (. . .(((anx+an−1)x) +an−2)x+. . .+a1)x+a0

Les entrées (n,a0, . . .,an etx) se feront par saisie au clavier. L’algorithme correspondant peut s’écrire comme suit

1 i = n - 1 2 bi = an

3 si i < 0, stop // le resultat p(x) est dans b-1.

4 i = i - 1

5 bi = bi+1 * x + ai+1 6 aller a l’etape 3.

Références

Documents relatifs

5  La figure ci-dessous est composée des carrés A, B, C et D, on la complète par le rectangle E afin de former un grand

Si Nathalie donnait 2 timbres à Pierre, alors celui-ci en aurait deux fois plus qu’elle.. Si on triple sa longueur et que l’on double sa largeur, son périmètre augmente de

Si Nathalie donnait 2 timbres à Pierre, alors celui-ci en aurait deux fois plus qu’elle.. Si on triple sa longueur et que l’on double sa largeur, son périmètre augmente de

Pour chaque question, tu ne peux utiliser qu'une fois exactement les quatre nombres, l'addition, la soustraction et la multiplication.. Toutefois, tu peux placer

Pour chaque question, tu ne peux utiliser qu'une fois exactement les quatre nombres, l'addition, la soustraction et la multiplication.. Toutefois, tu peux placer

Pour montrer que cette conjecture est toujours vraie, on désigne le premier des quatre entiers par la lettre n.. Exprime alors les

Pour montrer que cette conjecture est toujours vraie, on désigne le premier des quatre entiers par la lettre n.. Exprime alors les

Écris une expression littérale traduisant ce programmea. Factorise et réduis