Académique Documents
Professionnel Documents
Culture Documents
Exercice 1
1) Donner le code permettant d’obtenir un vecteur x composé de 100 000 tirages aléatoires indépendants
d’une variable aléatoire suivant une loi normale centrée réduite. Quelle est la moyenne empirique
obtenue ?
x=rnorm(100000)
mean(x) # On trouve quelque chose proche de 0
2) Soit y le vecteur tel que yi = x2i pour tout 1 ≤ i ≤ 100 000. Calculer y. Quelle est la moyenne
empirique de y?
y=x^2
mean(y) # On trouve quelque chose proche de 1
y=NULL
n=length(x)
for (i in 1:n)
{
y[i]=x[i]^2
}
mean(y)
Exercice 2
1 2 1 2 0 1
Soit A = , B = et C = . Résoudre l’équation matricielle CXA2 = B
3 3 −1 0 −1 0
d’inconnue X.
La solution est:
X = C −1 B((A2 )−1 )
A=matrix(c(1,2,3,3), nr=2,byrow=T)
B=matrix(c(1,2,-1,0),nr=2, byrow=T)
C=matrix(c(0,1,-1,0),nr=2, byrow=T)
X=solve(C)%*%B%*%solve(A%*%A)
X
> X
[,1] [,2]
[1,] 1.666667 -0.8888889
[2,] -1.000000 0.6666667
Exercice 3
Ecrire une fonction mafonction qui permet de tester si une matrice donnée est de format (n, 2n), c’est
à dire si elle a deux fois plus de colonnes que de lignes. Si c’est le cas, la fonction doit retourner la
somme de la dernière colonne. Dans le cas contraire, la fonction doit afficher "Format non adéquat".
1
mafonction =function (M)
{
if(ncol(M) == 2*nrow(M))
{
total_Col = sum(M[,ncol(M)])
print(total_Col)
}
else
{
print (’Format non adequat’)
}
}
# Test
M=matrix(1:8,nr=2,nc=4)
mafonction(M) # renvoie 15
M=M[,-1]
mafonction(M) # renvoie "Format non adequat"
Exercice4
2 −4 −1
−2 −3 −4
Soit A = 0
.
7 5
−4 −6 −8
1) Ecrire un programme permettant de calculer et d’afficher tous les déterminants extraits de format
3x3 de A. Donner la valeur des déterminants extraits.
for (i in 1:4)
{
print(paste(’Le déterminant obtenu en rayant la’, i, ’e ligne est: ’,det(A[-i,])))
}
Toutes les matrices 3x3 extraites de A ont des déterminants nuls. Donc rang(A) < 3.
2) Ecrire un programme permettant de calculer tous les déterminants extraits de format 2x2 de A.
for (k in 1:3)
{
for (i in 2:4)
{
for (j in 1:(i-1))
{
print(paste(’On a supprimé les lignes : ’,i,j,’ et la colonne : ’,k))
print(det(A[c(-i,-j),-k]))
}
}
}
2
3) Conclure par rapport au rang de la matrice A. Comment peut-on retrouver ce résultat en une ligne
de code de R?
On a des matrices 2*2 extraites de A, avec des déterminants non nuls. Donc rg(A)=2. Pour le retrouver
avec R en une seule ligne de commande:
qr(A)$rank
Exercice 5
Créer une matrice A de format 6x6 telle que:
* A[i, i] = 1 pour tout 1 ≤ i ≤ 6,
* A[i, i + 1] = −1 pour tout 1 ≤ i ≤ 5,
* le reste des valeurs soit égal à 0
1) Donner le code permettant de définir A.
Acube=A%*%A%*%A
sum(diag(Acube))