Algorithme 1 ( algobox ) PROGRAMMATION ISN TS

Download Report

Transcript Algorithme 1 ( algobox ) PROGRAMMATION ISN TS

TS ISN
PROGRAMMATION Algorithmes ( sous algobox )
9 et 16 octobre 2014
I / Premiers pas :
PROGRAMME 1 :
Résoudre l'équation : ax² + bx + c = 0
PROGRAMME 2 :
...................................................
PROGRAMME 3 :
......................................................
II/ Les éléments d'un programme :
•
Déclaration des variables :
....................................................................................................................................................................................................
....................................................................................................................................................................................................
.....................................................................................................................................................................................................
•
Initialisation des variables : ( ou instruction d'entrée )
....................................................................................................................................................................................................
....................................................................................................................................................................................................
.....................................................................................................................................................................................................
•
Affectation des variables :
....................................................................................................................................................................................................
....................................................................................................................................................................................................
.....................................................................................................................................................................................................
•
Des instructions conditionnelles :
IF .... ELSE :
.................................................................................................................................................................
.....................................................................................................................................................................
FOR :
.................................................................................................................................................................
.....................................................................................................................................................................
WHILE :
.................................................................................................................................................................
.....................................................................................................................................................................
•
Les instructions de sortie :
....................................................................................................................................................................................................
III/ S'entrainer :
PROGRAMME 4 :
Etape 1 :
On tire une fléchette au hasard dans l’une des
cibles ci-contre.
Quelle est la probabilité p ( exprimée sous la
forme d’une fraction irréductible < 1 ) que la
fléchette tombe dans la partie hachurée de la
cible dans chacun des cas ?
Etape 2 :
Dans le dernier cas la probabilité p fait intervenir π . En simulant n lancers de fléchette au hasard dans cette dernière cible et en
S
comptant le nombre S de fléchettes tombées dans la partie hachurée, on devrait avoir pour n assez grand : ; p et ainsi pouvoir
n
obtenir une approximation de π de façon statistique. ( ce type de méthode est appelée méthode de Monte-Carlo
comme la ville fameuse pour ses casinos et leurs jeux de hasard )
1) Pour simuler le lancer d’une fléchette au hasard dans la cible,
rr
on munie le plan du repère O;i; j ainsi choisi.
(
)
Chaque fléchette arrive sur la cible en un point M de coordonnées
(x ;y) . x et y sont donc des nombres aléatoires compris entre 0 et 1.
la cible ( dans la colonne A : x et dans la colonne B : y )
Quel test permet de savoir si M(x ;y) est dans la partie hachurée ?
……………………………………………………………………………………………………………………
2) L'algorithme ci-contre est écrit à l'aide du logiciel Algobox.
Remarques:
• « <= » signifie ≤
• « random » ressort au hasard un nombre réel compris entre 0 et 1
• « pow(X,2) » calcule x²
Taper le programme sou algobox
Exécuter l'algorithme en rentrant N = 10 , N = 50 , N = 100 , N = 1000 , N = 5000.
3) Relancer l'algorithme en sélectionnant le « mode pas à pas » avec N = 5.
Déterminer alors le rôle de chacune des variables :
N : …...........................................................................................................................
i : …............................................................................................................................
x et y : …....................................................................................................................
S : …...........................................................................................................................
P : …............................................................................................................................
4) Modifier le programme en utisant une "boucle " FOR
5) Modifier l'algorithme pour qu'il affiche le nombre de « lancers » nécessaires pour obtenir une valeur approchée à 10-q
près de π où q est un entier à saisir.
Remarques :
«abs(x-y » calcule : x − y
• « Math.PI » ressort une valeur approchée de π assez précise.
Exécuter alors 4 fois l'algorithme ainsi obtenu avec q = 2 puis avec q = 4 , noter les résultats dans le tableau :
•
6)
1ère exécution N =
2nd exécution N =
3ième exécution N =
4ième exécution N =
q=2
q=4
Remarque : Ce type de méthode est appelée méthode de Monte-carlo . On utilise des calculs similaires pour donner rapidement de
bonnes valeurs approchées de résultats dont les valeurs exactes ne sont accessibles que par des calculs très complexes et très gourmant
en temps et puissance de calcul.
PROGRAMME 5 :
Ecrire sous algobox un programme donnant : le rang N tel que : si n > N alors u n −
A ≤ 10− 3
 u0 = A

où A est un entier naturel donné et (un) la suite telle que : 
1
A  où A est un réel et A >1 .
 un+ 1 = 2  un + u 

n 

Remarque : Ce serait l'objet d'un exercice classique de mathématiques de démontrer que la suite (un) ainsi définie converge et que sa
limite est A . Cette méthode de calcul permet de calculer une valeur approchée de A "à la main". On la doit à Héron d'alexandrie
qui a vécu au sc. après JC .
PROGRAMME 6 :
Etape 1:
UN JEU : Mettez vous par 2. Un élève pense à un nombre: N entre 0 et 1000, le second doit deviner la valeur de N . Pour cela il
fait des proposition à chacune d'elle, on lui répond si N est plus grand ou plus petit que sa proposition. Il faut trouver N avec le
moins de proposition possible. Échangez les rôles. Quelle stratégie de proposition avez vous adoptez ? Pourquoi ?
Etape 2 :
On donne ci-contre la graphique de la fonction f.
1) Dresser le tableau de variation de f sur [ 0, 25;7 ] .
2) Combien l'équation f(x) = 1 a de solutions ? …............
3) On note α et β ces solutions, en donner un encadrement par deux entiers consécutifs : ......< α <........
et
..... < β < …....
Etape 3 :
1) Sur la base de la stratégie du JEU à l'étape 1 , écrire un algorithme permettant de donner deux nombres donnant un encadrement
de α d'amplitude 10-2 .
2) Puis écrire un second algorithme permettant de donner deux nombres donnant un encadrement de β d'amplitude 10-p où p est
un entier .
2
ln x
On donne f(x) = + 2
( ce qui sous algobox s'écrit : f(x) = 2/x + 2*log(x)/x ) .
x
x
On pourra définir cette fonction dans l'onglet "Utiliser une fonction numérique ".
Remarque : Cette méthode d'approximation est appelée méthode de dichotomie ( découpage en 2 )