Função e dados de entrada
# Função para computar o volume total de um talhão
func_vol <- function(dap, sobr, area_talhao){
altura <- exp(3.7004 - 7.6165/dap)
vol <- 0.0000599458 * dap^1.82083 * altura^0.97645
vol_ha <- vol * 1111 * sobr
vol_talhao <- vol_ha * area_talhao
return(vol_talhao)
}
# Vetores de teste
talhao_vetor <- c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10) # código do talhão
area_vetor <- c(40, 35, 42, 31, 28, 30, 40, 38, 60, 30) # área do talhão
dap_vetor <- c(19, 25, 26, 23, 25, 27, 25, 26, 24, 18) # dap do talhão
sobr_vetor <- c(90, 89, 93, 94, 92, 97, 99, 91, 85, 94) # sobrevivência no talhão
Função para pesquisar (e imprimir na tela) valores específicos em um vetor (fornecido)
fun_pesq1 <- function(vetor, valor) {
indx <- c() # aqui
existe <- "NAO"
for (i in 1:length(vetor)) {
if (vetor[i] == valor) {
indx <- c(indx, i) # aqui
#cat("Existe o número e seu índice é", i, "\n")
existe <- "SIM"
}
}
if (existe == "NAO") {
#cat("NÃO existe o número... \n")
return(-1) # aqui
} else { # aqui
return(indx) # aqui
}
}
Função para pesquisar (e armazenar os índices em um vetor) valores específicos em um vetor (resolução)
fun_pesq2 <- function(vetor, valor) {
existe <- "NAO"
indx <- vector("logical", length(vetor))
for (i in 1:length(vetor)) {
if (vetor[i] == valor) {
#cat("Existe o número e seu índice é", i, "\n")
indx[i] <- TRUE
existe <- "SIM"
}
}
if (existe == "NAO") {
#cat("NÃO existe o número... \n")
return(-1)
} else {
indices <- 1:length(vetor)
return(indices[indx])
}
}
Testar e comparar as funções