Pregunta 1

Realiza los siguientes productos de matrices en R:

  1. \[A \cdot B\]
  2. \[B \cdot A\]
  3. \[(A \cdot B)^t\]
  4. \[B^t \cdot A\]
  5. \[(A \cdot B)^{-1}\]
  6. \[A^{-1} \cdot B^t\]

Donde:

\[A = \begin{pmatrix} 1 & 2 & 3 & 4 \\ 4 & 3 & 2 & 1 \\ 0 & 1 & 0 & 2 \\ 3 & 0 & 4 & 0 \end{pmatrix}\]

\[B = \begin{pmatrix} 4 & 3 & 2 & 1 \\ 0 & 3 & 0 & 4 \\ 1 & 2 & 3 & 4 \\ 0 & 1 & 0 & 2 \end{pmatrix}\]

Redacta todos tus resultados y utiliza LaTeX cuando sea necesario.

# Definir las matrices A y B
A <- matrix(c(1, 2, 3, 4, 4, 3, 2, 1, 0, 1, 0, 2, 3, 0, 4, 0), nrow = 4, byrow = TRUE)
B <- matrix(c(4, 3, 2, 1, 0, 3, 0, 4, 1, 2, 3, 4, 0, 1, 0, 2), nrow = 4, byrow = TRUE)

# Calcular los productos de matrices
AB <- A %*% B
BA <- B %*% A
AB_t <- t(AB)
Bt_A <- t(B) %*% A
AB_inv <- solve(AB)
A_inv_Bt <- solve(A) %*% t(B)

# Mostrar los resultados
cat("A · B:\n")
## A · B:
print(AB)
##      [,1] [,2] [,3] [,4]
## [1,]    7   19   11   29
## [2,]   18   26   14   26
## [3,]    0    5    0    8
## [4,]   16   17   18   19
cat("\nB · A:\n")
## 
## B · A:
print(BA)
##      [,1] [,2] [,3] [,4]
## [1,]   19   19   22   23
## [2,]   24    9   22    3
## [3,]   21   11   23   12
## [4,]   10    3   10    1
cat("\n(A · B)^t:\n")
## 
## (A · B)^t:
print(AB_t)
##      [,1] [,2] [,3] [,4]
## [1,]    7   18    0   16
## [2,]   19   26    5   17
## [3,]   11   14    0   18
## [4,]   29   26    8   19
cat("\nB^t · A:\n")
## 
## B^t · A:
print(Bt_A)
##      [,1] [,2] [,3] [,4]
## [1,]    4    9   12   18
## [2,]   18   17   19   19
## [3,]    2    7    6   14
## [4,]   23   18   19   16
cat("\n(A · B)^{-1}:\n")
## 
## (A · B)^{-1}:
print(AB_inv)
##       [,1]  [,2]  [,3]  [,4]
## [1,] -1.66 -0.65  4.52  1.52
## [2,]  1.60  0.80 -4.60 -1.60
## [3,]  1.02  0.35 -2.84 -0.84
## [4,] -1.00 -0.50  3.00  1.00
cat("\nA^{-1} · B^t:\n")
## 
## A^{-1} · B^t:
print(A_inv_Bt)
##               [,1] [,2] [,3] [,4]
## [1,]  6.000000e-01  2.4  6.4  1.2
## [2,] -3.330669e-16 -2.0 -7.0 -1.2
## [3,] -2.000000e-01 -0.8 -3.8 -0.4
## [4,]  1.000000e+00  1.0  5.0  0.6

Pregunta 2

Considera en un vector los números de tu DNI (puedes inventártelos) y llámalo dni. Por ejemplo, si tu DNI es 97446691, tu vector será dni = (9,7,4,4,6,6,9,1). Define el vector en R. Calcula con R el vector dni al cuadrado, la raíz cuadrada del vector dni y, por último, la suma de todas las cifras del vector dni. Redacta todos tus resultados y utiliza LaTeX cuando pertoque.

# Definir el vector dni
dni <- c(9, 7, 4, 4, 6, 6, 9, 1)

# Calcular el vector dni al cuadrado
dni_cuadrado <- dni^2

# Calcular la raíz cuadrada del vector dni
dni_raiz_cuadrada <- sqrt(dni)

# Calcular la suma de todas las cifras del vector dni
suma_dni <- sum(dni)

# Mostrar los resultados
cat("Vector dni al cuadrado:\n")
## Vector dni al cuadrado:
print(dni_cuadrado)
## [1] 81 49 16 16 36 36 81  1
cat("\nRaíz cuadrada del vector dni:\n")
## 
## Raíz cuadrada del vector dni:
print(dni_raiz_cuadrada)
## [1] 3.000000 2.645751 2.000000 2.000000 2.449490 2.449490 3.000000 1.000000
cat("\nSuma de todas las cifras del vector dni:\n")
## 
## Suma de todas las cifras del vector dni:
print(suma_dni)
## [1] 46

Pregunta 3

Considera el vector de las letras de tu nombre y apellido. Llámalo name. Por ejemplo:

\[\text{name} = (B, E, L, I, S, A, R, I, O, B, U, I, T, R, A, G, O)\]

Define dicho vector en R. Calcula el subvector que solo contenga tu nombre. Calcula también el subvector que contenga solo tu apellido. Ordénalo alfabéticamente. Crea una matriz con este vector.

# Definir el vector name
name <- c("B", "E", "L", "I", "S", "A", "R", "I", "O", "B", "U", "I", "T", "R", "A", "G", "O")

# Calcular el subvector que solo contenga el nombre
nombre <- name[1:8]

# Calcular el subvector que solo contenga el apellido
apellido <- name[9:17]

# Ordenar alfabéticamente el vector name
name_ordenado <- sort(name)

# Crear una matriz con el vector name
name_matriz <- matrix(name, nrow = 4, byrow = TRUE)
## Warning in matrix(name, nrow = 4, byrow = TRUE): data length [17] is not a
## sub-multiple or multiple of the number of rows [4]
# Mostrar los resultados
cat("Subvector del nombre:\n")
## Subvector del nombre:
print(nombre)
## [1] "B" "E" "L" "I" "S" "A" "R" "I"
cat("\nSubvector del apellido:\n")
## 
## Subvector del apellido:
print(apellido)
## [1] "O" "B" "U" "I" "T" "R" "A" "G" "O"
cat("\nVector name ordenado alfabéticamente:\n")
## 
## Vector name ordenado alfabéticamente:
print(name_ordenado)
##  [1] "A" "A" "B" "B" "E" "G" "I" "I" "I" "L" "O" "O" "R" "R" "S" "T" "U"
cat("\nMatriz creada con el vector name:\n")
## 
## Matriz creada con el vector name:
print(name_matriz)
##      [,1] [,2] [,3] [,4] [,5]
## [1,] "B"  "E"  "L"  "I"  "S" 
## [2,] "A"  "R"  "I"  "O"  "B" 
## [3,] "U"  "I"  "T"  "R"  "A" 
## [4,] "G"  "O"  "B"  "E"  "L"