Académique Documents
Professionnel Documents
Culture Documents
Scripts et fonctions
Un script est un ensemble d’instruction MATLAB qui joue le rôle de programme principal. Si le
script est écrit dans le fichier de nom nom.m on l’exécute dans la fenêtre MATLAB en tapant
après « >> » nom .
1 ISET MAHDIA
Atelier Math TI1 : 2013/2014
Boucle for
Syntaxe :
for indice = borne_inf : borne_sup
Séquence d’instructions
end
Où indice est une variable appelée l’indice de la boucle
Borne_inf et borne_sup sont deux constantes
On peut utiliser un incrément (pas) autre que 1. La syntaxe est alors Borne_inf : pas :
borne_sup.
Boucle while
Syntaxe :
while expression logique
Séquence d’instructions
end
expression logique est une expression dont le résultat peut être vrai ou faux
séquence d’instructions est le traitement à effectuer tant que expression logique est vraie.
L’instruction conditionnée IF
Syntaxe1 :
if expression logique
séquence d’instructions
end
expression logique est une expression dont le résultat peut être vrai ou faux
Il n’y a pas de mot clé « then »
Syntaxe 2:
if expression logique
séquence d’instructions 1
else
séquence d’instructions 2
end
Syntaxe 3:
Il est possible d’effectuer un chois en cascade :
if expression logique 1
séquence d’instructions 1
elseif expression logique 2
séquence d’instructions 2
2 ISET MAHDIA
Atelier Math TI1 : 2013/2014
…
elseif expression logique N
séquence d’instructions N
else séquence d’instructions par défaut
end
L’instruction switch
Syntaxe :
switch var
case cst1,
séquence d’instructions 1
case cst2,
séquence d’instructions 2
…
case cstN,
séquence d’instructions N
otherwise séquence d’instructions par défaut
end
var est une variable numérique ou une variable chaîne de caractères
cst1,…,cstN, sont des constantes numérique ou des constantes chaîne de caractères
séquence d’instructions i est une séquence d’instructions à exécuter si le contenu de la variable
var est égal à la constante csti (var= =csti).
Il est possible de regrouper plusieurs « cas » si la séquence d’instructions à exécuter est la même
pour ces différents cas. La syntaxe est alors :
Case{ cst1,…,cstN}
Séquence d’instructions commune
Exemple 1 :
3 ISET MAHDIA
Atelier Math TI1 : 2013/2014
if n==1 ;
R=R(1)+ R(2)+ R(3);
else if n==0;
R=(R(1)*R(2)+R(1)*R(3)+R(2)*R(3))/(R(1)*R(2)*R(3));
end
end
disp(['La résistance équivalente est : ',num2str(R),' (Ohms)'])
Exemple 2 :
% Ce programme calcule et affiche la table des produits x*y à valeurs dans [0,10]
x=[0:10];
y=[0:10];
k=1;
l=1;
for k=1:11
for l=1:11
A(k,l)=(k-1)*(l-1);
end
end
disp(A)
Exemple 3
function [S,P]=sommeprod(N)
S=N*(N+1)/2;
P=1;
k=1;
while k<N
P=P*k;
k=k+1;
end
P=P*N;
Exercice 1:
Exercice2:
2. Tester la fonction sur quelques valeurs, par exemple f2(-1) = 0:0230, f2(3) = 0:0235.
4 ISET MAHDIA
Atelier Math TI1 : 2013/2014
Exercice 3 :
Ecrire une fonction qui permet de calculer le maximum et le minimum d'un vecteur de deux
manières :
Exercice 4 :
Ecrire un script qui permet de calculer la somme, la différence ainsi que le produit de deux
matrices.
5 ISET MAHDIA