1
resposta

Minha solução - parte 2

QUESTÃO 10)

meses = ('Janeiro','Fevereiro','Março','Abril','Maio','Junho','Julho','Agosto','Setembro','Outubro','Novembro','Dezembro')
temperaturas = []

def calculo_media_anual(temperaturas):
    temperaturas =[float(x) for x in temperaturas] #Transformo as strings em float da lista, para fazer o cálculo
    media = sum(temperaturas)/len(temperaturas)
    print(f"Média das temperaturas:{media:2.2f}")
    print("Meses com as temperaturas acima da média:")
    for item1, item2 in zip(temperaturas, meses): # leio as duas listas ao mesmo tempo, importante têm que ter a mesma qtde de itens
        if item1 > media:
            print(f"{item2} : {item1:2.2f}")

for mes in meses:
    temperatura = input(f"Entre com a temperatura média do mês de {mes}:")
    while temperatura.isalpha() == True:
        temperatura = input(f"Valor Inválido !!!Entre com a temperatura média do mês de {mes}:")
    temperaturas.append(temperatura)
print(f"Temperaturas digitadas:{temperaturas}")
calculo_media_anual(temperaturas)

QUESTÃO 11)

vendas_empresa = {'Produto A' : 300,'Produto B' : 80,'Produto C' : 60, 'Produto D' : 200, 'Produto E' : 250, 'Produto F' : 30}
produto_mais_vendido = max(vendas_empresa, key=vendas_empresa.get)
total = 0
for produto, vendas in vendas_empresa.items():
    total = total + vendas
print(f"Total de vendas : R$ {total:2_.2f}".replace(".",",").replace("_","."))
print(f'Produto mais vendido :{produto_mais_vendido}')

questão 12

tabela_de_votos = {'Design 1':1334, 'Design 2':982, 'Design 3':1751, 'Design 4':210 ,'Design 5':1811}
total_vendas = 0
design_vencedor = max(tabela_de_votos, key=tabela_de_votos.get)
valor_maximo = tabela_de_votos[design_vencedor]
for design, votos in tabela_de_votos.items():
    total_votos = total + votos
perc_votos_recebidos = valor_maximo / total_votos
print(f'Total de Votos : {total_votos}')
print(f'Design Vencedor: {design_vencedor}')
print(f'Porcentagem de votos recebidos: {perc_votos_recebidos:2.2%}')

questão 13

salarios = (1172,1644,2617,5130,5532,6341,6650,7238,7638,7685,7782,7903)
abonos=[]
abono_salarial =[]
salarios_com_abono = []
x = 0 
total = 0
for salario in salarios:
    abono = salario * 0.1
    if float(abono) < 200:
        abono = 200
        x += 1
    abonos.append(abono)
    total += abono
    salario_novo = salario + abono   
    abono_salarial.append(salario_novo)
maior_abono = max(abonos)
salarios_com_abono = dict(zip(salarios,abono_salarial)) #Transformo as duas listas em um dicionário
abono_salarial = [f"{float(x):2.2f}" for x in abono_salarial]
print(f"O total de gastos com o abono será de:R$ {total:2_.2f}".replace(".",",").replace("_","."))
print(f"{x} funcionários receberão o abono mínimo")
print(f"O maior valor de abono a ser pago será de: R$ {maior_abono:2_.2f}".replace(".",",").replace("_","."))

questão 14

diversidade_biologica = {'Área Norte': [2819, 7236],
 'Área Leste': [1440, 9492],
 'Área Sul': [5969, 7496],
 'Área Oeste': [14446, 49688],
 'Área Centro': [22558, 45148]}
media_diversidade_biologica = {}

for area, especies in diversidade_biologica.items():
    media = sum(especies) / len(especies) # calculo a média das espécies por área
    media_diversidade_biologica[area] = media #guardo os valores em media_diversidade_biologica

print(media_diversidade_biologica)
area_com_mais_diversidade = max(media_diversidade_biologica, key = media_diversidade_biologica.get )
    
print(f'Área com mais diversidade:{area_com_mais_diversidade} com {media_diversidade_biologica[area_com_mais_diversidade]:.2f} espécies')

questão 15

idades_funcionários = {'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]}

idades_acima_media = 0
media_idades_por_setor ={}

for setor, idades in idades_funcionários.items():
    media = sum(idades) / len(idades)
    media_idades_por_setor[setor] = media
    print(f"{setor} - Média :{media:2.2f}")

media_geral = sum(media_idades_por_setor.values()) / len(media_idades_por_setor)
print(f"Média Geral dos setores : {media_geral:2.2f}")

for setor, idades in idades_funcionários.items():
    for x in idades:
        if x > media_geral:
            idades_acima_media += 1
                
print(f"Quantidade de funcionários com a idade acima da média: {idades_acima_media}")
1 resposta

Boa tarde Daniella!

Obrigado por compartilhar seu código com a comunidade Alura. Um detalhe interessante é a utilização do método zip para iterar por duas listas ao mesmo tempo, como no seu exemplo dos meses e temperaturas. Esse método é muito útil em situações onde é necessário correlacionar dados de diferentes listas.

Uma dica para simplificar a soma dos valores de um dicionário, uma alternativa ao seu exemplo seria usar a função sum diretamente nos valores:

total_vendas = sum(vendas_empresa.values())

O código acima faz a soma de todas as vendas sem precisar de um loop. Conte com o apoio do Fórum na sua jornada.

Abraços e bons estudos!