1
resposta

Variável Númérica - Média salarial ponderada

Quando falamos sobre variáveis numéricas em Python, podemos limitar nossa análise aos tipos inteiro e float. Podemos manipulá-las para realizar cálculos aritméticos. A partir disso, temos uma situação – problema a resolver na nossa instituição de ensino.

Recebemos uma tabela com informações de empregos quanto ao cargo, quantidade de pessoas empregadas e o salário correspondente.

Cargo Quantidade Salário
Segurança 5 3000
Docente 16 6000
Diretoria 1 12500
Cinco pessoas trabalham como seguranças e recebem um salário de 3 mil reais. Dezesseis pessoas trabalham como docentes e recebem um salário de 6 mil reais. Por fim, temos uma pessoa que trabalha na diretoria e seu salário é de 12 mil e 500 reais.

Precisamos trabalhar com esses dados fornecendo:

A quantidade total de empregados;
A diferença entre o salário mais baixo e mais alto;
A média ponderada da faixa salarial da escola.
É possível fazer esses cálculos matemáticos com Python. O primeiro passo, no entanto, é declarar todas essas informações, armazená-las em variáveis, assim poderemos manipulá-las.

Já existe um código salvo na célula do notebook, que serve para criar a variável e armazenar o valor: CÉLULA NÃO ENCONTRADA!

q_seguranca = 5
s_seguranca = 3000

q_docente = 16
s_docente = 6000

q_diretoria = 1
s_diretoria = 12500

A primeira variável é a q_seguranca, sendo que q se refere a quantidade de pessoas com cargo de segurança. Depois, temos s_seguranca, sendo que s se refere a salário correspondente ao cargo de segurança.

Em seguida, temos q_docente igual a 16, que se refere a quantidade de pessoas docentes. E s_docente, isto é, "salário docente" igual a 6 mil reais.

Por fim, temos q_diretoria, que se refere a quantidade de pessoas no cargo de diretoria, igual a 1. E s_diretoria igual a 12 mil e 500. Para salvar todos esses valores, basta apertar "Shift + Enter". Agora, podemos manipular essas variáveis.

O primeiro pedido foi a quantidade total de empregados. Para isso, podemos executar uma soma simples das variáveis q_seguranca, q_docente e q_diretoria.

total_empregados = q_seguranca + q_docente + q_diretoria

Estamos criando uma nova variável chamada total_empregados, referente à quantidade total de empregados. Essa variável será igual a soma das variáveis da quantidade de pessoas em cada cargo da escola. Lembrando que o sinal de "+ (mais)" que temos no teclado também pode ser usado para somar variáveis em Python.

Apertaremos "Enter" e escreveremos total_empregados'.

total_empregados = q_seguranca + q_docente + q_diretoria
total_empregados

Com "Shift + Enter" visualizaremos o resultado que é 22, isto é, 22 pessoas empregadas. Vamos para a segunda tarefa que é a diferença entre o salário mais baixo e mais alto. Sabemos que o menor salário é o de segurança e o maior, de diretoria. Podemos utilizar o sinal de "menos (-)" para calcular essa diferença.

diferenca_salario = s_diretoria - s_seguranca

Temos diferenca_salario, variável que armazenará a subtração, igual ao salário da diretoria menos o salário da segurança. Com isso, obteremos a diferença salarial. Para observarmos essa variável, basta escrever diferenca_salario e apertar "Shift + Enter".

diferenca_salario = s_diretoria - s_seguranca
diferenca_salario

O resultado é 9500. Por fim, calcularemos a média ponderada da faixa salarial da escola. Para isso, trabalharemos com multiplicação e divisão. O operador da multiplicação é o sinal de "asterisco (*)". Este sinal indica multiplicação entre variáveis numéricas.

Já o sinal de "barra (/)" indica a divisão entre variáveis numéricas.

media = (q_seguranca*s_seguranca + q_docente*s_docente + q_diretoria*s_diretoria) / (total_empregados)

Começamos com a variável media. Em seguida, preparamos o numerador da divisão. Como o numerador é composto por um conjunto de cálculos, vamos delimitá-lo entre parênteses, assim, identificaremos os fatores da divisão (numerador e denominador).

Para o numerador, faremos a quantidade de seguranças vezes o salário de seguranças. Mais, quantidade de docentes vezes o salário de docentes. Mais, a quantidade de diretoria, vezes o salário de diretoria. Este é o numerador para o cálculo da média ponderada:

q_seguranca*s_seguranca + q_docente*s_docente + q_diretoria*s_diretoria

Para prepararmos o denominador, fora dos parênteses, colocaremos a barra, indicando divisão, e, entre parênteses, o total de empregados, que é a quantidade total de pessoas empregadas e que calculamos anteriormente. Este é o denominador para o cálculo da média ponderada:

total_empregados

Por fim, na outra linha, escreveremos media e apertaremos "Shift + Enter".

media = (q_seguranca*s_seguranca + q_docente*s_docente + q_diretoria*s_diretoria) / (total_empregados)
media

Com isso, obteremos a média salarial que é 5613.636363636364. Assim, conseguimos calcular tudo que a equipe de dados nos pediu.

1 resposta

Oi, Giovany! Como vai?

Agradeço por compartilhar sua explicação com a comunidade Alura.

Sobre variáveis numéricas, média salarial ponderada, quantidade total de empregados e diferença entre salários, você construiu uma solução bem estruturada e alinhada com o problema proposto.

A separação entre variáveis de quantidade (q_) e salário (s_) deixou o código mais claro e facilitou o entendimento dos cálculos. Além disso, o uso correto dos operadores aritméticos e dos parênteses na média ponderada mostra que você compreendeu bem a lógica matemática por trás da solução, o que é um ponto importante no início dos estudos com dados.

Uma dica interessante para o futuro é organizar esses dados em listas e utilizar funções como sum() para tornar o código mais escalável. Veja este exemplo:


quantidades = [5, 16, 1]
salarios = [3000, 6000, 12500]

total_empregados = sum(quantidades)

soma_ponderada = sum(q * s for q, s in zip(quantidades, salarios))

media = soma_ponderada / total_empregados

print(media)

Esse codigo usa zip() para combinar listas e calcular a media ponderada de forma dinamica, facilitando manutencao e expansao do codigo.

🤔 Como você costuma organizar seus códigos para deixá-los mais fáceis de manter e evoluir com o tempo?

Conteúdo relacionado:
ARTIGO
zip

O link está em inglês, mas você poderá utilizar a tradução automática do navegador

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!