Questão 1

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

Questão 2

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

Questão 3

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

Questão 4

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