SlideShare une entreprise Scribd logo
1  sur  94
Télécharger pour lire hors ligne
Présentation de Matlab
Qu’est-ce que Matlab ?
14
Présentation de Matlab
Présentation de l’interface
15
Présentation de Matlab
Présentation de l’interface
16
.
.
.
.
.
Présentation de Matlab
Présentation de l’interface
17
Présentation de Matlab
Matlab à la maison
18
.
.
.
.
.
Présentation de Matlab
Les commandes de base
en Matlab
Les opérations de base
>> 3+6
Les commandes de base en Matlab
ans =
9
20
Les opérations de base
>> sqrt((3+4)*cos(5*pi/7))*exp(2^4)
Les commandes de base en Matlab
Symbole Description Exemple
+ - * / Les opérations de base en mathématiques (addition,
soustraction, multiplication et division)
7+9
3/4
pi La constante Pi pi/3
cos sin tan Les fonctions trigonométriques usuelles cos(3*pi/2)
log exp Le logarithme népérien et l’exponentielle exp(3)
sqrt La racine carrée sqrt(5)
^ La puissance 4^7
21
Les nombres réels
>> 2.7 * 3.9
ans =
10.5300
Les commandes de base en Matlab
22
Les variables (simples) en Matlab
>> x = 4
Les commandes de base en Matlab
23
Les variables (simples) en Matlab
>> y = x+2
Les commandes de base en Matlab
24
Les variables (simples) en Matlab
>> disp(y)
6
Les commandes de base en Matlab
>> y
y =
6
25
Les variables (simples) en Matlab
>> x = input('Entrez une valeur : ');
Entrez une valeur : 9
Les commandes de base en Matlab
26
Les matrices dans Matlab
Matlab et les matrices
Les matrices dans Matlab
28
Déclarer des matrices dans Matlab
.
.
.
>> A = [1 2 3; 4 5 6; 7 8.5 9; 10 11.5 12]
Les matrices dans Matlab
29
Déclarer des matrices dans Matlab
>> B = [4.2 7.6 8.2; 4.1 0.5 0]
Les matrices dans Matlab
4.2 7.6 8.2
4.1 0.5 0
>> C = [5.7 0.2 6.2 5.1; 7.1 2.4 8.4; 1.2 0.4 8.4 6.4]
30
Déclarer des matrices dans Matlab
.
.
>> D = [4 2 9 4 2]
Les matrices dans Matlab
4 2 9 4 2
>> E = [3.5 ; 7; 9; 8; 0]
3,5
7
9
8
0 31
Déclarer des matrices dans Matlab
>> A = [1 2 3; 4 5 6; 7 8.5 9; 10 11.5 12]
Les matrices dans Matlab
>> A = [4.2 7.6 8.2; 4.1 0.5 0]
>> A = 3
32
Accéder aux éléments des matrices
>> A(3,2)
Les matrices dans Matlab
>> A = [5.7 0.2 6.2 5.1; 8.7 7.1 2.4 8.4; 1.2 0.4 8.2 6.4]
>> y = A(2,4)
33
Accéder aux éléments des matrices
>> A = [5.7 0.2 6.2 5.1; 8.7 7.1 2.4 8.4; 1.2 0.4 8.2 6.4]
Les matrices dans Matlab
>> A(5)
ans =
7.1000
5.7 0.2 6.2 5.1
8.7 7.1 2.4 8.4
1.2 0.4 8.2 6.4
1 4 7 10
2 5 8 11
3 6 9 12
34
Accéder aux éléments des matrices
>> B = A(2:4,4:5)
Les matrices dans Matlab
5.7 0.2 6.2 5.1 3
8.7 7.1 2.4 8.4 6.1
1.2 0.4 8.2 6.4 2.7
2.3 6.7 6.5 5.2 10
2.1 1.8 0.6 7.2 8.2
8.4 6.1
6.4 2.7
5.2 10
35
Accéder aux éléments des matrices
>> B = A(2:4,:)
Les matrices dans Matlab
5.7 0.2 6.2 5.1 3
8.7 7.1 2.4 8.4 6.1
1.2 0.4 8.2 6.4 2.7
2.3 6.7 6.5 5.2 10
2.1 1.8 0.6 7.2 8.2
8.7 7.1 2.4 8.4 6.1
1.2 0.4 8.2 6.4 2.7
2.3 6.7 6.5 5.2 10
36
Taille d’une matrice
>> s = size(A)
Les matrices dans Matlab
5.7 0.2 6.2 5.1
8.7 7.1 2.4 8.4
1.2 0.4 8.2 6.4
2.3 6.7 6.5 5.2
2.1 1.8 0.6 7.2
5 4
37
Taille d’une matrice
>> numel(A)
ans =
20
Les matrices dans Matlab
5.7 0.2 6.2 5.1
8.7 7.1 2.4 8.4
1.2 0.4 8.2 6.4
2.3 6.7 6.5 5.2
2.1 1.8 0.6 7.2
38
Opérations de base sur les matrices
Les matrices dans Matlab
Symbole Description Exemple
+ - * Les opérations de base (addition, soustraction, produit matriciel).
Les tailles des matrices doivent être compatibles
A+B
A*B
^ La puissance matricielle (itération du produit matriciel) A^3
’ Transposée d’une matrice A’
inv L’inversion d’une matrice (si son inverse existe) inv(A)
Symbole Description Exemple
+ - * / Réalise l’opération entre un scalaire et chaque élément de la matrice. 5.4*A
.* Réalise la multiplication terme à terme de deux matrices de même
taille.
A.*B
.^ Met à une certaine puissance chaque élément de la matrice A.^3
39
Opérations de base sur les matrices
Les matrices dans Matlab
4 25 36
2 9 49
2 5 6
1.4 3 7
40
Opérations avancées sur les matrices
Les matrices dans Matlab
2.6 3.9 10
1.0 -3 3.2
3.6 0.9 13.2
16.5
1.2
41
Opérations avancées sur les matrices
>> b = sum(A,2)
Les matrices dans Matlab
3 2 1 8
4 1 3 6
2 2 0 5
14
14
9
42
Opérations avancées sur les matrices
>> b = sum(A,1)
Les matrices dans Matlab
3 2 1 8
3 2 1 8
43
Opérations avancées sur les matrices
>> b = sum(A,1)
>> c = sum(b,2)
Les matrices dans Matlab
>> c = sum(sum(A,2),1)
44
Opérations avancées sur les matrices
Les matrices dans Matlab
2.6 3.9 10
1.0 -3 3.2
2.6 3.9 10
10
3.2
45
Filtrage de matrices
Les matrices dans Matlab
1
8
10
15
8.7 7.1 2.4 8.4 6.1
1.2 0.4 8.2 6.4 2.7
2.3 6.7 6.5 5.2 10
46
Filtrage de matrices
>> l = find(A>8)
>> A(l) = 0
Les matrices dans Matlab
0 7.1 2.4 0 6.1
1.2 0.4 0 6.4 2.7
2.3 6.7 6.5 5.2 0
8.7 7.1 2.4 8.4 6.1
1.2 0.4 8.2 6.4 2.7
2.3 6.7 6.5 5.2 10
>> A(find(A>8))=0
47
Filtrage de matrices
>> k = find(A<1)
>> A(k) = A(k)+1
Les matrices dans Matlab
48
Filtrage de matrices
Les matrices dans Matlab
Symbole Description Exemple
> <
>= <=
Les comparaisons de base (supérieur, inférieur, supérieur ou égal,
inférieur ou égal)
A >= 3
A < 5
== L’égalité A == 7.2
~= L’inégalité A ~= 8
Symbole Description Exemple
& Combine deux critères avec un et logique. (A > 3) & (A<8)
| Combine deux critères avec un ou logique. (A > 6) | (A < 3)
~ Inverse un critère ~((A > 3) & (A < 4))
49
Filtrage de matrices
>> k = find(A<0)
>> A(k) = -A(k)
Les matrices dans Matlab
50
Filtrage de matrices
>> B = (A < 3)
Les matrices dans Matlab
8.7 7.1 2.4 8.4 6.1
1.2 0.4 8.2 6.4 2.7
2.3 6.7 6.5 5.2 10
0 0 1 0 0
1 1 0 0 1
1 0 0 0 0
51
Filtrage de matrices
>> k = (A<0)
>> k = -2*k + 1
>> A = A.*k
Les matrices dans Matlab
52
Générer de nouvelles matrices
Les matrices dans Matlab
Fonction Description Exemple
rand(n,m) Génère une matrice remplie de nombre aléatoires entre 0 et
1, de n lignes et m colonnes.
A = rand(3,5)
ones(n,m) Génère une matrice remplie de 1, de n lignes et m colonnes A = ones(4,4)
zeros(n,m) Génère une matrice remplie de 0, de n lignes et m colonnes A = zeros(1,3)
53
Concaténation de matrices
>> D = [A B]
>> E = [A ; C]
Les matrices dans Matlab
4 5 6
7 1 1
2 8 7
4 3
1 2
5 8 5 4 4
4 5 6 4 3
7 1 1 1 2
2 8 7 5 8
4 5 6
7 1 1
2 8 7
5 4 4
54
Le mot clef if – exécuter
du code sous condition
Le mot clef if
Le mot clef if
56
Un premier programme avec if
.
.
x=input(‘Entrez une valeur svp’);
y=2;
if x<4
y=0;
end
Le mot clef if
57
Syntaxe du if
//Bloc de code 0
if <condition 1>
//Bloc de Code 1
end
//Bloc de Code 2
Le mot clef if
58
Un exemple
x = input(‘Entrez une valeur : ‘);
if x<0
x = -x;
end
disp(x)
Le mot clef if
59
L’écriture de conditions
x = input(‘Entrez une valeur : ‘);
y = input(‘Entrez une autre valeur : ‘);
if x>0 && y>0
disp(‘Les deux valeur entrées sont positives’)
end
Le mot clef if
Symbole Description Exemple
&& Combine deux conditions avec un et logique. (A > 3) & (A<8)
|| Combine deux conditions avec un ou logique. (A > 6) | (A < 3)
~ Inverse une condition ~((A > 3) & (A < 4))
60
Le mot clef elseif
Le mot clef if
61
Un premier programme avec elseif
.
.
.
x=input(‘Entrez une valeur svp’);
y=2;
if x<4
y=0;
elseif x>9
y=1;
end
Le mot clef if
62
Un second programme avec elseif
.
.
.
a=input(‘Entrez votre age’);
if a>=100
disp(‘Vous êtes assez âgé’);
elseif a>=18
disp(‘Vous êtes majeur’);
elseif a>=16
disp(‘Vous pouvez conduire (accompagné)’);
end
Le mot clef if
63
Un second programme avec elseif
a=input(‘Entrez votre age’);
if a>=100
disp(‘Vous êtes assez âgé’);
elseif a>=18
disp(‘Vous êtes majeur’);
elseif a>=16
disp(‘Vous pouvez conduire’);
end
Le mot clef if
a=input(‘Entrez votre age’);
if a>=100
disp(‘Vous êtes assez âgé’);
endif
if a>=18
disp(‘Vous êtes majeur’);
endif
if a>=16
disp(‘Vous pouvez conduire’);
end
64
Syntaxe du if/elseif
//Bloc de code 0
if <condition 1>
//Bloc de Code 1
elseif <condition 2>
//Bloc de Code 2
elseif <condition 3>
//Bloc de Code 3
elseif ...
//...
end
//Bloc de Code n
Le mot clef if
65
Syntaxe du if/elseif
//Bloc de code 0
if <condition 1>
//Bloc de Code 1
elseif <condition 2>
//Bloc de Code 2
elseif <condition 3>
//Bloc de Code 3
elseif ...
//...
end
//Bloc de Code n
Le mot clef if
66
Syntaxe du if/elseif
a=input(‘Entrez votre note de contrôle
Matlab’);
if a<14
disp(‘Vous n’êtes pas très bon’);
elseif a>=15
disp(‘Pas mal’);
elseif a>18
disp(‘Vous pourrez passer en
deuxième année’);
elseif a<4
disp(‘Il y a des places de libres
en MACS...’);
Le mot clef if
67
Se passer du elseif
a = input(‘Entrez votre age : ‘);
if a>=100
disp(‘Vous êtes assez âgé’);
elseif a>=18
disp(‘Vous êtes majeur’);
elseif a>=16
disp(‘Vous pouvez conduire’);
end
Le mot clef if
a = input(‘Entrez votre age : ‘);
if a>=100
disp(‘Vous êtes assez âgé’);
end
if a>=18
disp(‘Vous êtes majeur’);
end
if a>=16
disp(‘Vous pouvez conduire’);
end
68
Se passer du elseif
a = input(‘Entrez votre age : ‘);
if a>=100
disp(‘Vous êtes assez âgé’);
elseif a>=18
disp(‘Vous êtes majeur’);
elseif a>=16
disp(‘Vous pouvez conduire’);
end
Le mot clef if
a = input(‘Entrez votre age : ‘);
if a>=100
disp(‘Vous êtes assez âgé’);
end
if ~(a>=100) && a>=18
disp(‘Vous êtes majeur’);
end
if ~(a>=100) && ~(a>=18) && a>=16
disp(‘Vous pouvez conduire’);
end
69
Le mot clef else
Le mot clef if
70
Un exemple
x = input('Entrez une valeur : ');
y = input('Entrez une valeur : ');
z = input('Entrez votre choix d operation : ');
if z==1
disp(x+y);
elseif z==2
disp(x*y);
elseif z==3
disp(x-y);
elseif z==4
disp(x/y);
end
Le mot clef if
71
Un exemple
x = input('Entrez une valeur : ');
y = input('Entrez une valeur : ');
z = input('Entrez votre choix d operation : ');
if z==1
disp(x+y);
elseif z==2
disp(x*y);
elseif z==3
disp(x-y);
elseif z==4
disp(x/y);
else
disp(‘Mauvais choix’);
end
Le mot clef if
72
Un second exemple avec else
.
.
.
.
a=input(‘Entrez votre age’);
if a>=100
disp(‘Vous êtes assez âgé’);
elseif a>=18
disp(‘Vous êtes majeur’);
elseif a>=16
disp(‘Vous pouvez conduire (accompagné)’);
else
disp(‘Vous êtes jeune’);
end
Le mot clef if
73
Syntaxe du if/elseif/else
//Bloc de code 0
if <condition 1>
//Bloc de Code 1
elseif <condition 2>
//Bloc de Code 2
elseif <condition 3>
//Bloc de Code 3
elseif ...
//...
else ...
//Bloc de code n
end
//Bloc de Code n+1
Le mot clef if
74
Syntaxe du if/elseif/else
//Bloc de code 0
if <condition 1>
//Bloc de Code 1
elseif <condition 2>
//Bloc de Code 2
elseif <condition 3>
//Bloc de Code 3
elseif ...
//...
else ...
//Bloc de code n
end
//Bloc de Code n+1
Le mot clef if
75
Exercice
x = input(‘Entrez une valeur ‘);
if x==0
disp(‘x est nul’);
elseif x>0
disp(‘x est positif’);
else x<0
disp(‘x est négatif’);
end
Le mot clef if
76
Exercice
x = input(‘Entrez une valeur ‘);
if x==0
disp(‘x est nul’);
else
disp(‘x est négatif’);
elseif x>0
disp(‘x est positif’);
end
Le mot clef if
77
Exercice
x = input(‘Entrez une valeur ‘);
if x==0
disp(‘x est nul’);
else
disp(‘x est négatif’);
else
disp(‘x est positif’);
end
Le mot clef if
78
Exercice
x = input(‘Entrez une valeur ‘);
if x==0
disp(‘x est nul’);
elseif x<0
disp(‘x est négatif’);
elseif
disp(‘x est positif’);
end
Le mot clef if
79
Exercice
x = input(‘Entrez une valeur ‘);
if x==0
disp(‘x est nul’);
if x<0
disp(‘x est négatif’);
if x>0
disp(‘x est positif’);
end
Le mot clef if
80
Exercice
x = input(‘Entrez une valeur ‘);
y = input(‘Entrez une valeur ‘);
if x>=0
if y >=0
disp(‘x et y sont positifs’);
else
disp(‘x est positif et y est négatif’);
end
else
if y >=0
disp(‘x est négatif et y est positif’);
else
disp(‘x et y sont négatifs’);
end
end
Le mot clef if
81
Diagramme d’évaluation d’un bloc if
Le mot clef if
La condition
du if est
vraie ?
Y a-t-il un elseif
ensuite ?
La condition
du elseif est
vraie ?
Y a-t-il un
else ensuite ?
Exécuter le bloc de
code situé à la suite
Sauter au mot clef
end
82
La fonction modulo
>> a = mod(23,7);
>> disp(a)
2
Le mot clef if
83
La fonction modulo
a = input('Entrez une valeur : ');
if mod(a,7) == 0
disp('a est divisible par 7');
else
disp('a n est pas divisible par 7');
end
Le mot clef if
if (a%7 == 0)
{ ... }
84
La fonction modulo
a = input('Entrez une valeur : ');
if mod(a,2) == 0
disp('a est un nombre pair’);
else
disp('a est un nombre impair’);
end
Le mot clef if
85
Conclusion
Le bloc if
86
Les boucles
Les boucles
Les boucles
88
Première utilisation de la boucle for
>> v = rand(1,5);
>> disp(v);
0.8003 0.1419 0.4218 0.9157 0.7922
Les boucles
>> for k = v
>> disp('La valeur de k est ‘)
>> disp(k)
>> end
La valeur de k est 0.8003
La valeur de k est 0.1419
La valeur de k est 0.4218
La valeur de k est 0.9157
La valeur de k est 0.7922 89
Un autre exemple de boucle for
>> for i = 1:8
>> disp(i);
>> end
1
2
3
4
5
6
7
8
Les boucles
90
Un autre exemple avec une matrice
>> A = rand(3,2);
>> disp(A);
0.8147 0.9134
0.9058 0.6324
0.1270 0.0975
>> for i = A
>> disp(‘La valeur de i est ‘)
>> disp(i);
>> end
La valeur de i est
0.8147
0.9058
0.1270
La valeur de i est
0.9134
0.6324
0.0975
Les boucles
91
Un autre exemple avec un vecteur colonne
>> v = rand(4,1);
>> disp(v);
0.9572
0.4854
0.8003
0.1419
>> for i = v
>> disp(‘La valeur de i est ‘)
>> disp(i);
>> end
La valeur de i est
0.9572
0.4854
0.8003
0.1419
Les boucles
92
Syntaxe du for
//Bloc de code 0
for <variable> = <matrice>
//Bloc de Code 1
end
//Bloc de Code 2
Les boucles
93
Un exemple
v = rand(1,100000);
s = 0;
for i = v
s = s+i;
end
disp(s);
Les boucles
s = sum(v);
94
Temps d’exécution
Les boucles
Taille du vecteur Temps d’exécution avec for Temps d’exécution sans for
1*106 0,92s 1,1ms
2*106 1,65s 1,6ms
3*106 2,48s 3,6ms
4*106 3,20s 3,0ms
5*106 3,96s 3,7ms
6*106 4,90s 6,7ms
7*106 5,63s 5,0ms
8*106 6,46s 5,8ms
9*106 7,33s 6,7ms
95
Temps d’exécution
Les boucles
96
Temps d’exécution
Les boucles
97
Syntaxe du while
//Bloc de code 0
while <condition 1>
//Bloc de Code 1
end
//Bloc de Code 2
Les boucles
98
Syntaxe du while
//Bloc de code 0
while <condition 1>
//Bloc de Code 1
end
//Bloc de Code 2
Les boucles
99
Première utilisation de la boucle while
a = input('Entrez une valeur entiere : ');
s=1;
while a>1
s = s*a;
a = a-1;
end
disp(s);
Les boucles
100
Seconde utilisation de la boucle while
a = input('Entrez une valeur positive : ');
while a<0
a = input('Entrez une valeur positive : ');
end
disp(a);
Les boucles
101
Troisième utilisation de la boucle while
a = input('Entrez une valeur : ');
b = input('Entrez une valeur : ');
n = min(a,b);
while ~(mod(a,n)==0 && mod(b,n)==0)
n=n-1;
end
disp(n)
Les boucles
102
Quelle boucle utiliser ?
Les boucles
Programme for ou while ? Explications
factorielle(a) for/vectorisé La boucle se répétera (a-1) fois
nombre positif while On ne sait pas combien de fois l’utilisateur va saisir
un nombre négatif
pgcd(a,b) Les deux Soit on teste tous les entiers entre 1 et min(a,b), soit
on teste ceux entre a et 1 jusqu’à en trouver un qui
divise.
103
Factorielle avec for
a = input('Entrez une valeur entiere : ');
s=1;
for i = 1:a
s = s*i;
end
disp(s);
Les boucles
a = input('Entrez une valeur : ');
s = prod(1:a);
disp(s);
104
Le mot clef break
Les boucles
105
Conclusion
Les boucles
106

Contenu connexe

Similaire à Introduction a Matlab Introduction a Matlab

Introduction à MATLAB et Simulink.pdf
Introduction à MATLAB et Simulink.pdfIntroduction à MATLAB et Simulink.pdf
Introduction à MATLAB et Simulink.pdfTarakBenslimane
 
Introduction à MATLAB et Simulink.pdf
Introduction à MATLAB et Simulink.pdfIntroduction à MATLAB et Simulink.pdf
Introduction à MATLAB et Simulink.pdfTarakBenslimane
 
Ebook matlab
Ebook matlabEbook matlab
Ebook matlabN NASRI
 
Fork / Join, Parallel Arrays, Lambdas : la programmation parallèle (trop ?) f...
Fork / Join, Parallel Arrays, Lambdas : la programmation parallèle (trop ?) f...Fork / Join, Parallel Arrays, Lambdas : la programmation parallèle (trop ?) f...
Fork / Join, Parallel Arrays, Lambdas : la programmation parallèle (trop ?) f...Normandy JUG
 
Lecture 3: Visualization and Programming
Lecture 3: Visualization and ProgrammingLecture 3: Visualization and Programming
Lecture 3: Visualization and ProgrammingSmee Kaem Chann
 
Cours 1 bases de matlab 2eme annees
Cours 1   bases de matlab 2eme anneesCours 1   bases de matlab 2eme annees
Cours 1 bases de matlab 2eme anneesTarik Taleb Bendiab
 
Python avancé : Ensemble, dictionnaire et base de données
Python avancé : Ensemble, dictionnaire et base de donnéesPython avancé : Ensemble, dictionnaire et base de données
Python avancé : Ensemble, dictionnaire et base de donnéesECAM Brussels Engineering School
 
Scala : programmation fonctionnelle
Scala : programmation fonctionnelleScala : programmation fonctionnelle
Scala : programmation fonctionnelleMICHRAFY MUSTAFA
 
L'impact des incriments des séquences de tri Shell. Expérimentation des séque...
L'impact des incriments des séquences de tri Shell. Expérimentation des séque...L'impact des incriments des séquences de tri Shell. Expérimentation des séque...
L'impact des incriments des séquences de tri Shell. Expérimentation des séque...Soumia Elyakote HERMA
 
Exercices pascal fenni_2018
Exercices pascal fenni_2018Exercices pascal fenni_2018
Exercices pascal fenni_2018salah fenni
 

Similaire à Introduction a Matlab Introduction a Matlab (20)

Introduction à MATLAB et Simulink.pdf
Introduction à MATLAB et Simulink.pdfIntroduction à MATLAB et Simulink.pdf
Introduction à MATLAB et Simulink.pdf
 
Introduction à MATLAB et Simulink.pdf
Introduction à MATLAB et Simulink.pdfIntroduction à MATLAB et Simulink.pdf
Introduction à MATLAB et Simulink.pdf
 
Initiation r
Initiation rInitiation r
Initiation r
 
Ebook matlab
Ebook matlabEbook matlab
Ebook matlab
 
Fork / Join, Parallel Arrays, Lambdas : la programmation parallèle (trop ?) f...
Fork / Join, Parallel Arrays, Lambdas : la programmation parallèle (trop ?) f...Fork / Join, Parallel Arrays, Lambdas : la programmation parallèle (trop ?) f...
Fork / Join, Parallel Arrays, Lambdas : la programmation parallèle (trop ?) f...
 
Tp01
Tp01Tp01
Tp01
 
Lecture 3: Visualization and Programming
Lecture 3: Visualization and ProgrammingLecture 3: Visualization and Programming
Lecture 3: Visualization and Programming
 
Matlab by Prof.Keang Sè Pouv
Matlab by Prof.Keang Sè PouvMatlab by Prof.Keang Sè Pouv
Matlab by Prof.Keang Sè Pouv
 
Algorithmique
AlgorithmiqueAlgorithmique
Algorithmique
 
Algorithmique
AlgorithmiqueAlgorithmique
Algorithmique
 
Cours 1 bases de matlab 2eme annees
Cours 1   bases de matlab 2eme anneesCours 1   bases de matlab 2eme annees
Cours 1 bases de matlab 2eme annees
 
Tp2 matlab
Tp2 matlab Tp2 matlab
Tp2 matlab
 
Python avancé : Ensemble, dictionnaire et base de données
Python avancé : Ensemble, dictionnaire et base de donnéesPython avancé : Ensemble, dictionnaire et base de données
Python avancé : Ensemble, dictionnaire et base de données
 
C++ 11/14
C++ 11/14C++ 11/14
C++ 11/14
 
Tp1 matlab
Tp1 matlab Tp1 matlab
Tp1 matlab
 
Td logique
Td logiqueTd logique
Td logique
 
TP5_2020.pdf
TP5_2020.pdfTP5_2020.pdf
TP5_2020.pdf
 
Scala : programmation fonctionnelle
Scala : programmation fonctionnelleScala : programmation fonctionnelle
Scala : programmation fonctionnelle
 
L'impact des incriments des séquences de tri Shell. Expérimentation des séque...
L'impact des incriments des séquences de tri Shell. Expérimentation des séque...L'impact des incriments des séquences de tri Shell. Expérimentation des séque...
L'impact des incriments des séquences de tri Shell. Expérimentation des séque...
 
Exercices pascal fenni_2018
Exercices pascal fenni_2018Exercices pascal fenni_2018
Exercices pascal fenni_2018
 

Dernier

JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...Institut de l'Elevage - Idele
 
JTC 2024 - Réglementation européenne BEA et Transport.pdf
JTC 2024 - Réglementation européenne BEA et Transport.pdfJTC 2024 - Réglementation européenne BEA et Transport.pdf
JTC 2024 - Réglementation européenne BEA et Transport.pdfInstitut de l'Elevage - Idele
 
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdf
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdfJTC 2024 - SMARTER Retour sur les indicateurs de santé .pdf
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdfInstitut de l'Elevage - Idele
 
présentation sur la logistique (4).
présentation     sur la  logistique (4).présentation     sur la  logistique (4).
présentation sur la logistique (4).FatimaEzzahra753100
 
Algo II : les piles ( cours + exercices)
Algo II :  les piles ( cours + exercices)Algo II :  les piles ( cours + exercices)
Algo II : les piles ( cours + exercices)Sana REFAI
 
SciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdfSKennel
 
Cours-de-Ponts Cours de Ponts Principes généraux - Conception Méthodes de con...
Cours-de-Ponts Cours de Ponts Principes généraux - Conception Méthodes de con...Cours-de-Ponts Cours de Ponts Principes généraux - Conception Méthodes de con...
Cours-de-Ponts Cours de Ponts Principes généraux - Conception Méthodes de con...maach1
 
JTC 2024 La relance de la filière de la viande de chevreau.pdf
JTC 2024 La relance de la filière de la viande de chevreau.pdfJTC 2024 La relance de la filière de la viande de chevreau.pdf
JTC 2024 La relance de la filière de la viande de chevreau.pdfInstitut de l'Elevage - Idele
 
Câblage, installation et paramétrage d’un réseau informatique.pdf
Câblage, installation et paramétrage d’un réseau informatique.pdfCâblage, installation et paramétrage d’un réseau informatique.pdf
Câblage, installation et paramétrage d’un réseau informatique.pdfmia884611
 

Dernier (11)

JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...
 
JTC 2024 - DeCremoux_Anomalies_génétiques.pdf
JTC 2024 - DeCremoux_Anomalies_génétiques.pdfJTC 2024 - DeCremoux_Anomalies_génétiques.pdf
JTC 2024 - DeCremoux_Anomalies_génétiques.pdf
 
JTC 2024 - Réglementation européenne BEA et Transport.pdf
JTC 2024 - Réglementation européenne BEA et Transport.pdfJTC 2024 - Réglementation européenne BEA et Transport.pdf
JTC 2024 - Réglementation européenne BEA et Transport.pdf
 
CAP2ER_GC_Presentation_Outil_20240422.pptx
CAP2ER_GC_Presentation_Outil_20240422.pptxCAP2ER_GC_Presentation_Outil_20240422.pptx
CAP2ER_GC_Presentation_Outil_20240422.pptx
 
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdf
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdfJTC 2024 - SMARTER Retour sur les indicateurs de santé .pdf
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdf
 
présentation sur la logistique (4).
présentation     sur la  logistique (4).présentation     sur la  logistique (4).
présentation sur la logistique (4).
 
Algo II : les piles ( cours + exercices)
Algo II :  les piles ( cours + exercices)Algo II :  les piles ( cours + exercices)
Algo II : les piles ( cours + exercices)
 
SciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdf
 
Cours-de-Ponts Cours de Ponts Principes généraux - Conception Méthodes de con...
Cours-de-Ponts Cours de Ponts Principes généraux - Conception Méthodes de con...Cours-de-Ponts Cours de Ponts Principes généraux - Conception Méthodes de con...
Cours-de-Ponts Cours de Ponts Principes généraux - Conception Méthodes de con...
 
JTC 2024 La relance de la filière de la viande de chevreau.pdf
JTC 2024 La relance de la filière de la viande de chevreau.pdfJTC 2024 La relance de la filière de la viande de chevreau.pdf
JTC 2024 La relance de la filière de la viande de chevreau.pdf
 
Câblage, installation et paramétrage d’un réseau informatique.pdf
Câblage, installation et paramétrage d’un réseau informatique.pdfCâblage, installation et paramétrage d’un réseau informatique.pdf
Câblage, installation et paramétrage d’un réseau informatique.pdf
 

Introduction a Matlab Introduction a Matlab

  • 2. Qu’est-ce que Matlab ? 14 Présentation de Matlab
  • 6. Matlab à la maison 18 . . . . . Présentation de Matlab
  • 7. Les commandes de base en Matlab
  • 8. Les opérations de base >> 3+6 Les commandes de base en Matlab ans = 9 20
  • 9. Les opérations de base >> sqrt((3+4)*cos(5*pi/7))*exp(2^4) Les commandes de base en Matlab Symbole Description Exemple + - * / Les opérations de base en mathématiques (addition, soustraction, multiplication et division) 7+9 3/4 pi La constante Pi pi/3 cos sin tan Les fonctions trigonométriques usuelles cos(3*pi/2) log exp Le logarithme népérien et l’exponentielle exp(3) sqrt La racine carrée sqrt(5) ^ La puissance 4^7 21
  • 10. Les nombres réels >> 2.7 * 3.9 ans = 10.5300 Les commandes de base en Matlab 22
  • 11. Les variables (simples) en Matlab >> x = 4 Les commandes de base en Matlab 23
  • 12. Les variables (simples) en Matlab >> y = x+2 Les commandes de base en Matlab 24
  • 13. Les variables (simples) en Matlab >> disp(y) 6 Les commandes de base en Matlab >> y y = 6 25
  • 14. Les variables (simples) en Matlab >> x = input('Entrez une valeur : '); Entrez une valeur : 9 Les commandes de base en Matlab 26
  • 16. Matlab et les matrices Les matrices dans Matlab 28
  • 17. Déclarer des matrices dans Matlab . . . >> A = [1 2 3; 4 5 6; 7 8.5 9; 10 11.5 12] Les matrices dans Matlab 29
  • 18. Déclarer des matrices dans Matlab >> B = [4.2 7.6 8.2; 4.1 0.5 0] Les matrices dans Matlab 4.2 7.6 8.2 4.1 0.5 0 >> C = [5.7 0.2 6.2 5.1; 7.1 2.4 8.4; 1.2 0.4 8.4 6.4] 30
  • 19. Déclarer des matrices dans Matlab . . >> D = [4 2 9 4 2] Les matrices dans Matlab 4 2 9 4 2 >> E = [3.5 ; 7; 9; 8; 0] 3,5 7 9 8 0 31
  • 20. Déclarer des matrices dans Matlab >> A = [1 2 3; 4 5 6; 7 8.5 9; 10 11.5 12] Les matrices dans Matlab >> A = [4.2 7.6 8.2; 4.1 0.5 0] >> A = 3 32
  • 21. Accéder aux éléments des matrices >> A(3,2) Les matrices dans Matlab >> A = [5.7 0.2 6.2 5.1; 8.7 7.1 2.4 8.4; 1.2 0.4 8.2 6.4] >> y = A(2,4) 33
  • 22. Accéder aux éléments des matrices >> A = [5.7 0.2 6.2 5.1; 8.7 7.1 2.4 8.4; 1.2 0.4 8.2 6.4] Les matrices dans Matlab >> A(5) ans = 7.1000 5.7 0.2 6.2 5.1 8.7 7.1 2.4 8.4 1.2 0.4 8.2 6.4 1 4 7 10 2 5 8 11 3 6 9 12 34
  • 23. Accéder aux éléments des matrices >> B = A(2:4,4:5) Les matrices dans Matlab 5.7 0.2 6.2 5.1 3 8.7 7.1 2.4 8.4 6.1 1.2 0.4 8.2 6.4 2.7 2.3 6.7 6.5 5.2 10 2.1 1.8 0.6 7.2 8.2 8.4 6.1 6.4 2.7 5.2 10 35
  • 24. Accéder aux éléments des matrices >> B = A(2:4,:) Les matrices dans Matlab 5.7 0.2 6.2 5.1 3 8.7 7.1 2.4 8.4 6.1 1.2 0.4 8.2 6.4 2.7 2.3 6.7 6.5 5.2 10 2.1 1.8 0.6 7.2 8.2 8.7 7.1 2.4 8.4 6.1 1.2 0.4 8.2 6.4 2.7 2.3 6.7 6.5 5.2 10 36
  • 25. Taille d’une matrice >> s = size(A) Les matrices dans Matlab 5.7 0.2 6.2 5.1 8.7 7.1 2.4 8.4 1.2 0.4 8.2 6.4 2.3 6.7 6.5 5.2 2.1 1.8 0.6 7.2 5 4 37
  • 26. Taille d’une matrice >> numel(A) ans = 20 Les matrices dans Matlab 5.7 0.2 6.2 5.1 8.7 7.1 2.4 8.4 1.2 0.4 8.2 6.4 2.3 6.7 6.5 5.2 2.1 1.8 0.6 7.2 38
  • 27. Opérations de base sur les matrices Les matrices dans Matlab Symbole Description Exemple + - * Les opérations de base (addition, soustraction, produit matriciel). Les tailles des matrices doivent être compatibles A+B A*B ^ La puissance matricielle (itération du produit matriciel) A^3 ’ Transposée d’une matrice A’ inv L’inversion d’une matrice (si son inverse existe) inv(A) Symbole Description Exemple + - * / Réalise l’opération entre un scalaire et chaque élément de la matrice. 5.4*A .* Réalise la multiplication terme à terme de deux matrices de même taille. A.*B .^ Met à une certaine puissance chaque élément de la matrice A.^3 39
  • 28. Opérations de base sur les matrices Les matrices dans Matlab 4 25 36 2 9 49 2 5 6 1.4 3 7 40
  • 29. Opérations avancées sur les matrices Les matrices dans Matlab 2.6 3.9 10 1.0 -3 3.2 3.6 0.9 13.2 16.5 1.2 41
  • 30. Opérations avancées sur les matrices >> b = sum(A,2) Les matrices dans Matlab 3 2 1 8 4 1 3 6 2 2 0 5 14 14 9 42
  • 31. Opérations avancées sur les matrices >> b = sum(A,1) Les matrices dans Matlab 3 2 1 8 3 2 1 8 43
  • 32. Opérations avancées sur les matrices >> b = sum(A,1) >> c = sum(b,2) Les matrices dans Matlab >> c = sum(sum(A,2),1) 44
  • 33. Opérations avancées sur les matrices Les matrices dans Matlab 2.6 3.9 10 1.0 -3 3.2 2.6 3.9 10 10 3.2 45
  • 34. Filtrage de matrices Les matrices dans Matlab 1 8 10 15 8.7 7.1 2.4 8.4 6.1 1.2 0.4 8.2 6.4 2.7 2.3 6.7 6.5 5.2 10 46
  • 35. Filtrage de matrices >> l = find(A>8) >> A(l) = 0 Les matrices dans Matlab 0 7.1 2.4 0 6.1 1.2 0.4 0 6.4 2.7 2.3 6.7 6.5 5.2 0 8.7 7.1 2.4 8.4 6.1 1.2 0.4 8.2 6.4 2.7 2.3 6.7 6.5 5.2 10 >> A(find(A>8))=0 47
  • 36. Filtrage de matrices >> k = find(A<1) >> A(k) = A(k)+1 Les matrices dans Matlab 48
  • 37. Filtrage de matrices Les matrices dans Matlab Symbole Description Exemple > < >= <= Les comparaisons de base (supérieur, inférieur, supérieur ou égal, inférieur ou égal) A >= 3 A < 5 == L’égalité A == 7.2 ~= L’inégalité A ~= 8 Symbole Description Exemple & Combine deux critères avec un et logique. (A > 3) & (A<8) | Combine deux critères avec un ou logique. (A > 6) | (A < 3) ~ Inverse un critère ~((A > 3) & (A < 4)) 49
  • 38. Filtrage de matrices >> k = find(A<0) >> A(k) = -A(k) Les matrices dans Matlab 50
  • 39. Filtrage de matrices >> B = (A < 3) Les matrices dans Matlab 8.7 7.1 2.4 8.4 6.1 1.2 0.4 8.2 6.4 2.7 2.3 6.7 6.5 5.2 10 0 0 1 0 0 1 1 0 0 1 1 0 0 0 0 51
  • 40. Filtrage de matrices >> k = (A<0) >> k = -2*k + 1 >> A = A.*k Les matrices dans Matlab 52
  • 41. Générer de nouvelles matrices Les matrices dans Matlab Fonction Description Exemple rand(n,m) Génère une matrice remplie de nombre aléatoires entre 0 et 1, de n lignes et m colonnes. A = rand(3,5) ones(n,m) Génère une matrice remplie de 1, de n lignes et m colonnes A = ones(4,4) zeros(n,m) Génère une matrice remplie de 0, de n lignes et m colonnes A = zeros(1,3) 53
  • 42. Concaténation de matrices >> D = [A B] >> E = [A ; C] Les matrices dans Matlab 4 5 6 7 1 1 2 8 7 4 3 1 2 5 8 5 4 4 4 5 6 4 3 7 1 1 1 2 2 8 7 5 8 4 5 6 7 1 1 2 8 7 5 4 4 54
  • 43. Le mot clef if – exécuter du code sous condition
  • 44. Le mot clef if Le mot clef if 56
  • 45. Un premier programme avec if . . x=input(‘Entrez une valeur svp’); y=2; if x<4 y=0; end Le mot clef if 57
  • 46. Syntaxe du if //Bloc de code 0 if <condition 1> //Bloc de Code 1 end //Bloc de Code 2 Le mot clef if 58
  • 47. Un exemple x = input(‘Entrez une valeur : ‘); if x<0 x = -x; end disp(x) Le mot clef if 59
  • 48. L’écriture de conditions x = input(‘Entrez une valeur : ‘); y = input(‘Entrez une autre valeur : ‘); if x>0 && y>0 disp(‘Les deux valeur entrées sont positives’) end Le mot clef if Symbole Description Exemple && Combine deux conditions avec un et logique. (A > 3) & (A<8) || Combine deux conditions avec un ou logique. (A > 6) | (A < 3) ~ Inverse une condition ~((A > 3) & (A < 4)) 60
  • 49. Le mot clef elseif Le mot clef if 61
  • 50. Un premier programme avec elseif . . . x=input(‘Entrez une valeur svp’); y=2; if x<4 y=0; elseif x>9 y=1; end Le mot clef if 62
  • 51. Un second programme avec elseif . . . a=input(‘Entrez votre age’); if a>=100 disp(‘Vous êtes assez âgé’); elseif a>=18 disp(‘Vous êtes majeur’); elseif a>=16 disp(‘Vous pouvez conduire (accompagné)’); end Le mot clef if 63
  • 52. Un second programme avec elseif a=input(‘Entrez votre age’); if a>=100 disp(‘Vous êtes assez âgé’); elseif a>=18 disp(‘Vous êtes majeur’); elseif a>=16 disp(‘Vous pouvez conduire’); end Le mot clef if a=input(‘Entrez votre age’); if a>=100 disp(‘Vous êtes assez âgé’); endif if a>=18 disp(‘Vous êtes majeur’); endif if a>=16 disp(‘Vous pouvez conduire’); end 64
  • 53. Syntaxe du if/elseif //Bloc de code 0 if <condition 1> //Bloc de Code 1 elseif <condition 2> //Bloc de Code 2 elseif <condition 3> //Bloc de Code 3 elseif ... //... end //Bloc de Code n Le mot clef if 65
  • 54. Syntaxe du if/elseif //Bloc de code 0 if <condition 1> //Bloc de Code 1 elseif <condition 2> //Bloc de Code 2 elseif <condition 3> //Bloc de Code 3 elseif ... //... end //Bloc de Code n Le mot clef if 66
  • 55. Syntaxe du if/elseif a=input(‘Entrez votre note de contrôle Matlab’); if a<14 disp(‘Vous n’êtes pas très bon’); elseif a>=15 disp(‘Pas mal’); elseif a>18 disp(‘Vous pourrez passer en deuxième année’); elseif a<4 disp(‘Il y a des places de libres en MACS...’); Le mot clef if 67
  • 56. Se passer du elseif a = input(‘Entrez votre age : ‘); if a>=100 disp(‘Vous êtes assez âgé’); elseif a>=18 disp(‘Vous êtes majeur’); elseif a>=16 disp(‘Vous pouvez conduire’); end Le mot clef if a = input(‘Entrez votre age : ‘); if a>=100 disp(‘Vous êtes assez âgé’); end if a>=18 disp(‘Vous êtes majeur’); end if a>=16 disp(‘Vous pouvez conduire’); end 68
  • 57. Se passer du elseif a = input(‘Entrez votre age : ‘); if a>=100 disp(‘Vous êtes assez âgé’); elseif a>=18 disp(‘Vous êtes majeur’); elseif a>=16 disp(‘Vous pouvez conduire’); end Le mot clef if a = input(‘Entrez votre age : ‘); if a>=100 disp(‘Vous êtes assez âgé’); end if ~(a>=100) && a>=18 disp(‘Vous êtes majeur’); end if ~(a>=100) && ~(a>=18) && a>=16 disp(‘Vous pouvez conduire’); end 69
  • 58. Le mot clef else Le mot clef if 70
  • 59. Un exemple x = input('Entrez une valeur : '); y = input('Entrez une valeur : '); z = input('Entrez votre choix d operation : '); if z==1 disp(x+y); elseif z==2 disp(x*y); elseif z==3 disp(x-y); elseif z==4 disp(x/y); end Le mot clef if 71
  • 60. Un exemple x = input('Entrez une valeur : '); y = input('Entrez une valeur : '); z = input('Entrez votre choix d operation : '); if z==1 disp(x+y); elseif z==2 disp(x*y); elseif z==3 disp(x-y); elseif z==4 disp(x/y); else disp(‘Mauvais choix’); end Le mot clef if 72
  • 61. Un second exemple avec else . . . . a=input(‘Entrez votre age’); if a>=100 disp(‘Vous êtes assez âgé’); elseif a>=18 disp(‘Vous êtes majeur’); elseif a>=16 disp(‘Vous pouvez conduire (accompagné)’); else disp(‘Vous êtes jeune’); end Le mot clef if 73
  • 62. Syntaxe du if/elseif/else //Bloc de code 0 if <condition 1> //Bloc de Code 1 elseif <condition 2> //Bloc de Code 2 elseif <condition 3> //Bloc de Code 3 elseif ... //... else ... //Bloc de code n end //Bloc de Code n+1 Le mot clef if 74
  • 63. Syntaxe du if/elseif/else //Bloc de code 0 if <condition 1> //Bloc de Code 1 elseif <condition 2> //Bloc de Code 2 elseif <condition 3> //Bloc de Code 3 elseif ... //... else ... //Bloc de code n end //Bloc de Code n+1 Le mot clef if 75
  • 64. Exercice x = input(‘Entrez une valeur ‘); if x==0 disp(‘x est nul’); elseif x>0 disp(‘x est positif’); else x<0 disp(‘x est négatif’); end Le mot clef if 76
  • 65. Exercice x = input(‘Entrez une valeur ‘); if x==0 disp(‘x est nul’); else disp(‘x est négatif’); elseif x>0 disp(‘x est positif’); end Le mot clef if 77
  • 66. Exercice x = input(‘Entrez une valeur ‘); if x==0 disp(‘x est nul’); else disp(‘x est négatif’); else disp(‘x est positif’); end Le mot clef if 78
  • 67. Exercice x = input(‘Entrez une valeur ‘); if x==0 disp(‘x est nul’); elseif x<0 disp(‘x est négatif’); elseif disp(‘x est positif’); end Le mot clef if 79
  • 68. Exercice x = input(‘Entrez une valeur ‘); if x==0 disp(‘x est nul’); if x<0 disp(‘x est négatif’); if x>0 disp(‘x est positif’); end Le mot clef if 80
  • 69. Exercice x = input(‘Entrez une valeur ‘); y = input(‘Entrez une valeur ‘); if x>=0 if y >=0 disp(‘x et y sont positifs’); else disp(‘x est positif et y est négatif’); end else if y >=0 disp(‘x est négatif et y est positif’); else disp(‘x et y sont négatifs’); end end Le mot clef if 81
  • 70. Diagramme d’évaluation d’un bloc if Le mot clef if La condition du if est vraie ? Y a-t-il un elseif ensuite ? La condition du elseif est vraie ? Y a-t-il un else ensuite ? Exécuter le bloc de code situé à la suite Sauter au mot clef end 82
  • 71. La fonction modulo >> a = mod(23,7); >> disp(a) 2 Le mot clef if 83
  • 72. La fonction modulo a = input('Entrez une valeur : '); if mod(a,7) == 0 disp('a est divisible par 7'); else disp('a n est pas divisible par 7'); end Le mot clef if if (a%7 == 0) { ... } 84
  • 73. La fonction modulo a = input('Entrez une valeur : '); if mod(a,2) == 0 disp('a est un nombre pair’); else disp('a est un nombre impair’); end Le mot clef if 85
  • 77. Première utilisation de la boucle for >> v = rand(1,5); >> disp(v); 0.8003 0.1419 0.4218 0.9157 0.7922 Les boucles >> for k = v >> disp('La valeur de k est ‘) >> disp(k) >> end La valeur de k est 0.8003 La valeur de k est 0.1419 La valeur de k est 0.4218 La valeur de k est 0.9157 La valeur de k est 0.7922 89
  • 78. Un autre exemple de boucle for >> for i = 1:8 >> disp(i); >> end 1 2 3 4 5 6 7 8 Les boucles 90
  • 79. Un autre exemple avec une matrice >> A = rand(3,2); >> disp(A); 0.8147 0.9134 0.9058 0.6324 0.1270 0.0975 >> for i = A >> disp(‘La valeur de i est ‘) >> disp(i); >> end La valeur de i est 0.8147 0.9058 0.1270 La valeur de i est 0.9134 0.6324 0.0975 Les boucles 91
  • 80. Un autre exemple avec un vecteur colonne >> v = rand(4,1); >> disp(v); 0.9572 0.4854 0.8003 0.1419 >> for i = v >> disp(‘La valeur de i est ‘) >> disp(i); >> end La valeur de i est 0.9572 0.4854 0.8003 0.1419 Les boucles 92
  • 81. Syntaxe du for //Bloc de code 0 for <variable> = <matrice> //Bloc de Code 1 end //Bloc de Code 2 Les boucles 93
  • 82. Un exemple v = rand(1,100000); s = 0; for i = v s = s+i; end disp(s); Les boucles s = sum(v); 94
  • 83. Temps d’exécution Les boucles Taille du vecteur Temps d’exécution avec for Temps d’exécution sans for 1*106 0,92s 1,1ms 2*106 1,65s 1,6ms 3*106 2,48s 3,6ms 4*106 3,20s 3,0ms 5*106 3,96s 3,7ms 6*106 4,90s 6,7ms 7*106 5,63s 5,0ms 8*106 6,46s 5,8ms 9*106 7,33s 6,7ms 95
  • 86. Syntaxe du while //Bloc de code 0 while <condition 1> //Bloc de Code 1 end //Bloc de Code 2 Les boucles 98
  • 87. Syntaxe du while //Bloc de code 0 while <condition 1> //Bloc de Code 1 end //Bloc de Code 2 Les boucles 99
  • 88. Première utilisation de la boucle while a = input('Entrez une valeur entiere : '); s=1; while a>1 s = s*a; a = a-1; end disp(s); Les boucles 100
  • 89. Seconde utilisation de la boucle while a = input('Entrez une valeur positive : '); while a<0 a = input('Entrez une valeur positive : '); end disp(a); Les boucles 101
  • 90. Troisième utilisation de la boucle while a = input('Entrez une valeur : '); b = input('Entrez une valeur : '); n = min(a,b); while ~(mod(a,n)==0 && mod(b,n)==0) n=n-1; end disp(n) Les boucles 102
  • 91. Quelle boucle utiliser ? Les boucles Programme for ou while ? Explications factorielle(a) for/vectorisé La boucle se répétera (a-1) fois nombre positif while On ne sait pas combien de fois l’utilisateur va saisir un nombre négatif pgcd(a,b) Les deux Soit on teste tous les entiers entre 1 et min(a,b), soit on teste ceux entre a et 1 jusqu’à en trouver un qui divise. 103
  • 92. Factorielle avec for a = input('Entrez une valeur entiere : '); s=1; for i = 1:a s = s*i; end disp(s); Les boucles a = input('Entrez une valeur : '); s = prod(1:a); disp(s); 104
  • 93. Le mot clef break Les boucles 105