From faef3aecf9b075613db546b4f881be1e8c1be042 Mon Sep 17 00:00:00 2001 From: Juan Date: Thu, 9 Dec 2021 13:10:55 +0100 Subject: [PATCH] suite cours 1 d'algo + exemple javascript --- b1-algo/c1-ALGORITHMIQUE.md | 178 ++++++++++++++++++++++++++++++++------------ b1-algo/javascript-1.html | 43 +++++++++++ 2 files changed, 175 insertions(+), 46 deletions(-) create mode 100644 b1-algo/javascript-1.html diff --git a/b1-algo/c1-ALGORITHMIQUE.md b/b1-algo/c1-ALGORITHMIQUE.md index 62cf3d2..3d4a439 100644 --- a/b1-algo/c1-ALGORITHMIQUE.md +++ b/b1-algo/c1-ALGORITHMIQUE.md @@ -7,68 +7,154 @@ mettre une valeur dans une boite en lui donnat un nom s'écrit : - > var a entier; - > a=2; - - *Note* : zéro s'écrit avec un O barré : `0` - - Valeurs possibles : - - boolean / booléen / bool : vrai / faux - - entier / integer / int : 1 ... 3 .... 2345 .... valeur max pour l'ordinateur - - décimal / float : 0,3 ... 1,2 ... 56,2345 .... valeur max pour l'ordinateur - - alphanumérique / chaine / string : "bonjour", "a123", ... Par convention on mets des guillements autour. - -## opérateur +``` +var a entier; +a=2; +``` + +*Note* : zéro s'écrit avec un O barré : `0` +Types de variables possibles : +- boolean / booléen / bool : vrai / faux +- entier / integer / int : 1 ... 3 .... 2345 .... valeur max pour l'ordinateur +- décimal / float : 0,3 ... 1,2 ... 56,2345 .... valeur max pour l'ordinateur +- alphanumérique / chaine / string : "bonjour", "a123", ... Par convention on mets des guillements autour. + +Il existe souvent des variables prédéfinies (fonction des langages) qui ne peuvent être changée, on appelle alors ces variables des **constantes**. Pi est un bon exemple. +Exemple en JavaScript : +``` +Math.PI +``` +Exemple en PHP +``` +M_PI +``` + +Au dela des variables simple il existe des variables structurés comme les listes ou les piles (que nous ne détaillerons pas ici). La plus communément utilisée est le tableau. +Un tableau est série de boite avec un seul nom. + +On écrira / lira dans un tableau en référençant les cases de celui si par un index numérique commençant à 0. on l'initialisera avec une liste de valeurs entre crochets; + +``` +var tab tableau; +tableau = [32,12,234,98,6,8,29,15,1053,14,34]; +afficher tab[0]; /* donne 32 */ +afficher tab[3]; /* donne 98 */ +tab[1]=639; /* le tableau deviens [32,639,234,98,6,8,29,15,1053,14,34] */ +``` + +## Opérateurs Un opérateur est un symbole qui utilise ou des opérandes et vaut quelque chose. + - Opérateurs d'affectation : =, ++, --, +=, -= - Opérateurs artimétiques binaires : +, *, /, - - Opérateur artimétiques unaire : - - Opérateurs conditionnels ou logiques binaires : <, >, ≤, ≥, et, ou, == - Opérateurs conditionnel unaire : ! -## structures - - un structure est une technique "d'embrachement". - - ### structure conditionelle + Pour les opérateur d'affectations : + - = permet de mettre une valeur dans une variable. + - Les opérateurs unaires -- et ++ correspondent respectivement à ```i=i-1``` et ```i=i+1``` + - Les opérateurs unaires -= et += permettre d'incrémenter d'une valeur donnée. i-=3 et i+=5 correspondent respectivement à ```i=i-3``` et ```i=i+5```. i++ et i-- peuvent donc aussi s'écrire respectivement ```i-=1``` et ```i+=1``` - - si alors sinon +**Note** : un utilisera * pour multiplier pur ne pas le confondre avec un X minuscule. - > si (condition) alors - >   _action 1_ - > sinon - >   _action 2_ - > fin si - - - selon cas - - > selon reponse - >     cas "bonjour" - >       _action 1_ - >     fin cas - >     cas "merci" - >       _action 2_ - >     fin cas - >     cas par defaut - >       _action 3_ - >     fin cas - > fin selon - - -## autres instructions : +## structures -Par convention onterminera une instruction par ; +un structure est une technique "d'embranchement". + +### structures conditionelles + +- si alors sinon +``` +si (condition) alors + _action 1_ +sinon + _action 2_ +fin si +``` + +- selon cas +``` +selon reponse + cas "bonjour" + _action 1_ + fin cas + cas "merci" + _action 2_ + fin cas + cas par defaut + _action 3_ + fin cas +fin selon +``` + +### structures itératives +- pour +Cette structure permet d'éxécuter une nombre de fois donnée une action +Il y a 3 choses à préciser, la valeur de départ, la condition de fin et la méthode d'incrément. +Exemple pour la multiplication par addition +``` +variable opD,opG,resultat entier; +resultat = 0; +opD=2; +opG=3; + +pour i=0; i afficher "bonjour"; +``` +afficher "bonjour"; +var a entier; +a=2; +afficher a; +``` ### lire lire la saisie d'un utilisateur - -> var reponse chaine; -> lire reponse; -> afficher reponse; \ No newline at end of file +``` +var reponse chaine; +lire reponse; +afficher reponse; +``` +## commentaires +Comme en css ou en javascript, par convention nous utiliserons /* */ pour les commentaires en pseudo code. + + +## exemples + +Calculer la surface d'un carré ou d'un rond +``` +var dim entier; +var surface décimal; +var type chaine; + +afficher "Carré ou rond ?"; +lire type; + +Si type == "carré" alors + afficher "coté du carré ? " + lire dim; + afficher "surface : " + afficher dim*dim; +Sinon si type == "rond" alors + afficher "rayon du rond ? " + lire dim; + afficher "surface : " + afficher PI * dim * dim; +Sinon + afficher "rond ou carré uniquement"; +Fin si; +``` diff --git a/b1-algo/javascript-1.html b/b1-algo/javascript-1.html new file mode 100644 index 0000000..37c8adb --- /dev/null +++ b/b1-algo/javascript-1.html @@ -0,0 +1,43 @@ +
+
+ +