#Chapitre 1 : solution des exercices
# Supplement en ligne, solution exercice 1.1
# q1
maVariable <- 10
maVariable
## [1] 10
# q2
str(maVariable)
## num 10
# q3
maVariable * 2
## [1] 20
# q4
maVariable * maVariable
## [1] 100
# q5
maVariable <- maVariable + 1
maVariable
## [1] 11
# q6
maVariable2 <- NULL
maVariable2
## NULL
# q7
str(maVariable2)
## NULL
# q8
maVariable3 <- "Hello World"
maVariable3
## [1] "Hello World"
# q9
str(maVariable3)
## chr "Hello World"
# Supplement en ligne, solution exercice 1.2
# q1
1:10
## [1] 1 2 3 4 5 6 7 8 9 10
# q2
a <- 1:10
a
## [1] 1 2 3 4 5 6 7 8 9 10
# q3, avec RStudio ou avec la fonction str
str(a)
## int [1:10] 1 2 3 4 5 6 7 8 9 10
# q4
a+a
## [1] 2 4 6 8 10 12 14 16 18 20
# q5. Oui car a est un vecteur contenant des nombres.
10*a
## [1] 10 20 30 40 50 60 70 80 90 100
# q6
a>5
## [1] FALSE FALSE FALSE FALSE FALSE TRUE TRUE TRUE TRUE TRUE
# q7
a[a>5]
## [1] 6 7 8 9 10
# q8
b <- 5:8
# q9
b[1]
## [1] 5
b[4]
## [1] 8
b[5]
## [1] NA
# Ou d'un seul coup
b[c(1,4,5)]
## [1] 5 8 NA
# Comme il n'y a pas de cinquieme element dans b, R affiche NA pour Not Available, ce qui est logique puisqu'il n'y a rien comme valeur.
# q10
b[7]<-9
b
## [1] 5 6 7 8 NA NA 9
# Comme b n'a que quatre elements, R affecte la valeur NA aux cinquiemes et sixiemes elements de b puis la valeur 9 au septieme element de b.
# q11
seq(5,30,by=5)
## [1] 5 10 15 20 25 30
# Supplement en ligne, solution exercice 1.3
# q1
f <- function(x){return ((5*x^5)/4)}
f
## function(x){return ((5*x^5)/4)}
str(f)
## function (x)
## - attr(*, "srcref")= 'srcref' int [1:8] 61 6 61 36 6 36 61 61
## ..- attr(*, "srcfile")=Classes 'srcfilecopy', 'srcfile' <environment: 0x7fd9ff1a03a0>
# q2
f(3)
## [1] 303.75
# q3
# Avec la fonction curve
curve(f,from=-10,to=10)
# Avec la fonction plot qui fait appel \u00e0 la fonction curve lorsqu'elle est appliquee \u00e0 un objet de classe fonction
plot(f,xlim=(c(-10,10)))
# q4
g <- function(x,a) { return (a*x^2) }
g
## function(x,a) { return (a*x^2) }
# Supplement en ligne, solution exercice 1.4
for (i in 1:5) {print("Hello world")}
## [1] "Hello world"
## [1] "Hello world"
## [1] "Hello world"
## [1] "Hello world"
## [1] "Hello world"