TP informatique. Première année pétrochimie semestre II. Année universitaire 2019/2020. Enseignant : M.S.
Ghozlane
Première année pétrochimie S2 Université de Skikda – 20 Aout 55
TP 4 : Notions d’algorithme
A-Types de données :
Exercice 1 :
Soit a, b, c et d variables de type booléen, calculez le résultat de chaque expression sachant que :
a ← vrai, b ← faux, c ← vrai, d ← faux.
non a et b
a et non b
non(a et b)
non(a ou b)
non(a et b) ou c et d
a et b et c et d
a ouEx b et c
non non a
non(a ouEx b) et c
Exécutez les instructions sous Matlab ?
Exercice 2 :
Soit a, b, c et d des réels, quelles sont les valeurs des variables au fil de l’exécution des instructions suivantes ?
1
TP informatique. Première année pétrochimie semestre II. Année universitaire 2019/2020. Enseignant : [Link]
Instruction a B c d
Debut ni ni ni ni
a←2
b←3
c←5
a ← a*a
d ← a*3-20
a ← (c+1) /2
b ←d*4+c
c ← d+b-6
a ← c – b/d
b ← (a+c*d)/a
ni : variable non initialisée.
Attention aux priorités des opérations.
Exécutez les instructions sous Matlab ?
2
TP informatique. Première année pétrochimie semestre II. Année universitaire 2019/2020. Enseignant : [Link]
Exercice 3 :
Remplissez le tableau suivant (a ← 2, b ← 3, d ← 4, c ← 4) :
Instruction Affichage
Ecrire(‘bonjour’)
Ecrire(a)
Ecrire(a+2)
Ecrire(‘a+b=c’)
Ecrire(‘a+b=’,a+b)
Ecrire(d+b)
Ecrire(‘d+b=’, d+b,’fin de l’algorithme’)
Exécutez les instructions sous Matlab ?
B-Séquences d’instructions :
Exercice 1 :
A partir d’une quantité de produit achetée à un prix hors taxe on veut établir la facture d’un client dont on connaît le nom, la facture fera apparaître le
nom, le montant hors taxe, et toute taxe sachant qu’on applique un taux de taxe de 17% ?
Dessinez l’algorigramme correspondant.
3
TP informatique. Première année pétrochimie semestre II. Année universitaire 2019/2020. Enseignant : [Link]
Ecrire le programme Matlab correspondant et exécutez-le pour plusieurs valeurs ?
Exercice 2 :
Ecrivez un algorithme qui demande à l’utilisateur le rayon et calculer la surface de disque.
Exécutez votre algorithme pour un rayon de 0,20m (établissement du tableau d’exécution).
R surface pi Entrée Sortie
Début
Instruction1
…..
Instructioni
Ecrire le programme Matlab correspondant et exécutez-le pour plusieurs valeurs ?
Exercice 3 :
Ecrivez un algorithme qui demande à l’utilisateur à saisir les composantes de deux vecteurs et calcul le produit scalaire.
Ecrire le programme Matlab correspondant et exécutez-le pour plusieurs valeurs ?
C-Instructions conditionnelles :
Exercice 1 :
Ecrivez un algorithme qui demande à l’utilisateur d’entrer 3 nombres et afficher le plus grand.
Exécutez votre algorithme pour les valeurs suivantes : a = 56, b = 300, c = 23 (établissement du tableau d’exécution).
Dessinez l’algorigramme correspondant.
Ecrire le programme Matlab correspondant et exécutez-le pour plusieurs valeurs ?
Exercice 2 :
4
TP informatique. Première année pétrochimie semestre II. Année universitaire 2019/2020. Enseignant : [Link]
Ecrivez un algorithme qui demande à l’utilisateur les données suivantes :
PHTU
Nombre d’article
TVA
Et calculez le PTTC selon la règle suivante :
Remise = 10% si nombre d’article>10
Remise = 0.75% si 5<nombre d’article<=10
Remise = 0.50% si nombre d’article<=5
Ecrire le programme Matlab correspondant et exécutez-le pour plusieurs valeurs ?
Exercice 3 :
Ecrivez un algorithme qui demande à l’utilisateur la température de l’eau et afficher son état (solide, liquide, vapeur).
Ecrire le programme Matlab correspondant et exécutez-le pour plusieurs valeurs ?
Exercice 4 :
Soit l’équation au 2eme ordre : a*x^2+b*x+c = d
Ecrivez un algorithme qui demande à l’utilisateur a et b afin de calculer la solution de l’équation.
Exercice 5 :
Etablissez un algorithme qui demande à l’utilisateur d’entrer la note est qui affiche la mention comme suite :
‘ Faible ‘ si note<10
‘ Passable ‘ si 10<= note<12
‘ A. Bien ‘ si 12<= note<14
‘ Bien ‘ si 14<= note<16
‘ [Link] ‘ si 16<= note<18
‘ Excellent ‘ si 18<= note<20
Ecrire le programme Matlab correspondant et exécutez-le pour plusieurs valeurs ?
5
TP informatique. Première année pétrochimie semestre II. Année universitaire 2019/2020. Enseignant : [Link]
D-Instructions itératives :
Exercice 1 :
Ecrivez un algorithme qui demande à l’utilisateur un nombre N, puis calcule la somme des nombres de 0 à N
Exemples :
N=6
Somme = 0+1+2+3+4+5+6 = 21
Dessinez l’algorigramme correspondant.
Ecrire le programme Matlab correspondant et exécutez-le pour plusieurs valeurs ?
Exercice 2 :
Ecrivez un algorithme qui demande un nombre puis vérifier si ce nombre est premier ou non.
Ecrire le programme Matlab correspondant et exécutez-le pour plusieurs valeurs ?
Exercice 3 :
Ecrivez un algorithme pour calculer la somme des n premiers termes de la suite suivante :
Un = 4+2n/3n
U0 = 1
N=4
Somme = U0+U1+U2+U3+U4
1+ (4+2) / 3+ (4+4) / 6+.........
Ecrire le programme Matlab correspondant et exécutez-le pour plusieurs valeurs ?
Exercice 4 :
Ecrivez un algorithme qui demande à l’utilisateur un nombre est :
Affiche les diviseurs de ce nombre.
Le nombre de ces diviseurs.
La somme des diviseurs de ce nombre.
Ecrire le programme Matlab correspondant et exécutez-le pour plusieurs valeurs ?
6
TP informatique. Première année pétrochimie semestre II. Année universitaire 2019/2020. Enseignant : [Link]
Partir A
Exercice1 : types de données
a=v ;b=f ;c=v ;d=f
Proposition logique Chaine d’exécution Proposition matlab Valeur de la proposition matlab
non a et b non a ; et and (not(a),b) false
a et non b non b ; et and (a,not(b)) true
non(a et b) et ; non not(and(a,b)) true
non(a ou b) ou ; non not (or (a,b)) false
non(a et b) ou c et d a et b ;non ;et ; ou Or(not(and(a,b)),and(c,d)) true
a et b et c et d même and(and(and(a,b),c),d) false
a ouex b et c Et ; ouex xor(a,and(b,c)) true
non non a même not(not(a)) true
Exercice 2
Instruction a b c d
a 2 2 ni ni ni
b 3 2 3 ni ni
c 5 2 3 5 ni
a a*a 4 3 5 ni
d a*3-20 4 3 5 -8
a (c+1)/2 3 3 5 -8
b d*4+c 3 -27 5 -8
c d+b-6 3 -27 -41 -8
a c-b/d -355/8 -27 -41 -8
b (a+c*d)/a -355/8 -2269/355 -41 -8
7
TP informatique. Première année pétrochimie semestre II. Année universitaire 2019/2020. Enseignant : [Link]
Exercice 3instruction algorithmiqueinstruction en matlab
Erire (‘bonjour’) -résultat de l’instruction bonjour disp(‘bonjour’)
Ecrire(a)------------------------..-2 disp(a)
Erire(a+2).............................4 disp(a+2)1
Ecrire(‘a+b=c’)…………a+b=c disp( ‘a+b=c’)
Erire(‘a+b=’, a+b)……………a+b=5 disp([‘a+b=’,num2str(a+b)])
Ecrire(d+b)…………….7 disp(d+b)
Ecrire(‘d+b=’,d+b,’fin de l’’algorithme’) disp([‘d+b=’, num2str(d+b), ‘fin de l’’algorithme ’])
d+b=7 fin de l’algorithme
exécution matlab
8
TP informatique. Première année pétrochimie semestre II. Année universitaire 2019/2020. Enseignant : [Link]
Partie B séquences d’instructions
Exercice1
Début
Programme maltab(sous forme d’un script matlab)
Tva=0.17
Tva=0.17 nom=input (‘donner le nom du client ’, ‘S’) ;
Lire(nom);lire(qt,pu) qt=input(‘la quantité est =’) ;
pu=input(‘le prix unitaire est =’) ;
ptht=qt*pu ;
Ptht=qt*pu pttc=ptht*(1+tva) ;
Pttc=ptht(1+tva) disp(nom)
disp([‘le prix total hors taxe est’,num2str(ptht)])
Ecrire(nom); disp([‘le prix total toutes taxes comprisent est’,num2str(pttc)])
Ecrire(ptht)
Ecrire(pttc)
fin
9
TP informatique. Première année pétrochimie semestre II. Année universitaire 2019/2020. Enseignant : [Link]
Exécution
Exercice 2
Algorithme surface ; Tableau d’exécution
Const pi=3.14 ; En matlab pi Entrée sortie
instruction
var r,s :reel ; R=input(‘r=’) ; 3.14 ni ni
début
Debut Lire(r) 3.14 0.2 ni
S=pi*r^2 ;
Lire(r); 3.14 0.2 0.1256
disp([‘s=’,num2str(s)]) S=pi*r^2
S=pi*r2; 3.14 0.2 s=0.1256
Ecrire(‘s=’,s)
écrire(s);
fin
10
TP informatique. Première année pétrochimie semestre II. Année universitaire 2019/2020. Enseignant : [Link]
Partie C instruction conditionnelles
Exercice1organigramme
Debut Programme matlab
Algorithme maxima ;
a=input(‘a=’);
Var a,b,c,Max :entiers
Lire(a,b,c)
b=input(‘b=’);
Debut
c=input(‘c=’);
a=56; b=300;c=25
Lire(a,b,c) Non nonnn oui
if (a>b)
a>b a>b est vrai
Si a>b a alors max=b=300
max=a;
Max=b Max=a
Max=a else max<z est fausse
Sinon max=b; d’où max =300 ne
changr plus
Max=b end
et max de sortie est
Finsi Max<c if(max<c) 300
max=c; voir le chemin dans
Si max<c alors
Max=c l’organigramme en
end
Max=c rouge
disp(max)
Ecrire(Max)
Finsi
Fin
fin
11
TP informatique. Première année pétrochimie semestre II. Année universitaire 2019/2020. Enseignant : [Link]
Algorithme remiseconditionnelle ;
Var phu,tva,qt :reel ;
Debut
Lire(phu,tva,qt) ;
ptht=phu*qt ;
Pttc=ptht*(1+tva) ;
si(qt>10) alors
pttc=pttc*(1-0.1) ;
sinon si(qt>=5)
pttc=pttc(1-0.0075)
sinon
Execution du script
pttc=pttc*(1-0.005)
finsi
finsi
ecrire(‘le prix total hor taxes cmprisent est’,pttc) ;
fin
12
TP informatique. Première année pétrochimie semestre II. Année universitaire 2019/2020. Enseignant : [Link]
Exercice 3
Algorithme temperatureprogramme matlab
Var T :
Debut
Lire(T) ;
Si(T>100) alors
Erire(‘vapeur ou gaz’)
Sinon si(t>0) alors
Erire(‘liquide’)
Sinon
Ecrire(‘solide ’)
Finsi
Finsi
fin
13
TP informatique. Première année pétrochimie semestre II. Année universitaire 2019/2020. Enseignant : [Link]
Exercice 4
14
TP informatique. Première année pétrochimie semestre II. Année universitaire 2019/2020. Enseignant : [Link]
Exercie 5
xercice05
15
TP informatique. Première année pétrochimie semestre II. Année universitaire 2019/2020. Enseignant : [Link]
Execution en matlab
16
TP informatique. Première année pétrochimie semestre II. Année universitaire 2019/2020. Enseignant : [Link]
Partie D : instructions itératives
debut
Exercice 1
Algorithme somme ;
Var n,S ,i : entier ;
Lire(n);s=0
Debut
S=0 ; Pour I=1:n
Lire(n);
S=S+i
pour i=1:n
s=s+i; I >n non
fin oui
ecrire(S); Ecrire(S)
fin
FIN
17
TP informatique. Première année pétrochimie semestre II. Année universitaire 2019/2020. Enseignant : [Link]
Exercice 2
18
TP informatique. Première année pétrochimie semestre II. Année universitaire 2019/2020. Enseignant : [Link]
Exercise 3
19
TP informatique. Première année pétrochimie semestre II. Année universitaire 2019/2020. Enseignant : [Link]
Exercice 4
20
TP informatique. Première année pétrochimie semestre II. Année universitaire 2019/2020. Enseignant : [Link]
Exécutions en maltab
21