1
# Dados de gastos
gastos = [2172.54, 3701.35, 3518.09, 3456.61, 3249.38, 2840.82, 3891.45, 3075.26, 2317.64, 3219.08]
# Calculamos a média encontrando o valor total de gastos com sum
# e a quantidade total de compras realizadas com len
total_gastos = sum(gastos)
quantidade_compras = len(gastos)
media_gastos = total_gastos / quantidade_compras
# Resultado
print(f'A média de gastos é {media_gastos} reais.')
A média de gastos é 3144.222 reais.
2
# Dados de gastos
gastos = [2172.54, 3701.35, 3518.09, 3456.61, 3249.38, 2840.82, 3891.45, 3075.26, 2317.64, 3219.08]
# Variável que vai contar quantas compras foram feitas acima de 3000
contador_acima_3000 = 0
# Usamos o laço para ler a lista de gastos
for gasto in gastos:
# Verificamos se o elemento está acima de 3000
if gasto > 3000:
# Acrescentamos mais um no contador, caso tenha algum valor acima de 3000
contador_acima_3000 += 1
# Quantidade Compras
# Variável que vai ser utilizada para o cálculo da porcentagem
quantidade_compras = len(gastos)
# Com a contagem conseguimos calcular a porcentagem de valores acima de 3000 entre todas as compras
porcentagem_acima_3000 = 100 * (contador_acima_3000) / (quantidade_compras)
# Resultado
print(f'{contador_acima_3000} compras foram acima de R$3000,00.')
print(f'{porcentagem_acima_3000}% dos gastos foram acima de R$3000,00.')
7 compras foram acima de R$3000,00.
70.0% dos gastos foram acima de R$3000,00.
3
# Lista que irá armazenar os 5 números inteiros
lista_numeros = []
# Criamos um laço que vai iterar 5 vezes para receber os 5 números
for i in range(0, 5):
# Coletamos o valor e inserimos na lista por 5 vezes
numero = int(input('Digite um número inteiro: '))
lista_numeros.append(numero)
#Resultado
print(f'Lista de números inseridos: {lista_numeros}')
Digite um número inteiro: 2
Digite um número inteiro: 4
Digite um número inteiro: 6
Digite um número inteiro: 8
Digite um número inteiro: 10
Lista de números inseridos: [2, 4, 6, 8, 10]
4
# Lista que irá armazenar os 5 números inteiros
lista_numeros = []
# Criamos um laço que vai iterar 5 vezes para receber os 5 números
for i in range(0, 5):
# Coletamos o valor e inserimos na lista por 5 vezes
numero = int(input('Digite um número inteiro: '))
lista_numeros.append(numero)
# Usamos da lógica de partição para imprimir o resultado
print(f'Lista de números invertida: {lista_numeros[::-1]}')
Digite um número inteiro: 10
Digite um número inteiro: 20
Digite um número inteiro: 30
Digite um número inteiro: 40
Digite um número inteiro: 50
Lista de números invertida: [50, 40, 30, 20, 10]
5
# Coletamos o números
numero = int(input('Digite um número inteiro: '))
# Lista para receber os números primos
lista_primos = []
# Laço que vai rodar por todos os números abaixo do número digitado
for num in range(2, numero):
# Primo é uma bandeira, ela permite sabermos se o valor analisado é ou não primo
primo = True
# Testamos se todos os números abaixo do especificado no primeiro laço podem
# gerar uma divisão exata
for teste_divisiveis in range(2, num):
if num % teste_divisiveis == 0:
# Caso seja divisivel por algum número entendemos que
# o num não é primo e finalizamos o laço interno com break
primo = False
break
# A condição se torna o resultado booleno de primo: False, ignoramos o condicional
# True, executamos o bloco do if
if primo:
lista_primos.append(num)
# Resultado
print(f'Lista de números primos: {lista_primos}')
Digite um número inteiro: 10
Lista de números primos: [2, 3, 5, 7]
6
# Coletamos a data
dia = int(input('Digite o dia: '))
mes = int(input('Digite o mês: '))
ano = int(input('Digite o ano: '))
# Análise de fevereiro
if mes == 2:
# Verificamos se é ou não um ano bissexto
if ano % 4 == 0 and (ano % 400 == 0 or ano % 100 != 0):
dias_fevereiro = 29
else:
dias_fevereiro = 28
# Verificamos se o dia colocado corresponde ao máximo de dias de fevereiro
if dia >= 1 and dia <= dias_fevereiro:
print('Data válida')
else:
print('Data inválida')
# Verificamos meses terminados em 31 dias
elif mes in [1, 3, 5, 7, 8, 10, 12]:
if dia >= 1 and dia <= 31:
print('Data válida')
else:
print('Data inválida')
# Verificamos meses terminados em 30 dias
elif mes in [4, 6, 9, 11]:
if dia >= 1 and dia <= 30:
print('Data válida')
else:
print('Data inválida')
# Caso o mês não esteja entre 1 e 12
else:
print('Data inválida')
Digite o dia: 29
Digite o mês: 02
Digite o ano: 1980
Data válida
Digite o dia: 31
Digite o mês: 05
Digite o ano: 1980
Data válida
Digite o dia: 30
Digite o mês: 06
Digite o ano: 1980
Data válida
Digite o dia: 31
Digite o mês: 04
Digite o ano: 2025
Data inválida