2
respostas

Minha solução:

QUESTÃO 01)

gastos = (2172.54,3701.35,3518.09,3456.61,3249.38,2840.82,3891.45,3075.26,2317.64,3219.08)
media = sum(gastos)/len(gastos)
print(f'A média dos gastos é: R$ {media:2_.2f}'.replace('.',',').replace('_',"."))

QUESTÃO 02)

gastos = (2172.54,3701.35,3518.09,3456.61,3249.38,2840.82,3891.45,3075.26,2317.64,3219.08)
valor = 0
x = 0 
for gasto in gastos:
    if gasto > 3000:
        valor += gasto
        x += 1
total_compras = sum(gastos)
perc_compras = valor / total_compras
print(f"A quantidade de compras acima de 3000 foi de:{x}\nO total do valor das compras foi de :R$ {total_compras:2_.2f}\nO total das compras acima de 3000 foi de R$ {valor:2_.2f} representando {perc_compras:2.2%} do valor total gasto".replace('.',',').replace('_',"."))

QUESTÃO 03)

numeros = (1,5,6.5,9,8.7,13,135,98.6,24.4,50)
inteiros =[]
for numero in numeros:
    if numero.is_integer() == True:
        inteiros.append(numero)
print(inteiros)

QUESTÃO 04)

numeros = (1,5,6.5,9,8.7,13,135,98.6,24.4,50)
inteiros =[]
for numero in numeros:
    if numero.is_integer() == True:
        inteiros.append(numero)
inteiros.sort(reverse = True)
print(inteiros)

QUESTÃO 05)

primos =[]

def primo(num):
    x = 2
    while x <= num: #Faço um loop começando em dois e terminando no número dado
        for i in range(2, x): #Faço um loop começando em dois e terminando no número dado
            if x % i == 0: # Divido o número pelos números até ele, e se caso der zero, quer dizer que não é primo
                #x += 1 
                break
            else:
                primos.append(x)
                break
        x += 1       
        #print(f"oi {y}" )
    print(f"Os números primos entre 1 e {num} são:{primos}")     
 num = input("Entre com um número inteiro inteiro e maior que zero:")
while num.isnumeric() == False or num.isalpha() == True :
    num = input("Valor Inválido !!!.Entre com um número inteiro e maior que zero: ")
primo(int(num))

QUESTÃO 06)

rom datetime import datetime

def validar_data(dia, mes, ano):
    try:
        data = datetime(ano, mes, dia)
        return True
    except ValueError:
        return False

# Solicita a data ao usuário
dia = int(input("Informe o dia no formato(dd): "))
mes = int(input("Informe o mês no formato (mm): "))
ano = int(input("Informe o ano no formato (yyyy): "))

# Verifica se a data é válida
if validar_data(dia, mes, ano):
    print("A data é válida.")
else:
    print("A data é inválida.")

QUESTÃO 07)

crescimento_colonia = (1.2, 2.1, 5.0, 7.8, 11.3,16.6, 25.1, 37.8, 56.9)
perc_crescimento = []
for bacteria in crescimento_colonia:
    posicao = crescimento_colonia.index(bacteria) #Pego a posição atual, para localizar a anterior
    amostra_atual = bacteria
    amostra_passada = crescimento_colonia[posicao -1]
    if posicao != 0:
        perc_cresc = ((amostra_atual - amostra_passada) / amostra_passada)
        perc_crescimento.append(perc_cresc)
numeros_formatados = [f"{num:2.2%}" for num in perc_crescimento] #Formatando os números para porcentagem na lista
print(numeros_formatados)

QUESTÃO 08)

ids=[]
def par_impar(ids):
    par = 0
    impar = 0
    for id in ids:
        if int(id) % 2 == 0:
            par += 1
        else:
            impar +=1
    
    return print(f"Quantidade de produtos DOCES : {par}\nQuantidade de produtos AMARGOS : {impar}") 

x = 0
while x < 10: #Comecei no zero
    id = input("Entre com um número inteiro diferente de 0:")
    while id.isnumeric() == False or id.isalpha() == True :
        id = input("Valor Inválido !!!.Entre com um número inteiro e maior que zero: ")
    ids.append(id)
    x += 1
print(ids)
par_impar(ids)
    

QUESTÃO 09)

respostas_recebidas=[]
def verificando_respostas(respostas_recebidas):
    questoes_respostas = {1:'D',2:'A',3:'C',4:'B',5:'A',6:'D',7:'C',8:'C',9:'A',10:'B'}
    x = 0
    y = 1
    for i,resposta in enumerate(respostas_recebidas):
        if resposta == questoes_respostas[i + 1]:
            x += 1
       # y += 1
    return print(f"Você acertou {x} questão(ões), portanto tirou a nota {x} na prova !!!")

v = 1
while v < 11: 
    resposta = input(f"Entre com a resposta da questão {v} (A,B,C ou D):").upper()
    respostas_recebidas.append(resposta)
    v += 1
print(respostas_recebidas)
verificando_respostas(respostas_recebidas)
2 respostas

Boa tarde Daniella!

Obrigado por compartilhar seu código com a comunidade Alura. Como relembrar é manter vivo na memória, deixo abaixo uma tabela com um resumo dos principais funções que você utilizou no código:

FunçãoDescriçãoExemplo de Uso
sum()Calcula a soma de elementos em um iterável (ex: lista, tupla).total = sum(gastos)
len()Retorna o número de elementos em um iterável.quantidade = len(gastos)
replace()Substitui partes de uma string por outras.texto = "3.456".replace(".", ",")
append()Adiciona um elemento ao final de uma lista.inteiros.append(numero)
datetimeManipula datas e horários; usada para validação de datas.data = datetime(ano, mes, dia)
enumerateItera sobre uma lista com índice e valor.for i, resposta in enumerate(respostas_recebidas):
input()Recebe dados de entrada do usuário.resposta = input("Digite sua resposta: ")
dictArmazena pares de chave-valor, como um dicionário de dados.questoes_respostas = {1: 'A', 2: 'B', 3: 'C'}

Conte com o apoio do Fórum na sua jornada. Abraços e bons estudos!

Boa tarde Rafael, muito obrigado, show essa tabela.