Академический Документы
Профессиональный Документы
Культура Документы
étudiant
Note2
ESTC
étudiant universitaire
2017Info
Vérifiez si les opérations suivantes sont possible, quel type donne le résultat :
naturel
……………….……← naturel + naturel
entier
……………….……← entier - entier
réel
……………….……← réel * réel
réel
……………….……← naturel / entier
réel
……………….……← entier + réel
réel
………………….…← naturel / réel
chaine de caractères
……………….……← caractère + caractère
chaine de caractères
………………….…← caractère + chaine de caractères
impossible
………………….…← caractère – chaine de caractères
Operations arithmétiques:
+ , - , * , / : concernant les variables de type numériques (naturel, entier, réel,…..).
Operations de comparaisons:
<, =, >, ≤, ≥, ≠ : concerne les variables de possédant un ordre (numérique ou caractère).
Operations logiques:
Non, et, ou, ouExlusif : s’applique aux operateurs logiques (booléens).
Operations sur les caractères et les chaines de caractères:
+ : la concaténation.
Non Et Ou ouEx
Algorithme Démonstration
variables:
A, B, C : numériques. La lisibilité des algorithmes est un critère de qualité important,
t : chaine de caractères.
un algorithme correct mais indéchiffrable est aussi efficace
Début
qu’un algorithme faux, donc c’est un algorithme faux, vous
devrez par conséquent soigner particulièrement vos
A←1
algorithmes, ils doivent être faciles a lire, et rédigés de sorte
B ← A+1
qu’un lecteur soit non seulement capable de l’exécuter, mais
C ←A
aussi capable de le comprendre rapidement.
A ← A+1
t ← ‘exemple1’ + ‘exemple2’
Fin
Cours 2 : bases d’algorithmique
3-1- Les entrées/sorties :
Utilisateur computer
Lecture :
Il est possible de demander à un utilisateur du programme de saisir une
valeur, la syntaxe de la saisie est la suivante : Lire(nomvariable)
La saisie interrompt le programme jusqu’a ce que l’utilisateur ait saisi une
valeur au clavier, une fois cela fait, la valeur saisie est placée dans la variable
nomvariable, il est possible de saisir plusieurs variables a la suite :
lire(A,B,C) place trois valeurs saisies par l’utilisateur dans les variables A, B
et C.
Cours 2 : bases d’algorithmique
3-1- Les entrées/sorties :
Ecriture :
Pour afficher un message a destination de l’utilisateur, on se sert de la
commande: écrire(message)
Cette instruction affiche le message a l’utilisateur, par exemple
écrire(‘bonjour’) affiche bonjour sur l’écran, (les guillemets sont très
importantes), il est aussi possible d'afficher le contenu d’une variable :
écrire(A) affiche l’écran le contenu de la variable A.
Ecriture :
On peut mélanger les messages et les valeurs des variables, par exemple,
les instructions: écrire(‘la valeur de A est :’)
écrire(A)
ont le même effet que l’instruction
écrire(‘la valeur de A est :’,A)
Lorsque l’on combine messages et variables dans les instructions
d'affichage, on les sépareCours
par des virgules.
2 : bases d’algorithmique
3-1- Les entrées/sorties (exemple) :
Cet algorithme demande a l’utilisateur de saisir un entier, ensuite il affiche la valeur saisie puis la même valeur incrémentée de 1.
Algorithme Affichage_incrément
>>Saisissez une valeur numérique
variables :
>> 12
a: entier
>> vous avez saisi la valeur : 12
Début
>> a+1 = 13
écrire(‘Saisissez une valeur numérique’)
lire(a) computer
écrire(’Vous avez saisi la valeur:’, a)
écrire(‘ a+1 =’,a+1)
Fin Cours 2 : bases d’algorithmique
3-2- Traitements conditionnels :
On appelle traitement conditionnel un bloc d’instructions dont l’exécution est soumise à la vérification d’un
test.
si ... alors Si la variable A, au moment du test, a
une valeur nulle, alors l’instruction
La syntaxe d’un traitement conditionnel est la suivante :
écrire(‘La valeur de la variable A est
Si condition alors nulle’) est exécutée, sinon, elle est
Instructions ignorée.
fin si
Les instructions ne sont exécutées que si condition est vérifiée, par exemple:
Si A = 0 alors
écrire(‘la valeur de la variable A est nulle’)
fin si Cours 2 : bases d’algorithmique
3-2- Traitements conditionnels :
Condition:
Une condition est une comparaison, son résultat est de type booléen, et prend donc deux
valeurs: vrai ou faux.
L’évaluation de la condition s’effectue de la même manière que l’évaluation d’une
expression booléenne, exemple: On peu ajouter une autre condition:
Lire(moyenne) Lire(moyenne, sanction_disciplinaire)
Si moyenne ≥ 10 et non sanction_disciplinaire
Si moyenne ≥ 10 alors alors
écrire(‘étudiant admis’) écrire(‘étudiant admis’)
finsi
finsi
Cours 2 : bases d’algorithmique
3-2- Traitements conditionnels :
Conditions
Une condition peut être tout type de test, par exemple:
A=2 La condition A= 2 est vérifiée si la valeur contenue dans A est 2.
A=B A= B est vérifiée si les valeurs contenues dans A et dans B sont les
A = B et B ≠ 7 mêmes.
B ≠ 7 est vérifiée si B contient une valeur différente de 7.
2 >7 2> 7 est vérifiée si 2 est supérieur a 7, donc jamais, cette
Not A et B condition est donc fausse et ne dépend pas des valeurs des
variables.
Si étendue
Le traitement conditionnel peut être étendu de la sorte :
si condition alors
si condition est vérifiée, les instructions
instructions
sont exécutées, dans le cas contraire, donc
sinon si condition n’est pas vérifiée, alors ce sont
autres instructions les autres instructions qui sont exécutées.
finsi
Imbrication
Il est possible d’imbriquer les si a volonté :
si a < 0 alors Si par exemple a et b sont tous deux positifs,
si b < 0 alors alors aucun des deux tests ne sera vérifiées, et
écrire(‘a et b sont négatifs’) c’est donc le sinon du sinon qui sera exécuté,
sinon a savoir écrire(‘a et b sont positifs’).
écrire(‘a est négatif, b est positif ‘)
finsi
sinon
si b < 0 alors
écrire('b est négatif, a est positif')
sinon
écrire('a et b sont positifs')
finsi
Cours 2 : bases d’algorithmique
finsi
3-2- Traitements conditionnels (exemple) :
Algorithme Signe_du_produit
variables :
a,b: entiers L’instruction écrire(‘positif ou nul’) sera
Début exécutée si au moins une des deux conditions
écrire(‘Saisissez deux valeurs numériques‘)
suivantes est vérifiée :
a≤0 et b≤0
lire(a, b)
a≥0 et b≥0
écrire(‘Le produit de‘, a,‘par’, b,‘est :’)
si (a ≤ 0 et b ≤ 0) ou (a ≥ 0 et b ≥ 0) alors
écrire(‘positif ou nul’)
sinon
écrire(‘négatif’)
finsi
Cours 2 : bases d’algorithmique
fin
3-2- Traitements conditionnels :
Suivant cas
Lorsque qu'on souhaite conditionner l’exécution de plusieurs ensembles d’instructions par la valeur que prend
une variable, plutôt que de faire des imbrications de si a outrance, on préférera la forme suivante:
Suivant variable faire
cas valeur1 instructions1 suivant la valeur que prend la variable, le bloc
cas valeur2 instructions2 d’instructions a exécuter est sélectionnée, par
exemple, si la valeur de variable est valeur1, alors le
... bloc instructions1 est exécutée. Le bloc autres cas est
cas valeur n instructions n exécuté si la valeur de variable ne correspond a aucune
autres cas instructions des valeurs énumérées.
finsuivant
Cours 2 : bases d’algorithmique
3-2- Traitements conditionnels (exemple) :
C’est une représentation graphique de l’algorithme, pour le construire, on utilise des symboles
normalisés, ici on présente quelques symboles utilisés dans la construction d’un algorigramme :
Symbole Désignation et rôle Symbole Désignation et rôle
Symbole de traitement Symbole auxiliaire
Symbole général Début, fin, interruption
Opération ou groupe d’opérations sur des données, Début, fin ou interruption d’un algorigramme.
instructions, pour laquelle il n’existe aucun symbole
normalisé.
Entrée-Sortie Commentaire
Mise à disposition d’une information à traiter ou Symbole utilisé pour donner des indications sur les
enregistrement d’une information traitée. opérations effectuées.
Test Les différents symboles sont reliés entre eux par des lignes de liaisons.
Exploitation de conditions variables impliquant un
choix parmi plusieurs.
Sens conventionnel des liaisons
Le sens général des lignes de liaison doit être :
De haut en bas.
De gauche à droite.
Cours 2 : bases d’algorithmique
3-3- L’algorigramme (exemple):
Début
écrire(‘Saisissez A et
Algorithme comparaison B:’)
Variables:
A,B : entiers. Lire(A,B)
DEBUT
écrire(‘Saisissez A et B:’)
lire(A, B) Si A > B non
alors
Si A > B alors
écrire(‘A est supérieur a B’) oui
Sinon écrire(‘A est écrire(‘B est
écrire(‘B est supérieur a A’) supérieur a B’) supérieur a A’)
fin si
FIN
Fin
écrire(‘la valeur de i est de :’,i) écrire(‘la valeur de i est de :’,i) 4 / la valeur de i est de : 4
i←5 5 / /
fin pour écrire(‘la valeur de i est de :’,i) 5 / la valeur de i est de : 5
Fin fin / /
Cours 2 : bases d’algorithmique
4-1- le tableau d’exécution (exemple):