You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

4.6 KiB

ALGORITHMIQUE

les "bases"

comment compter, binaire, décimal octet, hexa

Variables :

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
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;
tab = [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 : !

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

Note : un utilisera * pour multiplier pour ne pas le confondre avec un X minuscule.

structures

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<opD; i++
    resultat = resultat+opG;
fin pour;

afficher resultat;
  • tant que

exécuter des actions tant qu'une condition est respectée.

variable choix chaine;
choix = "oui"
tant que choix == "oui" faire
    _action 1_   
    _action 2_
    afficher "continuer ?";
    lire choix;   
fin tantque;
  • faire tant que (do-while)

exécuter des actions tant qu'un condition est respectée, mais au moins une fois

variable choix chaine;
faire
    _action 1_   
    _action 2_
    afficher "continuer ?";
    lire choix;   
tant que choix == "oui";

instructions :

un instruction est un élément de programmation "standard" dans la majorité des languages. Par convention on terminera une instruction par ;

afficher

affiche le résultat (sur un écran par exemple)

afficher "bonjour";
var a entier;
a=2;
afficher a;

lire

lire la saisie d'un utilisateur

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;