Lyc´ee Benjamin Franklin PTSI −2012-2013
D. Blotti`ere Algorithmique
TD n˚3
Instruction conditionnelle
1. Un premier exemple d’algorithme utilisant une instruction conditionnelle
On se donne un nombre r´eel xet on consid`ere l’algorithme suivant.
Algorithme 1
1 Si ( ( x > −1 ) et ( x < 1 ) ) Alors
2 Afficher ( ”Bonjour !” )
3 Fin de Si
Question 1
1. On suppose que x=−0,7. Expliquer, ligne apr`es ligne, l’ex´ecution de l’algorithme 1.
2. On suppose que x= 3. Expliquer, ligne apr`es ligne, l’ex´ecution de l’algorithme 1.
3. Expliquer le r´esultat obtenu lorsque l’on ex´ecute l’algorithme 1, lorsque xest un r´eel quelconque.
4. Par quelle chaˆıne de caract`eres serait-il plus pertinent de remplacer la chaˆıne de caract`eres ”Bonjour !”
dans l’algorithme 1 ?
2. Un deuxi`eme exemple d’algorithme utilisant une instruction conditionnelle
On se donne trois nombres : a∈R∗,b∈Ret c∈R.
On d´efinit une variable Delta destin´ee `a contenir des nombres r´eels et on consid`ere l’algorithme suivant.
Algorithme 2
1Delta ←b2−4ac
2
3 Si ( Delta < 0 ) Alors
4 Afficher ( ”Neptune” )
5 Sinon
6 Afficher ( ”Saturne” )
7 Fin de Si
Question 2
1. On suppose que (a, b, c) = (2,3,−1). Expliquer, ligne apr`es ligne, l’ex´ecution de l’algorithme 2.
2. On suppose que (a, b, c) = (1,1,1). Expliquer, ligne apr`es ligne, l’ex´ecution de l’algorithme 2.
3. Expliquer, ligne apr`es ligne, l’ex´ecution de l’algorithme 2 pour un triplet (a, b, c)∈R∗×R×Rquelconque.
4. Par quelles chaˆınes de caract`eres serait-il pertinent de remplacer les chaˆınes de caract`eres ”Neptune” et
”Saturne” dans l’algorithme 2 ?
1