• Aucun résultat trouvé

1.Unexempled’algorithmeutilisantuneboucleit´erativenonconditionnelle TDn˚2Boucleit´erativenonconditionnelle

N/A
N/A
Protected

Academic year: 2022

Partager "1.Unexempled’algorithmeutilisantuneboucleit´erativenonconditionnelle TDn˚2Boucleit´erativenonconditionnelle"

Copied!
3
0
0

Texte intégral

(1)

Lyc´ee Benjamin Franklin PTSI−2012-2013

D. Blotti`ere Algorithmique

TD n˚2

Boucle it´ erative non conditionnelle

1. Un exemple d’algorithme utilisant une boucle it´ erative non conditionnelle

On d´efinit les variables suivantes : – variablei contenant un entier ; – variablesomme contenant un entier.

On se donne un entier naturel non nulnfix´e, puis on consid`ere l’algorithme suivant.

Algorithme 1 1 somme←0

2

3 Pour iallant de 1 `a n, par pas de 1, Faire 4 somme←somme+i

5 Fin du Faire 6

7 Afficher(somme)

Question 1

1. On suppose quen= 4. Donner les valeurs des variablesiet n, ligne apr`es ligne, lorsqu’on ex´ecute l’algo- rithme.

On recopiera et on compl`etera le tableau suivant.

Num´ero de ligne Valeur de i Valeur desomme

1 ? 0

2 ? 0

... ... ...

2. D´ecrire le probl`eme auquel r´epond cet algorithme, `a l’aide d’une phrase.

3. Proposer un algorithme, sans boucle it´erative non conditionnelle, qui r´eponde ´egalement au probl`eme

´

enonc´e en 2.

1

(2)

2. Qu’est-ce qu’une boucle it´ erative non conditionnelle ?

Une boucle it´erative non conditionnelle permet de r´ep´eter un nombre de foisd´efini `a l’avanceune mˆeme suite d’instructions.

Par exemple, dans l’agorithme n˚1, on r´ep`etenfois l’affectation somme←somme+i

avec une valeur de i qui vaut 1 au d´ebut, puis qui augmente de 1 `a chaque it´eration (r´ep´etition), jusqu’`a ce qu’elle atteigne la valeurn.

Une boucle it´erative non conditionnelle a la structure suivante

Structure d’une boucle it´erative non conditionnelle Pouriallant dev init`av f in par pas dev pas, Faire

suite d’instructions `a r´ep´eter ou

corps de la boucle Fin du Faire

o`u

– i d´esigne l’indice d’it´eration (le num´ero de l’it´eration) ; – v initd´esigne la valeur de d´epart de l’indice d’it´eration ; – v f in d´esigne la valeur de fin de l’indice d’it´eration ;

– v pasd´esigne la valeur du pas (incr´ement) de laquelle est augment´e l’indice `a chaque nouvelle it´eration.

Remarque

Comme indiqu´e ci-dessus, la valeur deiest le num´ero de l’it´eration. Elle est une variable de l’algorithme (avec une valeur assign´ee d`es qu’on rentre dans la boucle) et peut, `a ce titre, ˆetre utilis´ee dans le corps de la boucle (cf. algorithme 1).

3. Exercices

Exercice 5

Soitnun entier naturel non nul.

Ecrire un algorithme qui affiche´ nfois

Bonjour !

avec un retour `a la ligne, apr`es chaque affichage de la chaˆıne de caract`eresBonjour !. Exercice 6

Soitnun entier naturel non nul.

Ecrire un algorithme qui affiche la liste des´ npremiers multiples de 7 (le premier ´etant 0), avec un retour `a la ligne, apr`es chaque affichage d’un des multiples.

Exercice 7

Soitnun entier naturel non nul.

1. ´Ecrire un algorithme, utilisant une boucle it´erative non conditionnelle, qui affiche la valeur de la somme desnpremiers entiers impairs (le premier entier impair ´etant 1).

2. Proposer un algorithme affichant la somme des n premiers entiers impairs, qui n’utilise pas de boucle it´erative non conditionnelle.

2

(3)

Exercice 8

Soitq∈R\ {1} et soitn∈N. On noteS(n, q) la somme d´efinie par : S(n, q) =

n

X

k=0

qk.

1. ´Ecrire un algorithme, utilisant une boucle it´erative non conditionnelle, qui affiche la valeur deS(n, q).

2. Discuter la complexit´e (e.g. du nombre de multiplications) de l’algorithme ´ecrit en 1..

3. Proposer un algorithme affichant la valeur deS(n, q), qui n’utilise pas de boucle it´erative non condition- nelle.

Exercice 9

On rappelle que pour toutn∈N, la factorielle den, not´een!, est le nombre entier naturel d´efini par : n! = 1×2×3×. . .×(n−1)×n.

On a donc 1! = 1 et la relation de r´ecurrence :

(n+ 1)! = (n+ 1)×n!

valable pour toutn∈N. 1. Soitn∈N.

Ecrire un algorithme qui affiche la valeur de´ n!.

2. Soitn∈N.

Ecrire un algorithme qui affiche les´ npremi`eres factorielles (la premi`ere ´etant 1!), avec un retour `a la ligne apr`es chaque affichage d’une factorielle.

Exercice 10

Soit (un)n∈Nla suite d´efinie paru0= 1 et la relation de r´ecurrence : un+1= 3un−1 valable pour toutn∈N.

Soitn∈N.

1. ´Ecrire un algorithme qui affiche la valeur deun.

2. ´Ecrire un algorithme qui affiche la valeur de la sommeSn d´efinie par : Sn=

n

X

k=0

uk.

Exercice 11

Soitn∈N. On noteSn la double somme d´efinie par :

n

X

i=1 i

X

j=1

ij.

1. ´Ecrire un algorithme, utilisant deux boucles it´eratives non conditionnelles imbriqu´ees, qui affiche la valeur deSn.

2. Proposer un algorithme affichant la valeur deSn, qui n’utilise aucune boucle it´erative non conditionnelle.

3

Références

Documents relatifs

Cet algorithme affiche les points gagnés grâce à la note

5 Voici la liste des musées français les plus visités au monde en 2012.. Complète

puissance de résolution, c’est-à-dire la plus petite valeur qu’il distingue de zéro (classiquement de l’ordre de 10-39), et sa précision de calcul, c’est-à-dire

Dans cet exercice, il convient fondamentalement de poser proprement les calculs des sommes demandées. On fait alors facilement apparaître des

Le programme devra dire si l’utilisateur a trouv´ e ou pas le nombre, si l’utilisateur ne le trouve pas, le programme devra indiquer si le nombre saisi est trop grand ou trop

Pour effectuer une tâche , il est parfois nécessaire d’exécu- ter plusieurs fois de suite les mêmes instructions mais le nombre de fois n’est pas déterminé à l’avance :

Dessiner maintenant les rangements successifs des bouteilles vides de Ro- dolphe pour les quatre premiers jours, en sachant qu'il cherche à les ranger de la façon la plus

[r]