1ière S ALGORITHME 2012/2013 Hobraiche Coco A. I

publicité
1ière S
ALGORITHME 2012/2013
Hobraiche Coco A.
I. INTRODUCTION
Qu’est-ce qu’un algorithme ?
C’est une succession d’instructions amenant à la résolution d’un problème.
Il peut être écrit en langage naturel ou en langage de programmation (en C, C+, Java, Python, langage Ti ou Casio, ou
encore langage Algobox)
Et il se présente en trois parties :
I.
Les données : les variables
Dans cet étape on présente et nomme toutes les données qui seront nécessaires et traitées au cours de
l’algorithme : on dit qu’on déclare les variables. Elles peuvent être saisies au clavier (in put) ou créer en
cours d’algorithme.
Créer une variable permet à l’ordinateur de créer un espace mémoire dans lequel il enregistrera la valeur
de la variable.
II.
Le traitement : Le PROGRAMME
Il est constitué d’une suite d’instructions, de fonctions prédéfinies, d’opérations sur les données qui
permettent de résoudre le problème.
III.
Les sorties :
Il s’agit du résultat obtenu (variable out put. !Elle doit être nommée dans les variables memê si on ne
connaît pas le résultat)(résultat d’un calcul, figure…) qui peut être affiché à l’écran ou enregistré dans un
fichier.
Exemples d’algorithmes célèbres:
La recette des crêpes
Lait,
Œufs,
Farine,
Beurre,
Verser la farine dans le lait
Puis les œufs, une cuillère de matière grasse
et battez au fouet jusqu’à obtenir une pâte
homogène et onctueuse.
Laisser reposer la pâte un bon moment.
Faites chauffer votre crêpière avec un peu
de matière grasse.
Transformer en seconde
Suite de Syracuse
On donne la durée en
Heure/minute/seconde
hms
On effectue les conversions pour
donner la durée en seconde :
hx3600 + mx60 + s
Choisir un nombre entier naturel
n
Si n est pair alors calculez n/2.
Si n est impair alors calculez
3n+1.
Et recommencer jusqu’à trouver
1.
Versez une louche, étalez finement. Lorsque
le côté est cuit, faites sauter pour la
retourner.
Refaites sauter dans votre assiette,
saupoudrez la crêpe de sucre, dégustez.
Exercice : Programme de calcul et
algorithme
1) Appliquer cet algorithme à 0 ; -1 ; 1/3.
2) Appliquer cet algorithme à un réel x.
3) Ecrire l’algorithme à l’aide de Algobox. Vérifier vos résultats.
4) Quel nombre x choisir pour que le résultat soit 4 ? Et 9 ?
Ecrire votre démarche pour trouver ce nombre x.
5) Ecrire un programme avec algobox permettant en partant du
nombre affiché de retrouver le nombre de départ.
II. LES INSTRUCTIONS
1.
L’AFFECTATION : CONSISTE A ATTRIBUER UNE VALEUR A UNE VARIABLE.
C’est une instruction fondamentale.
Vous avez déclaré une variable nommée x et de type nombre.
Vous voulez lui attribuer la valeur 5 Ou le résultat d’un calcul ( y/2) utilisant une autre variable.
En langage naturel on note : x :=5 ou encore x← 5 (PYTHON). On dit x reçoit 5 ou x := y/2.
Avec Algobox, il existe une fonction prédéfinie, qui permet d’affecter une valeur à une variable.
L’affectation d’une variable efface toute valeur antérieurement affectée
2.
INSTRUCTIONS CONDITIONNELLES :
Souvent on est amené à effectuer des instructions sous certaines conditions (pensez au trois cas du Δ)
En langage naturel une l’instruction conditionnelle se formule :
SI ……….. ALORS ………
Ou aussi
SI ………...ALORS ……….SINON ……….
3.
REPETITION EN BOUCLE :
On peut être amené à répéter un bloc d’instruction tant qu’une condition reste vérifiée.
En langage naturel on formulerait : « Tant que……… Alors…. »
Si la condition qui suit tant que est vérifiée alors le programme exécute toutes les instructions du bloc qui suit
ALORS, sinon le bloc est entièrement ignoré.
Exercice :
1) Tester la suite de Syracuse avec 2 ; 7 ; 19.
2) Ecrire en langage naturel l’algorithme de la suite de Syracuse.
3) Ecrire avec Algobox l’algorithme de la suite de Syracuse
TRAVAIL EN AUTONOMIE :
On considère le polynôme du second degré P(x) = ax² + bx + c.
On se propose de résoudre l'équation P(x) = 0
1) Ecriture de l'algorithme
a) Quels sont les paramètres en entrée de l'algorithme ?
b) A l'aide de quelle structure algorithmique, peut-on traiter la discussion sur le nombre de solutions de l'équation ?
c) Proposer un algorithme répondant au problème posé. En langage naturel.
2) Implémentation sous AlgoBox
a) Implémenter l'algorithme proposé à l'aide d'AlgoBox
b) Le tester pour résoudre les équations suivantes :
• 3x² + 9x - 30 = 0
• x² + 3x - 2 = 0
• 3x² + x + 2 = 0
• 49x² - 14x + 1 =0
Quelle est la différence pour les solutions obtenues pour la première équation par rapport à celles de la deuxième équation ou
la quatrième équation ?
c) Donner les solutions réelles exactes des équations ayant des solutions.
Téléchargement