Práca s vektormi

Na ukážku využitia operácií s vektormi som zvolila prácu v trojuholníku

# zadefinovanie vektorov - vrcholov trojuholníka
A <- c(1, 2)   
B <- c(5, 3)   
C <- c(3, 7) 
# vektorové strany:
AB <- B - A
BC <- C - B
CA <- A - C
AB; BC; CA
## [1] 4 1
## [1] -2  4
## [1] -2 -5
#Výpočet dĺžky vektorov
dlzka_AB <- sqrt(sum(AB^2))
dlzka_CA <- sqrt(sum(CA^2))
dlzka_BC <- sqrt(sum(BC^2))

Výpočet obvodu trojuholníka:

obvod <- dlzka_AB + dlzka_BC + dlzka_CA
cat("Obvod trojuholníka =", obvod, "\n\n") # tento príkaz vypíše text v spojení s premennou
## Obvod trojuholníka = 13.98041
#skalárne súčiny
suc_AB = A%*%B
suc_BC = B%*%C
suc_CA = C%*%A
suc_AB; suc_BC; suc_CA
##      [,1]
## [1,]   11
##      [,1]
## [1,]   36
##      [,1]
## [1,]   17

Tu ideme vypočítať obsah nášho trojuholníka pomocou vzorca: S=1/2⋅∣​AB[1]*CA[2]−AB[2]*CA[1]​∣

plot(NA, xlim = c(0,8), ylim = c(0,8), asp = 1,
     xlab = "x", ylab = "y", main = "Môj trojuholník")
polygon(x = c(A[1], B[1], C[1]), y = c(A[2], B[2], C[2]),
        border = "blue", col = rgb(0.2,0.6,1,0.2), lwd = 2)
points(rbind(A,B,C), pch = 19, col = "red")

# Práca s maticami Na vyskúšanie jednoduchých operácií s maticami si spravíme jednoduchú úlohu ako v práci v pizzerii

# 1. Matica receptov (riadky = suroviny, stĺpce = druhy pízz) 
R <- matrix(c(
  250, 270, 300,   # múka (g)
  100, 120, 200,   # syr (g)
  80,  90,  70     # rajčinová omáčka (g)
), nrow = 3, byrow = TRUE)

# 2. Počet predaných pízz 
p <- c(20, 15, 10)  # M, F, Q

# 3. Výpočet celkovej spotreby surovín 
spotreba <- R %*% p

print(spotreba)
##       [,1]
## [1,] 12050
## [2,]  5800
## [3,]  3650
# 4. Cena surovín za 1 gram 
cena <- c(0.005, 0.02, 0.01)  # € za gram (múka, syr, omáčka)
# 5. Výpočet celkovej ceny použitých surovín
celkova_cena <- sum(spotreba * cena)
cat("\nCelkova cena použitých surovín:", round(celkova_cena, 2), "EUR\n")
## 
## Celkova cena použitých surovín: 212.75 EUR
# 6. Výpočet tržby 
# Predajné ceny pízz (v eurách)
cena_pizze <- c(7.5, 8.5, 9.5)  # M, F, Q

# Tržba = súčet (počet * cena)
trzba <- sum(p * cena_pizze)
cat("\nVýpočet tržby:\n")
## 
## Výpočet tržby:
cat("Celkova tržba =", round(trzba, 2), "EUR\n")
## Celkova tržba = 372.5 EUR
# --- 7. Zisk (tržba - cena surovín) ---
zisk <- trzba - celkova_cena
cat("\nČistý zisk pizzerie =", round(zisk, 2), "EUR\n")
## 
## Čistý zisk pizzerie = 159.75 EUR
# 5. Prišlo veľa zákazníkov a potrebujeme zdvojnásobiť várky 

Vela_zakaznikov = R %*% (2 * p)
cat("Koľko surovín potrebujeme pri veľa zákazníkoch(v gramoch):\n")
## Koľko surovín potrebujeme pri veľa zákazníkoch(v gramoch):
print(Vela_zakaznikov)
##       [,1]
## [1,] 24100
## [2,] 11600
## [3,]  7300