Calcular o salário mensal final de um vendedor. As seguintes informações determinam esse valor: a) salário fixo – R$ 5000,00 b) total de vendas por ele efetuadas – R$ 20.000,00 c) percentual que ele recebe sobre o total de vendas – 5% d) INSS de 11% sobre o salário fixo. e) IR de 27% sobre o total de rendimentos.
sal_fixo = 5000
vendas = 20000
comissao = 0.05
inss = 0.11
ir = 0.27
total_rendimentos = sal_fixo + (vendas*comissao) - (sal_fixo*0.11)
salario_mensal_final = total_rendimentos - (ir*total_rendimentos)
salario_mensal_final
## [1] 3978.5
Repita o Exercício 1) calculando o salário mensal da seguinte lista abaixo. NOME DO FUNCIONÁIO SALÁRIO BASE (R\() VENDAS (R\)) IRPF (%) VENDEDOR 1 1800,00 20000,00 VENDEDOR 2 2500,00 30000,00 VENDEDOR 3 2500,00 25000,00 VENDEDOR 4 3000,00 15000,00 VENDEDOR 5 3500,00 27000,00 VENDEDOR 6 4000,00 30000,00 VENDEDOR 7 5000,00 32000,00 O valor da alíquota do IR deve ser calculado sobre o salário base, conforme os dados abaixo: Base de cálculo Alíquota Até 1.903,98 Isento De 1.903,99 até 2.826,65 7,50% De 2.826,66 até 3.751,05 15% De 3.751,06 até 4.664,68 22,50% Acima de 4.664,68 27,50%
vendedor <- c(1:7)
salario_base <- c(1800,2500,2500,3000,3500,4000,5000)
vendas <- c(20000,30000,25000,15000,27000,30000,32000)
comissao <- c(rep(0.05,7))
dados <- data.frame(vendedor,salario_base,vendas,comissao)
dados$aliquota <- ifelse(salario_base<=1903.98,0,
ifelse(salario_base<=2826.65,0.075,
ifelse(salario_base<=3751.05,0.15,
ifelse(salario_base<=4664.68,0.225,0.275))))
dados$total_rendimentos = dados$salario_base + (dados$vendas*dados$comissao) - (dados$salario_base*0.11)
dados$salario_mensal_final = dados$total_rendimentos - (dados$aliquota*dados$total_rendimentos)
dados$salario_mensal_final
## [1] 2602.000 3445.625 3214.375 2907.000 3795.250 3921.500 4386.250
Elabore um programa para efetuar o cálculo da quantidade de garrafas e de engradados de cerveja consumida por um determinado bloco durante o carnaval, considerando que 5000 foliões bebem cerca de 2 litros durante o desfile do bloco. Outras informações: • considerar que um engradado de cerveja tem 24 garrafas de 600 ml • Cada garrafa custa R$ 8,00, e que o engradado custa R$ 180,00. Qual será o lucro do comerciante considerando que: a) Ele compre as garrafas avulsas e venda cada garrafa a R$ 15,00. b) Ele compre o engradado e venda cada garrafa a R$ 15,00 (ele não pode comprar fração do engradado – arredonde para menos). c) Ele venda o copo de 500 ml a R$ 15,00 – cada copo sai a R$ 0,20. Faça uma função para o lucro
consumo_cerveja <- function(num_folioes) {
# Cálculo da quantidade de cerveja consumida
litros_cerveja <- num_folioes * 2
garrafas_cerveja <- litros_cerveja / 0.6
engradados_cerveja <- garrafas_cerveja / 24
# Cálculo do lucro com a venda de garrafas avulsas
preco_garrafa_compra <- 8
preco_garrafa_venda <- 15
lucro_garrafas <- (preco_garrafa_venda - preco_garrafa_compra) * garrafas_cerveja
# Cálculo do lucro com a venda de engradados
preco_engradado_compra <- 180
preco_engradado_venda <- 15 * 24
num_engradados <- floor(engradados_cerveja) # arredondamento para baixo
lucro_engradados <- (preco_engradado_venda - preco_engradado_compra) * num_engradados
# Cálculo do lucro com a venda de copos
preco_copo_venda <- 15
preco_copo_compra <- 0.2
num_copos <- litros_cerveja / 0.5
lucro_copos <- (preco_copo_venda - preco_copo_compra) * num_copos
# Cálculo do lucro total
lucro_total <- lucro_garrafas + lucro_engradados + lucro_copos
# Retorno dos resultados
return(list(garrafas = garrafas_cerveja, engradados = engradados_cerveja,
lucro_garrafas = lucro_garrafas, lucro_engradados = lucro_engradados,
lucro_copos = lucro_copos, lucro_total = lucro_total))
}
consumo_cerveja(1000)
## $garrafas
## [1] 3333.333
##
## $engradados
## [1] 138.8889
##
## $lucro_garrafas
## [1] 23333.33
##
## $lucro_engradados
## [1] 24840
##
## $lucro_copos
## [1] 59200
##
## $lucro_total
## [1] 107373.3
Elabore um data.frame com as seguintes informação: NOME DO ALUNO DISCIPLINA 1 DISCIPLINA 2 DISCIPLINA 3 ALUNO 1 3 10 7 ALUNO 2 4 9 8 ALUNO 3 5 8 9 ALUNO 4 6 7 10 ALUNO 5 7 6 7 ALUNO 6 8 5 8 ALUNO 7 9 4 9 Faça funções para calcular: a) A média de cada aluno (CR) b) A média de cada disciplina. c) A média final da turma. d) O aluno com média mais alta. e) A lista de alunos reprovados, por disciplina
aluno <- c(1:7)
disciplina1 <- c(3,4,5,6,7,8,9)
disciplina2 <- c(10,9,8,7,6,5,4)
disciplina3 <- c(7,8,9,10,7,8,9)
dados <- data.frame(aluno, disciplina1,disciplina2,disciplina3)
# a)
media_aluno <- function(df) {
notas <- df[, 2:4]
cr <- (dados$disciplina1+dados$disciplina2+dados$disciplina3)/3
return(cr)
}
round(media_aluno(dados),2)
## [1] 6.67 7.00 7.33 7.67 6.67 7.00 7.33
# b)
media_disciplina <- function(df) {
notas <- df[, 2:4]
media <- apply(notas, 2, mean)
return(media)
}
media_disciplina(dados)
## disciplina1 disciplina2 disciplina3
## 6.000000 7.000000 8.285714
# c)
media_turma <- function(df) {
notas <- df
media_turma <- mean(rowMeans(notas[, 2:4]))
return(media_turma)
}
media_turma(dados)
## [1] 7.095238
# d)
dados$medias_alunos <- round(media_aluno(dados),2)
dados[which(dados$medias_alunos==max(dados$medias_alunos)),]
## aluno disciplina1 disciplina2 disciplina3 medias_alunos
## 4 4 6 7 10 7.67
# e)
dados <- data.frame(aluno, disciplina1,disciplina2,disciplina3)
reprovados_disciplina <- function(df) {
notas <- df[, 2:4] # seleciona apenas as colunas de notas
reprovados <- lapply(notas, function(x) df$NOME[x < 6]) # encontra os alunos com notas abaixo de 6 em cada disciplina
nomes_disciplinas <- colnames(notas)
nomes_reprovados <- setNames(reprovados, nomes_disciplinas) # adiciona os nomes das disciplinas como nomes da lista
return(nomes_reprovados)
}
reprovados_disciplina(dados)
## $disciplina1
## NULL
##
## $disciplina2
## NULL
##
## $disciplina3
## NULL
# nenhum aluno foi reprovado