Exercicío 1 1) Dadas 3 variáveis com valores numéricos, apresentar o resultado da soma das combinações dois a dois destes três números. Por exemplo, variáveis A, B e C, mostrar A + B, A + C, B + C.

A <- 2
B <- 3
C <- 4

A+B
## [1] 5
A+C
## [1] 6
B+C
## [1] 7

Exercicío 2 2) Definir duas variáveis A e B e trocar seus valores. Ex: Entrada: A=6 e B=8 Saída: A=8 e B=6.

A <- 6
B <- 8

Aux <- A
A <- B
B <- Aux

print (A)
## [1] 8
print (B)
## [1] 6

Exercicío 3 3) Converter uma temperatura de Fahrenheit para Centígrados. C = (F - 32) * ( 5 / 9 ).

F <- 77
C <- (F-32)*(5/9)
print (C)
## [1] 25

Exercicío 4 4) Escrever um algoritmo que defina um número X e calcule: a) X3 - 4 b) O resto da divisão de X / 3 c) X(x/3) + 2 d) Raiz quadrada de X2

x <- 5
resultado <- x^ 3-4
print (resultado)
## [1] 121
x <- 10
resto <- x%%3
print (resto)
## [1] 1
x <- 6 
resultado <- x*(x/3) + 2
print (resultado)
## [1] 14
x <- 7 
resultado <- sqrt (x^2)
print (resultado)
## [1] 7

Exercicío 5 5) Crie um vetor numérico com os números de 1 a 10 e armazene-o em uma variável chamada “numeros”. Em seguida, imprima o vetor.

numeros <- 1:10
print (numeros)
##  [1]  1  2  3  4  5  6  7  8  9 10

Exercicío 6 6) Crie um vetor de caracteres com os nomes dos dias da semana e armazene-o em uma variável chamada “dias”. Em seguida, imprima o vetor.

dias <- c ("segunda", "terça", "quarta", "quinta","sexta","sábado","domingo")
print(dias)
## [1] "segunda" "terça"   "quarta"  "quinta"  "sexta"   "sábado"  "domingo"

Exercicío 7 7) Crie uma matriz 3x3 com os números de 1 a 9 e armazene-a em uma variável chamada “matriz”. Em seguida, imprima a matriz.

matriz <- matrix(1:9, nrow = 3, ncol =3)
print (matriz)
##      [,1] [,2] [,3]
## [1,]    1    4    7
## [2,]    2    5    8
## [3,]    3    6    9
  1. Crie um data-frame com as informações de 3 pessoas: nome (caracter), idade (numérico) e cidade natal (caracter). Armazene o data-frame em uma variável chamada “pessoas” e imprima
pessoas <- data.frame (
  nome = c("Joao", "Thacila", "Lucas"),
  idade = c(28, 27, 26), 
  cidade_natal = c("Campos dos Goytacazes", "Rio de Janeiro", "Sao Paulo")
  
)
print (pessoas)
##      nome idade          cidade_natal
## 1    Joao    28 Campos dos Goytacazes
## 2 Thacila    27        Rio de Janeiro
## 3   Lucas    26             Sao Paulo
  1. Limpe as variáveis que estão no sistema e em seguida crie 3 variáveis, x, y e z e atribua valores numéricos para elas. Em seguida realize comparações entre elas (utilize TODOS os operadores de comparação (<. <. >=, <=, ==, !=).
"rm(list = 1s())"
## [1] "rm(list = 1s())"
x <- 3
y <- 2
z <- 5
cat("x < y:", x < y, "\n")
## x < y: FALSE
cat("y < z", y < z, "\n")
## y < z TRUE
cat("x > z", y > z, "\n")
## x > z FALSE
cat("z > x", z > x, "\n")
## z > x TRUE
cat("x >= z:", x >= z, "\n")
## x >= z: FALSE
cat("y >= x:", y >= x, "\n")
## y >= x: FALSE
cat("x <= y:", x <= y, "\n")
## x <= y: FALSE
cat("z <= y:", z <= y, "\n")
## z <= y: FALSE
cat("x == z:", x == z, "\n")
## x == z: FALSE
cat("y == z:", y == z, "\n")
## y == z: FALSE
cat("x != y:", x != y, "\n")
## x != y: TRUE
cat("z != x:", z != x, "\n")
## z != x: TRUE
  1. Limpe as variáveis que estão no sistema e em seguida crie 3 variáveis, “rua”, “numero” e “bairro” e atribua valores (texto) para elas. Em seguida concatene essas variáveis em uma terceira chamada “endereco”.
"rm(list = 1s())"
## [1] "rm(list = 1s())"
rua <- "rua 1"
numero <- "26"
bairro <- "meier"

endereço <- paste( rua, numero, bairro, sep= ",")
print(endereço)
## [1] "rua 1,26,meier"
  1. Elabore um algoritmo que:
  1. Crie um vetor com uma sequência de 10 números.
  2. Faça um loop para calcular a soma dos números do vetor.
  3. Utilize o comando “vetor <- c(1:10)” para criar o vetor.
  1. Utilize o comando “for( i in 1:10) { …comandos}” para realizar a soma.
  2. Referencie os valores do vetor com o comando: “vetor[i]”, onde “i” é o índice referência (número) Ex. vetor: 1,2,3,4,5,6,7,8,9,10 | Soma dos números = 55.
vetor <- c(1:10)
print (vetor)
##  [1]  1  2  3  4  5  6  7  8  9 10
soma <- 0

vetor <- c (1:10)

for(i in 1:10) {
  soma <- soma + vetor [i]
}

vetor <- c(1:10)
soma <- 0
for (i in 1:10){
soma <- soma + vetor [i]  
}
print (paste("na posicao", i, "o valor e", vetor [i]))
## [1] "na posicao 10 o valor e 10"
print (paste("soma dos numeros do vetor e", vetor[i]))
## [1] "soma dos numeros do vetor e 10"
  1. A partir do exercício anterior, faça a média dos valores contidos no vetor.
vetor <- c(1:10)
soma <- 0
for(i in 1:10){
  soma <- soma + vetor[i]
}
media <- soma / length (vetor)
print(paste("soma dos numeros =", soma))
## [1] "soma dos numeros = 55"
print(paste ("Media dos numeros=", media))
## [1] "Media dos numeros= 5.5"
  1. Crie duas variáveis, x e y. Compare se x é maior que y. Se for, imprima “x é maior que y”, se não for, imprima “y é maior que x”.
  1. A sintaxe do comando de comparação é: if (x > y) {comandos…} else {comandos}
  2. O comando print(“texto ou variável”) imprime a resposta na tela.
x <- 20
y <- 15

if(x > y){
  print("x e maior que y")

}else{
  print ("y e maior do que x")
}
## [1] "x e maior que y"
print (x)
## [1] 20
print (y)
## [1] 15
  1. Repita o exercício “13)” realizando os seguintes ajustes:
  1. Substitua o sinal de maior (“>”) pelo de menor ou igual (“<=”) e ajuste dos dizeres da resposta.
x <- 12
y <- 20

if (x <= y) {
  print ("x e menor ou igual a y")
}else{
  orint ("y e menor que x")
}
## [1] "x e menor ou igual a y"
  1. A partir do exercício “11)”, faça a soma somente dos números pares.
  1. Utilize o comando “%%” para identificar o resto da divisão. Ex: “5%%2”, cinco dividido por dois terá como resto “1”. Ou seja, o resultado dessa operação será “1”.
  2. Utilize o comando de decisão “if” para saber se o número é par (o resto é zero) ou ímpar (o resto é 1).
  3. Crie uma variável auxiliara para guardar o resultado da soma.
vetor <- (1:10)
soma_pares <- 0
for (i in 1:10){
  if (vetor[i] %% 2==0 ) { # verifica se o numero e par
  soma_pares <- soma_pares + vetor[i]
    }
}
print (paste("soma dos numeros pares =", soma_pares))
## [1] "soma dos numeros pares = 30"
vetor <- c(1:10)

soma_pares <- 0
soma_impares <- 0

for(i in 1:10) {
  if(vetor[i] %% 2 == 0) {
    soma_pares <- soma_pares + vetor[i]
    print(paste(vetor[i], "é par"))
  }else{
    soma_impares <- soma_impares + vetor[i]
    print(paste(vetor[i], "é impar"))
  }
}
## [1] "1 é impar"
## [1] "2 é par"
## [1] "3 é impar"
## [1] "4 é par"
## [1] "5 é impar"
## [1] "6 é par"
## [1] "7 é impar"
## [1] "8 é par"
## [1] "9 é impar"
## [1] "10 é par"
print(paste("soma dos numeros pares=", soma_pares))
## [1] "soma dos numeros pares= 30"
print(paste("soma dos numeros impares=", soma_impares))
## [1] "soma dos numeros impares= 25"
vetor <- c(1:10)

auxiliar <- 0

for(i in 1:10) {
  if(vetor[i] %% 2 == 0){
    auxiliar <- auxiliar + vetor[i]
  }
}
print(paste("soma dos numeros pares =", auxiliar))
## [1] "soma dos numeros pares = 30"
  1. Faça um algoritmo que calcule e imprima o fatorial de um número inteiro.
n <- 10
fatorial <- 1
for(i in 1:n){
  fatorial <- fatorial * i
}
print(paste("fatorial de", n, "=", fatorial))
## [1] "fatorial de 10 = 3628800"
  1. Crie uma matriz 4x4.
  1. Uma matriz no R comporta somente um tipo de dado (número, texto ou boleano).
  2. O comando para criar a matriz é “x <- matrix(data = 1, nrow = 4, ncol = 4, byrow = TRUE)”
matriz <- matrix(1:20, nrow = 4, ncol = 4)
## Warning in matrix(1:20, nrow = 4, ncol = 4): data length differs from size of
## matrix: [20 != 4 x 4]
print (matriz)
##      [,1] [,2] [,3] [,4]
## [1,]    1    5    9   13
## [2,]    2    6   10   14
## [3,]    3    7   11   15
## [4,]    4    8   12   16
x <- matrix(data = 1:20, nrow = 4, ncol = 4, byrow = TRUE)
## Warning in matrix(data = 1:20, nrow = 4, ncol = 4, byrow = TRUE): data length
## differs from size of matrix: [20 != 4 x 4]
print (x)
##      [,1] [,2] [,3] [,4]
## [1,]    1    2    3    4
## [2,]    5    6    7    8
## [3,]    9   10   11   12
## [4,]   13   14   15   16
  1. Agora, crie uma matriz com a sequência de 1 a 16.
matriz <- matrix(data = 1:20, nrow = 4, ncol = 4, byrow = TRUE)
## Warning in matrix(data = 1:20, nrow = 4, ncol = 4, byrow = TRUE): data length
## differs from size of matrix: [20 != 4 x 4]
print(matriz)
##      [,1] [,2] [,3] [,4]
## [1,]    1    2    3    4
## [2,]    5    6    7    8
## [3,]    9   10   11   12
## [4,]   13   14   15   16
  1. Transforme essa matriz em um data.frame
  1. Um data.frame é uma estrutura de dados similar a matriz que pode conter dados diferentes em suas variáveis.
  2. Lembre-se que também chamamos as colunas de variáveis e as linhas de registros.
  3. Uma variável (coluna) não pode conter dados diferentes. Ou todas as linhas dessa variável são números, ou todas são texto, ou ainda, boleanos.
  4. Utilize o comando “df <- as.data.frame(x)”
matriz <- matrix(data = 1:20, nrow = 4, ncol = 4, byrow = TRUE)
## Warning in matrix(data = 1:20, nrow = 4, ncol = 4, byrow = TRUE): data length
## differs from size of matrix: [20 != 4 x 4]
df <- as.data.frame(matriz)
print(df)
##   V1 V2 V3 V4
## 1  1  2  3  4
## 2  5  6  7  8
## 3  9 10 11 12
## 4 13 14 15 16
matriz <- matrix(data = 1:20, nrow = 4, ncol = 4, byrow = TRUE)
## Warning in matrix(data = 1:20, nrow = 4, ncol = 4, byrow = TRUE): data length
## differs from size of matrix: [20 != 4 x 4]
df <- as.data.frame(matriz)
print(df)
##   V1 V2 V3 V4
## 1  1  2  3  4
## 2  5  6  7  8
## 3  9 10 11 12
## 4 13 14 15 16
df <- data.frame(
  nome = c("Luiza", "Luiz", "Marcos", "Vivian"),
  idade = c(30, 35, 26, 45),
  ativo = c(TRUE, FALSE, TRUE, FALSE)
)
print(df)
##     nome idade ativo
## 1  Luiza    30  TRUE
## 2   Luiz    35 FALSE
## 3 Marcos    26  TRUE
## 4 Vivian    45 FALSE
x <- matrix(data = 1:20, nrow = 4, ncol = 4, byrow = TRUE)
## Warning in matrix(data = 1:20, nrow = 4, ncol = 4, byrow = TRUE): data length
## differs from size of matrix: [20 != 4 x 4]
df <- as.data.frame (x)
print(df)
##   V1 V2 V3 V4
## 1  1  2  3  4
## 2  5  6  7  8
## 3  9 10 11 12
## 4 13 14 15 16
  1. Utilizando os comandos de repetição e decisão, calcule:
  1. a média de uma coluna da matriz do exercício “18)”.
  2. A média de todas as colunas da matriz do exercício “18)”.
  3. A média de todas as linhas da matriz do exercício “18)”.
  4. A média dos números pares de todas as colunas da matriz do exercício “18)”.
  5. A média dos números ímpares de todas as linhas da matriz do exercício “18)”.
  6. A soma da diagonal principal da matriz.
  7. A soma da diagonal secundária da matriz (desafio).
matriz <- matrix(1:20, nrow = 4, ncol = 4, byrow =  TRUE)
## Warning in matrix(1:20, nrow = 4, ncol = 4, byrow = TRUE): data length differs
## from size of matrix: [20 != 4 x 4]
media_coluna3 <- mean(matriz[,3])
print(paste("media da coluna 3 =", media_coluna3 ))
## [1] "media da coluna 3 = 9"
for(j in 1:ncol(matriz)) {
  print(paste("media da coluna", j, "=", mean(matriz[,j])))
}
## [1] "media da coluna 1 = 7"
## [1] "media da coluna 2 = 8"
## [1] "media da coluna 3 = 9"
## [1] "media da coluna 4 = 10"
for(i in 1:nrow(matriz)){
  print(paste("media da linha", i, "=", mean(matriz[i,j])))
}
## [1] "media da linha 1 = 4"
## [1] "media da linha 2 = 8"
## [1] "media da linha 3 = 12"
## [1] "media da linha 4 = 16"
for(i in 1:nrow(matriz)){
  pares <- matriz[,j][matriz[,j] %% 2==0]
  print(paste("media dos pares da coluna", j, "=", mean(pares)))
}
## [1] "media dos pares da coluna 4 = 10"
## [1] "media dos pares da coluna 4 = 10"
## [1] "media dos pares da coluna 4 = 10"
## [1] "media dos pares da coluna 4 = 10"
for(i in 1:nrow(matriz)){
  impares <- matriz[,i][matriz[,i] %% 2==1]
  print(paste("media dos impares da linha", j, "=", mean(impares)))
}
## [1] "media dos impares da linha 4 = 7"
## [1] "media dos impares da linha 4 = NaN"
## [1] "media dos impares da linha 4 = 9"
## [1] "media dos impares da linha 4 = NaN"
soma_diag_principal <- sum(diag(matriz))
print(paste("soma da diagonal principal =", soma_diag_principal))
## [1] "soma da diagonal principal = 34"
soma_diag_secundaria <- sum(matriz[row(matriz) + col(matriz) == nrow (matriz) + 1])
print(paste("soma da diagonal secundaria =", soma_diag_secundaria))
## [1] "soma da diagonal secundaria = 34"
  1. Repita o exercício “20)” com os dados do data.frame do exercício “18)”.
x <- matrix(data = 1:20, nrow = 4, ncol = 4, byrow = TRUE)
## Warning in matrix(data = 1:20, nrow = 4, ncol = 4, byrow = TRUE): data length
## differs from size of matrix: [20 != 4 x 4]
df <- as.data.frame (x)
print (df)
##   V1 V2 V3 V4
## 1  1  2  3  4
## 2  5  6  7  8
## 3  9 10 11 12
## 4 13 14 15 16
  1. Crie um loop for que imprime os números de 1 a 10.
for(i in 1:10) {
  print(i)
}
## [1] 1
## [1] 2
## [1] 3
## [1] 4
## [1] 5
## [1] 6
## [1] 7
## [1] 8
## [1] 9
## [1] 10
for(i in 1:10){
  cat(i,"\n")
}
## 1 
## 2 
## 3 
## 4 
## 5 
## 6 
## 7 
## 8 
## 9 
## 10
  1. Crie um vetor numérico com os números de 1 a 100. Em seguida, crie um novo vetor que contenha apenas os números pares do vetor original.
vetor <- 1:100
pares <- vetor[vetor %% 2 == 0]
print("vetor original:")
## [1] "vetor original:"
print(vetor)
##   [1]   1   2   3   4   5   6   7   8   9  10  11  12  13  14  15  16  17  18
##  [19]  19  20  21  22  23  24  25  26  27  28  29  30  31  32  33  34  35  36
##  [37]  37  38  39  40  41  42  43  44  45  46  47  48  49  50  51  52  53  54
##  [55]  55  56  57  58  59  60  61  62  63  64  65  66  67  68  69  70  71  72
##  [73]  73  74  75  76  77  78  79  80  81  82  83  84  85  86  87  88  89  90
##  [91]  91  92  93  94  95  96  97  98  99 100
print(pares)
##  [1]   2   4   6   8  10  12  14  16  18  20  22  24  26  28  30  32  34  36  38
## [20]  40  42  44  46  48  50  52  54  56  58  60  62  64  66  68  70  72  74  76
## [39]  78  80  82  84  86  88  90  92  94  96  98 100
  1. Crie uma função chamada “maior_elemento” que recebe um vetor numérico como argumento e retorna o maior elemento do vetor. Em seguida, teste a função com o vetor c(10, 5, 8, 2, 20, 15).
maior_elemento <- function(vetor) {
  return (max(vetor))
  teste <- c(10, 5, 8, 2, 20,15)
  resultado <- maior_elemento(teste)
  print(paste("o maior elemento do vetor e:", resiltado))
}