ALGORITHMIQUE
I. Pré-requis: Unalgorithmeest une succession d'instructions permettant la résolution d'un problème donné. Remarque: ce terme vient du nom du mathématicien AL-KHWARIZMI (IX°siècle), qui mit en place un algorithme afin de résoudre des équations du second degré.
Unlangage de programmationest un ensemble d'instructions et de règles syntaxiques compréhensibles par un ordinateur et permettant de créer des algorithmes. Unprogrammeest la traduction d'un algorithme dans le langage de programmation utilisé.
CASIO Comment créer ou modifier un programme? Touche MENU puis choisir PGRM et: EDIT pour modifier un programme existant NEW pour créer un nouveau programme EXEC pour exécuter un programme Instructions d'un programme: Les instructions sont séparées par un retour à la ligne EXE. Une ligne peut éventuellement comporter plusieurs instructions, séparées par :
X Cas
L'édition d'un programme se fait dans la ligne de commande. Aller dans le menuCfg,Configuration du Caset vériier que l'onglet PROG STYLE est en mode XCAS
Les instructions sont séparées par un retour à la ligne SHIFT ENTER. Une ligne peut contenir plusieurs instructions, séparées par ; Les lignes doivent absolument se terminer par ;
On appellevariabletout emplacement de la mémoire de l'ordinateur dans lequel on stocke une information qui peut être changée. Une variable est donc constituée: d'unnomqui permet de reconnaître où elle se situe dans la mémoire d'unevaleur: d'un nombre ou plus généralement de l'information stockée
Lescommandes d'affichageservent à afficher l'écran du texte ou la valeur d'une variable.
Lescommandes d'entrées à valeurspermettent à l'algorithme de demander à l'utilisateur un nombre, un caractère ou un texte. On note en langage algorithmiquesaisir a.
CASIO «Texte»(afficher le texte entre guillemets) A (afficherla valeur de A) ? -> A(demande à l'utilisateur de stocker dans la variable A)
X Cas Print ( «texte», a) ; affiche le texte suivi de la valeur de a Input («Entrer A:», A);(demande à l'utilisateur d'entrer une variable A et attend que la valeur soit entrée)
II. Structuresconditionnelles: 1. Si...alors...sinon: Ces instructions permettent de tester si une condition est vraie ou fausse et de poursuivre le programme d'une manière différente selon que la condition soit vraie ou fausse. On écrira en langage algorithmique: Sicondition Alorsinstructions si condition vraie Sinoninstructions si condition fausse Finsi
Casio Ifcondition Theninstructions si condition vraie Elseinstructions si condition fausse ifend If, then, else et ifendsont accessibles dans le menu SHIFT, PGRM puis COM.
Xcas If (condition) {instructions;... instructions; } else {instructions;... instructions; } ;
Exemple: soit le programme suivant (écrit en langage algorithmique) Variable: a entier naturel Début: Saisir a Si a < 7, a <- a + 1 Sinon, a <- a – 1 Finsi Afficher a Fin Son écriture en langage Casio et Xcas est: Casio Xcas ? -> AInput( «a = ? » , a ); If A <7if (a < 7){a : = a + 1}else {a := a – 1 }; Then print(« a= »,a); A + 1 -> A Else A – 1 -> A Ifend « A »
2. Opérateursrelationnels et logiques: Pour tester une condition, on utilise lesopérateurs relationnelssuivants: a = b pour tester l'égalité de a et de b a < b teste si a est strictement inférieur à b (resp a >b) ab ab teste si a est inférieur à b (resp) ab teste si a est différent de b On utilise aussi pour les conditions plus complexes lesopérateurs logiques: ou « OR » et « AND » non « NOT » Casio Xcas Les opérateurs relationnels se trouvent dans MENU,a==b teste l'égalité de a et de b a<b (resp a>b) teste si a est inférieur strictement à b PGRM puis REL a<=b (resp a>=b) teste si a est inférieur ou égal à b a!=b teste si a est différent de b condition1 && condition2 teste si les conditions sont vraies simultanément condition1 II condition2 teste si l'une au moins des conditions est vraie ! condition teste si la négation de la condition est vraie
III. Boucles:
Les boucles sont utilisées pour qu'une séquence d'instructions soit répétée un nombre donné de fois ou tant qu'une condition n'est pas remplie.
1. Boucle«uopr»: Dans une boucle « pour », la variable est incrémentée d'une valeur de départ jusqu'à une valeur d'arrivée à un pas donné (l'incrément). On note en langage algorithmique: Pourvariable (souvent i)allant devaleur de départàvaleur d'arrivée, Faireinstructions Finpour On note, pour casio et Xcas: Casio Xcas Forvaleur de départ -> variabletovaleur d'arrivéeFor (variable:=valeur de départ;variable:=valeur Stepincrément instructionsNextfinale;variable:=variable+incrément) {instructions;instructions;... instructions; };
2. Boucle«antteuq»: Une boucle « tant que » consiste à exécuter un groupe de commandes tant qu'une condition est vraie. Cette condition est testée en début de boucle. On note en langage algorithmique: Tant quecondition Faireinstructions Fintantque On note, pour Casio et Xcas: Casio Xcas WhileconditionWhile (condition) {instruction;instructions ...;} ; instructions WhileEnd