• Aucun résultat trouvé

TP 3

N/A
N/A
Protected

Academic year: 2022

Partager "TP 3"

Copied!
1
0
0

Texte intégral

(1)

ECO1 LMA 2017-2018

Les boucles while...do...end

TP3

En algorithmique, on peut ˆetre amen´e `a r´ep´eter un bloc d’instruction tant qu’une condition est v´erifi´ee. On utilise dans ce cas une boucle while. La syntaxe est la suivante:

>while condition do instructions end

Si la condition est v´erifi´ee, alors les instructions sont effectu´ees, sinon elles sont ignor´ees. Lewhileet le endsont indispensables, ledoest facultatif.

Attention. Il faut veiller `a ce que la boucle se termine (et donc que la condition soit fausse) en un nombre fini d’´etapes. On peutInterrompre ouAbandonnerune proc´edure `a partir du menu de la console dans la rubriqueContrˆole.

Exercice 1 1. Entrer dans l’´editeur les instructions suivantes:

n=input( ’ Donner une v a l e u r de n : ’ ) S=0

k=1

while k<=n do S=S+k k=k+1 end

disp( S )

Tester avec diff´erentes valeurs pourn. A quoi correspond la valeur deS `a la fin de la boucle? V´erifier `a l’aide d’une formule sur les sommes usuelles.

IOn dispose ainsi de deux m´ethodes pour calculer une somme:

• Soit en utilisant une bouclefor(voir le TP2).

• Soit en utilisant une bouclewhile (comme ci-dessus).

2. Proposer deux proc´edures, une utilisant une boucleforet une utilisant une bouclewhile, pour calculer les sommes suivantes:

(1)

n

X

k=1

(3k2+ 2k+ 1) (2)

n

X

k=1

22k−1

3k+1 (3)

3n

X

k=n

k

Calculer ces sommes ”`a la main”. V´erifier que les r´esultats obtenus sont coh´erents avec les r´esultats que peut proposer Scilab.

Exercice 2 Ecrire une suite d’instructions qui demande `´ a l’utilisateur un nombre inf´erieur ou ´egal `a 100, et, en cas de r´eponse incorrecte, affiche ”SVP un nombre inf´erieur `a 100” jusqu’`a ce que la r´eponse soit bonne.

Exercice 3 Scilab permet de g´en´erer de mani`ere al´eatoire un nombre r´eel compris strictement entre 0 et 1 avec l’instructionrand().

1. ´Ecrire une instruction en Scilab permettant d’obtenir un nombre entier al´eatoire entre 0 et 5 (on utilisera la fonction partie enti`ere qui est donn´ee par la commandefloor).

2. Modifier l’instruction pr´ec´edente pour obtenir un nombre entier al´eatoire entre 1 et 6.

3. ´Ecrire une suite d’instructions qui simule le lanc´e d’un d´e `a 6 faces et qui affiche les valeurs obtenues tant que la face 6 n’est pas sortie.

1

Références

Documents relatifs

En argumentant soigneusement la r´eponse, dire si pour la s´erie observ´ee au d´ebut, on peut affirmer, avec un risque d’erreur inf´erieur ` a 10 %, que le nombre de retraits

Ecrire un programme qui, après avoir lu une configuration initiale au clavier, demande à l'utilisateur le nombre d'étapes qu'il veut visualiser,et les affiche une à une à l'écran.

Ecrire un programme C qui demande la saisie d’un caract`ere repr´esentant une lettre minus- ´ cule, puis affiche le code ASCII de ce caract`ere, affiche la lettre

Ecrire un algorithme qui demande un nombre à l’utilisateur, puis calcule et affiche le carré de ce nombre...

On note X la variable al eatoire omptant, apr es deux tirages, le nombre de boules tir ees portant un.. num ero inf erieur ou egal

En effet, un nœud motif u ne peut ˆetre appari´e ` a un nœud cible v que si le nombre de nœuds adjacents ` a u est inf´erieur ou ´egal au nombre de nœuds cibles qui sont `a la

Cette instruction permet d’incr´ ementer une variable ` a partir d’une valeur inf´ erieur jusqu’` a une valeur sup´ erieur et d’ex´ ecuter une ou des instructions entre

Un histogramme cumul´ e est un tableau donnant pour chaque valeur de niveau de gris le nombre de pixels ayant un niveau de gris inf´erieur ou ´egal `a cette