1
resposta

exercícios 11 a 15

#11 produtos = {'Produto A': 300, 'Produto B': 80, 'Produto C': 60, 'Produto D': 200, 'Produto E': 250, 'Produto F': 30} totalDeVendas = 0 for chave in produtos.values(): totalDeVendas += chave

produtoMaisVendido = max(produtos, key=produtos.get) maiorQuantidadeDeVendas = max(produtos.values())

resp = "unidade" if maiorQuantidadeDeVendas == 1 else "unidades"

print(f" O total de vendas foi de {totalDeVendas}, com o produto {produtoMaisVendido} vendendo {maiorQuantidadeDeVendas} {resp}") print(f"O produto {produtoMaisVendido}, representa {((maiorQuantidadeDeVendas/totalDeVendas)*100):.2f}% das vendas totais")

#12 x = '''Tabela de votos da marca Design 1 - 1334 votos Design 2 - 982 votos Design 3 - 1751 votos Design 4 - 210 votos Design 5 - 1811 votos ''' marca={} x = x.split("\n") for linha in x: if " - " in linha: nome, votos = linha.split(" - ") votos = int(votos.replace(" votos", "")) marca[nome]= votos

totalDeVendas = 0

for chave in marca.values(): totalDeVendas += chave

marcaMaisVendida = max(marca, key=marca.get) maiorQuantidadeDeMarcasVendidas = max(marca.values())

resp = "unidade" if maiorQuantidadeDeMarcasVendidas == 1 else "unidades"

print(f"O total de vendas foi de {totalDeVendas}, com o produto {marcaMaisVendida} vendendo {maiorQuantidadeDeMarcasVendidas} {resp}") print(f"O produto {marcaMaisVendida}, representa {((maiorQuantidadeDeMarcasVendidas/totalDeVendas)*100):.2f}% das vendas totais")

#13 abono = [1172, 1644, 2617, 5130, 5532, 6341, 6650, 7238, 7685, 7782, 7903] salario_atualizado = [] abonos_por_salario = {} total_abonos=0 quantidade_abonos_minimos=0 for i in range(len(abono)): salario_atualizado.append(round(abono[i] * 0.1, 2))

for i in range(len(salario_atualizado)): if salario_atualizado[i] < 200: salario_atualizado[i] = 200

for i in range(len(abono)): chave = abono[i] valor = salario_atualizado[i] abonos_por_salario[chave] = valor

for x, y in abonos_por_salario.items(): # x = chave, y = valor do dicionário total_abonos += y if y == 200: quantidade_abonos_minimos += 1

maiorAbono = max(abonos_por_salario.values()) resp = "recebeu" if quantidade_abonos_minimos == 1 else "receberam"

print(f"O total gastos com abono foi de R$ {total_abonos:.2f}, sendo que {quantidade_abonos_minimos} {resp} o abono mínimo e o maior abono foi de R$ {maiorAbono:.2f}")

#for chave, valor in zip(abono, salario_atualizado): #dicAbono[chave] = valor

#14 areas = { 'Área Norte': [2819, 7236], 'Área Leste': [1440, 9492], 'Área Sul': [5969, 7496], 'Área Oeste': [14446, 49688], 'Área Centro': [22558, 45148] } qtd_plantas = 0 qtd_animais = 0 total_especies = {} count=0 for chave, valor in areas.items(): qtd_plantas = valor[0] + qtd_plantas qtd_animais = valor[1] + qtd_animais especies_por_area = valor[0] + valor[1] total_especies[chave] = especies_por_area count +=1

media_especies_por_area = sum(total_especies.values())/count maior_especies = max(total_especies.values())

for chave, valor in total_especies.items(): if valor == maior_especies: localizacao = chave

print(f"A média de espécies por área é de {media_especies_por_area:.2f}, onde o maior quantitativo de espécies é na zona da {localizacao} que possui {maior_especies:.2f} ")

#15 setor = { '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]}

setor_soma={} total_pessoas = 0 total_pessoas_por_setor=0 total_setor=0 total_setor = len(setor)

print(f"total_setor: {total_setor}")

for lista in setor.values(): total_pessoas += len(lista) print(f"total_pessoas: {total_pessoas}")

for chave, valor in setor.items(): soma_idades = sum(valor) total_pessoas_por_setor = len(valor) setor_soma[chave]=soma_idades print(f"Setor_Soma: {setor_soma}")

setor_media={}

for chaves, valor in setor_soma.items(): media = valor / len(setor[chaves]) setor_media[chaves] = media

print(f"setor_media: {setor_media}")

total_de_idades=0 for i in setor_soma.values(): total_de_idades += i

print(f"total_de_idades: {total_de_idades}")

media_geral = total_de_idades/total_pessoas print(f"media_geral : {media_geral}")

contador = 0 idades_acima_da_media = {}

for chave, lista_idades in setor.items(): for idade in lista_idades: if idade > media_geral: contador += 1 if chave not in idades_acima_da_media: idades_acima_da_media[chave] = [] idades_acima_da_media[chave].append(idade)

print(idades_acima_da_media)

1 resposta

Olá, Marcus. Tudo bem?

Muito obrigado por compartilhar o seu código aqui com a gente. Parabéns pelo trabalho. Continue com essa dedicação.

Ótimo como você aplicou dicionários, laços de repetição e condicionais para resolver os desafios. A forma como organizou os dados e fez os cálculos mostra domínio crescente da linguagem.

Uma dica interessante para o futuro é usar o método items() quando quiser acessar chave e valor de um dicionário ao mesmo tempo. Veja este exemplo:

 produtos = {'Produto A': 100, 'Produto B': 150} for nome, valor in produtos.items(): print(nome, valor) 

Esse código percorre o dicionário e imprime o nome e o valor de cada produto.

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