Année Préparatoires 2
Année Universitaire : 2021/2022
Module : Outils informatique
Devoir Surveillé 1
– Durée : 01h30min –
Exercice 1 : Cocher la case correspondante à la bonne réponse : (4pts)
1- L’acronyme MATLAB signifiant: 6-Pour effacer le contenu de «Command Window»,
□ MAThematics LABoratory on utilise :
□ MATrix LAByrinth □ La commande « clear »
□ MATrix LABoratory □ La commande « close »
2- En MATLAB, la commande « whos » est utilisée □ La commande « clc »
pour : 7- quelle est la commande pour générer un vecteur x
□ Affiche toutes les variables définies dans le contenant 15 valeurs équidistantes entre 4 et 20?
wokspace. □ x = linspace(4,15,20)
□ Affiche la documentation officielle de MATLAB □ x = linspace(15,4,20)
□ Affiche le logo de MATLAB. □ x = linspace(4,20,15)
3- Comment écrit-on des commentaires dans □ x = [Link]
MATLAB ? 8- quelle est l’une des différences entre un script et
□ /* mon commentaire */ une fonction?
□ % mon commentaire □ seul un M-file de type function peut être exécuté à
□ // mon commentaire partir de la fenêtre de commande.
4- La fenêtre nommée «Workspace» permet de : □ un M-file de type function ne requiert pas
□ formuler les expressions et interagir avec MATLAB. d’arguments en entrées.
□ Indiquer toutes les variables stockées en mémoire. □ seul un M-file permet de définir une fonction.
□ Garder la trace de toutes les commandes entrées. □ les noms des variables d’un M-file de type function
5- Le langage MATLAB est sensible à la casse : n’ont de sens qu’à l’intérieur de la fonction, alors que
les variables d’un script sont disponibles pour les autres
□ Vrai programmes tant qu’on ne les a pas nettoyés.
□ Faux
Exercice 2 : (3,5pts)
1) Ecrire les commandes MATLAB permettant de calculer les formules suivantes : (1,5pts)
4
𝑣= 3
𝜋 𝑟3 𝑣 = 4/3 ∗ pi ∗ r^3
𝑦 = 𝑎. 𝑒 (𝑦𝑡+𝑧) y= a*exp(y*t+z)
√|𝑏 2 −4𝑎𝑐|
𝑥= ℎ x= sqrt(abs(b^2-4*a*c))/log(d+h/2)
ln (𝑑+ )
2
2) Donner la valeur de la matrice A après exécution des opérations suivantes : (2pts)
A=[1 2] ; 1 2
A=[A ; A] ; 1 2
A=A*eye(2)
A= 3 * ones(2,1) ; 3 2 0
A= [A 2*eye(2)] 3 0 2
A= 3*ones(3,3) ; 3 0 0
1
A= A.*eye(3) 0 3 0
0 0 3
A= diag(11 :-3 :1) 11 0 0 0
0 8 0 0
0 0 5 0
0 0 0 2
Exercice 3 : (5pts)
1) Créer avec une seule instruction la matrice H suivante :
9 7 2 4 6
H= [3 1 5 4 2]
8 16 4 1 7
H = [ 9 7 2 4 6 ; 3 1 5 4 2 ; 8 16 4 1 7 ]
2) Afficher les deux premières lignes et les deux premières colonnes de H.
H(:,1:2)
3) Afficher les éléments de H formés par la ligne 1 et 3, les colonnes 1 à 3.
H([1 3],1:3)
4) Echanger les éléments de la ligne 1 avec la ligne 3, puis échanger les éléments des
colonnes 2 avec la colonne 4 pour obtenir :
8 1 4 16 7
H= [3 4 5 1 2]
9 4 2 7 6
H([1 3 ],:)=H([3 1],:)
H(:,[2 4])= H(:,[4 2])
5) Ensuite, créer une matrice G où l'ordre des colonnes est inversé, c.à.d. que l'on doit avoir :
7 16 5 1 8
G= [2 1 5 4 3]
6 7 2 4 9
G= H( :, end :-1 :1 )
Exercice 4 : (3pts)
Ecrire en langage Matlab dans la partie script, un programme qui calcule la moyenne générale
pour un étudiant et affiche dans la partie commande ce relevé des notes sachant que la moyenne
est calculée par la saisie de 4 modules avec ses coefficients.
****** Relevée des notes ******
Numéro inscription : X
Nom : Y
Prénom : Z
Moyenne générale : MG
Année universitaire : F / G
Clc
Clear
X = input ( ‘ Entrez votre numéro inscription ’ ) ;
Y = input ( ‘ Entrez votre nom ’ ) ;
2
Z = input ( ‘ Entrez votre prénom ’ ) ;
D = input ( ‘ Entrez votre année1 ’ ) ;
E = input ( ‘ Entrez votre année2 ’ ) ;
M1 = input ( ‘ Entrez votre module1 : ’ ) ;
C1 = input ( ‘ Entrez votre coefficient1 : ’ ) ;
M2 = input ( ‘ Entrez votre module1 : ’ ) ;
C2 = input ( ‘ Entrez votre coefficient1 : ’ ) ;
M3 = input ( ‘ Entrez votre module1 : ’ ) ;
C3 = input ( ‘ Entrez votre coefficient1 : ’ ) ;
M4 = input ( ‘ Entrez votre module1 : ’ ) ;
C4 = input ( ‘ Entrez votre coefficient1 : ’ ) ;
MG = ( M1*C1 + M2*C2 + M3*C3 + M4*C4 ) / ( C1 + C2 + C3 + C4 );
frpintf( ‘ numéro inscription : %d \n ‘ , X );
frpintf( ‘ nom : %s \n ‘ , Y );
frpintf( ‘ prénom : %s \n ‘ , Z );
frpintf( ‘ Année universitaire : %d / %d \n ‘ , D , E );
frpintf( ‘ Moyenne générale : %f \n ‘ , MG );
Exercice 5 : (2,5pts)
Ecrire une fonction MATLAB qui lit une matrice carré A et donne son inverse 𝐴−1 (s’il existe)
Remarque : il est possible d’inverser une matrice si :
1. Elle est carrée.
2. Son déterminant n’est pas nul.
function I=inverse(A)
I=0;
s=size(A)
d=det(A)
if s(1)==s(2) & d ~= 0
I=A^(-1)
else
disp('...La matrice ne peut pas etre inversée .!')
end