Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Hora da Prática: Estrutura de Dados

13. 
salarios = [1172, 1644, 2617, 5130, 5532, 6341, 6650, 7238, 7685, 7782, 7903]

gastos_abono = 0
funcionarios_abono_minimo = 0
maior_abono = 0
dic_abonos = {}

for salario in salarios:
    if salario * 0.1 < 200:
        abono = 200
    else:
        abono = salario * 0.1
    gastos_abono += abono

for salario in salarios:
    if salario * 0.1 < 200:
        abono = 200
    else:
        abono = salario * 0.1
    gastos_abono += abono
    dic_abonos[salario] = abono
    if abono == 200:
        funcionarios_abono_minimo += 1
    if abono > maior_abono:
        maior_abono = abono

print(f'Total de gastos com abono: {gastos_abono}')
print(f'Quantidade de funcionários com abono mínimo: {funcionarios_abono_minimo}')
14.
dados = {'Área Norte': [2819, 7236], 'Área Leste': [1440, 9492], 'Área Sul': [5969, 7496], 'Área Oeste': [14446, 49688], 'Área Centro': [22558, 45148]}

medias = {}

for area in dados.keys():
    total_especies = sum(dados[area])
    total_areas = len(dados[area])
    media = total_especies / total_areas
    medias[area] = media
    if media == max(medias.values()):
        area_maior_diversidade = area

print(f'Média de espécies por área: {medias}')
print(f'Área com maior diversidade biológica: {area_maior_diversidade}')
15.
dados = {'Setor A': [22, 26, 30, 30, 35, 38, 40, 56, 57, 65],
        'Setor B': [22, 24, 26, 33, 41, 49, 50, 54, 60, 64],
        'Setor C': [23, 26, 26, 29, 34, 35, 36, 41, 52, 56],
        'Setor D': [19, 20, 25, 27, 34, 39, 42, 44, 50, 65]}
 
total_idades = 0

for setor, idades in dados.items():

  media_idade = sum(idades) / len(idades)

  print(f'O {setor} tem a média de {media_idade}')

  total_idades += sum(idades)

media_total = total_idades / (len(idades) * len(dados))
print(f'A média de idade geral é {media_total}')


acima_media = 0

for setor, idades in dados.items():

  for id in idades:
   
    if id > media_total:
   
      acima_media += 1

print(f'{acima_media} pessoas estão acima da idade média geral')
1 resposta
solução!

Olá, tudo bem?

É isso aí! Gostei de ver que está tentando solucionar as atividades. Continue assim!

Apenas tenho um ponto de melhoria na questão 13, você está duplicando o cálculo de gastos_abono. Você está somando o abono duas vezes para cada salário. Você pode corrigir isso removendo o primeiro loop for que calcula o gastos_abono e deixar apenas o segundo loop que já faz todos os cálculos necessários. Veja como ficaria:

salarios = [1172, 1644, 2617, 5130, 5532, 6341, 6650, 7238, 7685, 7782, 7903]

gastos_abono = 0
funcionarios_abono_minimo = 0
maior_abono = 0
dic_abonos = {}

for salario in salarios:
    if salario * 0.1 < 200:
        abono = 200
    else:
        abono = salario * 0.1
    gastos_abono += abono
    dic_abonos[salario] = abono
    if abono == 200:
        funcionarios_abono_minimo += 1
    if abono > maior_abono:
        maior_abono = abono

print(f'Total de gastos com abono: {gastos_abono}')
print(f'Quantidade de funcionários com abono mínimo: {funcionarios_abono_minimo}')
print(f'Maior abono fornecido: {maior_abono}')

Espero ter ajudado e bons estudos!

Ícone de sugestão Para saber mais:

Sugestão de conteúdo para você mergulhar ainda mais sobre o tema:

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