Académique Documents
Professionnel Documents
Culture Documents
SOLUTION TP no 1
C. Chesneau 1 TP no 1 : solution
Université de Caen L3
On a ainsi un vecteur logique dont les éléments sont TRUE si la valeur de l’élément z commence
à être répété (de gauche à droite),
table(z) renvoie : [1] 1 2 2 1 3 Ainsi, on obtient un vecteur dont les valeurs des éléments
précisent le nombre de fois qu’apparaissent les chiffres : 1, 2, 3, 5 et 9.
rep(z, 3) renvoie : [1] 9 3 2 5 9 2 3 9 1 9 3 2 5 9 2 3 9 1 9 3 2 5 9 2 3 9 1
On a ainsi un vecteur qui concatène 3 fois le vecteur z.
Solution 3.
1. Créer les vecteurs suivants :
(a) y0 constitué de la suite des entiers de 0 à 10 par pas de 2 :
y0 = seq(0, 10, 2)
(b) y1 constitué de tous les entiers pairs entre 1 et 18 :
y1 = seq(2, 18, 2)
(c) y2 constitué de 20 fois de suite la valeur 4 :
y2 = rep(4, 20)
(d) y3 constitué de 20 nombres entre 0 et 10 :
y3 = seq(0, 10, length.out = 20)
2. Extraire de y3 :
C. Chesneau 2 TP no 1 : solution
Université de Caen L3
Solution 4. Construire une matrice comportant 9 lignes et 9 colonnes avec des 0 sur la diagonale
et des 1 partout ailleurs (on pourra utiliser la commande diag):
M = matrix(1, 9, 9) - diag(9)
M
Solution 5.
1. Créer un vecteur x = (x1 , . . . , x11 ) contenant les réels compris entre 0 et 1 par pas de 0.1 :
x = seq(0, 1, 0.1)
2. Afficher la longueur de x :
length(x) renvoie : [1] 11.
4. Tracer la courbe rejoignant les points (x1 , y1 ), . . . , (x11 , y11 ) avec la commande plot :
plot(x, y, type = "l", col = "red")
C. Chesneau 3 TP no 1 : solution
Université de Caen L3
3. Combien de chances a-t-on de gagner le super jackpot à l’euromillion ? (donc d’avoir 5 bons
numéros parmi 49, et 2 bons numéros étoilés parmi 10) :
Pour les 5 numéros parmi 49, il y a 49 les 2 numéros parmi 10, 10
5
possibilités et, pour 2
possibilités. Donc le nombre total de possibilités est 49 × 10
5 2
, lequel se calcule avec la
commande
choose(49, 5) * choose(10, 2)
qui renvoie : [1] 85809780
Ainsi, la probabilité de gagner est 1/85809780 = 1.165368e − 08.
Ou alors, directement: 1/(choose(49, 5) * choose(10, 2)) ou avec la fonction factorial
:
1/(factorial(49) / (factorial(5) * factorial(49 - 5)) * factorial(10) / (factorial(2) * factorial(10 -
2))),
a b
avec (a, b) ∈ {0, . . . , 9}2 en sachant qu’un domino reste le même si on le tourne à 180 degrés
(par exemple, 8 = 8 (c’est un, et un seul domino)). Déterminer le nombre de
pièces différentes que contient un jeu complet de dominos.
Le nombre de dominos ayant des nombres de points différents est égal au nombre de combi-
naisons de 2 éléments parmi 10, donc 10
2
. Il y a 10 dominos ayant les
deux mêmes nombres
10
de points. Par conséquent, le nombre de dominos différents est 2 + 10, lequel se calcule
avec la commande choose(10, 2) + 10 qui renvoie : [1] 55.
Solution 7. On souhaite calculer avec R les 100 premiers termes de suite de Fibbonacci :
un+2 = un+1 + un ,
avec u0 = 0.
1. Créer un script dans le menu “fichier ->Nouveau script”, le nommer “fib.R” : OK,
2. Sur la première ligne: mettre en commentaire (la ligne commence par ]) le nom du pro-
gramme, par exemple ] suite de Fibonnacci : OK,
C. Chesneau 4 TP no 1 : solution
Université de Caen L3
C. Chesneau 5 TP no 1 : solution