3
respostas

Faça como eu fiz

Escreva um código que lê a lista abaixo e faça: lista = [16, 14, 63, 65, 17, 99, 70, 11, 20, 48, 79, 32, 17, 89, 12, 25, 66] A leitura do tamanho da lista A leitura do maior e menor valor A soma dos valores da lista Ao final exiba uma mensagem dizendo: "A lista possui [tam] números em que o maior número é [maior] e o menor número é [menor]. A soma dos valores presentes nela é igual a [soma]"

# Lista fornecida
lista = [16, 14, 63, 65, 17, 99, 70, 11, 20, 48, 79, 32, 17, 89, 12, 25, 66]

# Calculando o tamanho da lista
tam = len(lista)

# Encontrando o maior e o menor valor da lista
maior = max(lista)
menor = min(lista)

# Somando todos os valores da lista
soma = sum(lista)

# Exibindo a mensagem formatada
print(f"A lista possui {tam} números em que o maior número é {maior} e o menor número é {menor}.")
print(f"A soma dos valores presentes nela é igual a {soma}.")

Escreva uma função que gere a tabuada de um número inteiro de 1 a 10, de acordo com a escolha da pessoa usuária.

def tabuada(numero):
    print(f"\nTabuada do {numero}:")
    for i in range(11):  # Vai de 0 a 10
        resultado = numero * i
        print(f"{numero} x {i} = {resultado}")

# Pegando a escolha da pessoa usuária
try:
    num = int(input("Digite um número inteiro para ver a tabuada (de 1 a 10): "))
    if 1 <= num <= 10:
        tabuada(num)
    else:
        print("Por favor, digite um número entre 1 e 10.")
except ValueError:
    print("Entrada inválida. Por favor, digite um número inteiro.")

Crie a função que leia a lista abaixo e retorne uma nova lista com os múltiplos de 3:

[97, 80, 94, 88, 80, 1, 16, 53, 62, 32, 24, 99]

def multiplos_de_3(lista):
    return [num for num in lista if num % 3 == 0]

# Lista fornecida
numeros = [97, 80, 94, 88, 80, 1, 16, 53, 62, 32, 24, 99]

# Chamando a função e exibindo o resultado
resultado = multiplos_de_3(numeros)
print(f"Os múltiplos de 3 são: {resultado}")

Crie uma lista dos quadrados dos números da seguinte lista [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]. Lembre-se de utilizar as funções lambda e map() para calcular o quadrado de cada elemento da lista.

# Lista original
numeros = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

# Usando lambda e map para calcular os quadrados
quadrados = list(map(lambda x: x ** 2, numeros))

# Exibindo o resultado
print(f"Os quadrados dos números são: {quadrados}")

Você foi contratado(a) como cientista de dados de uma associação de skate. Para analisar as notas recebidas de skatistas em algumas competições ao longo do ano, você precisa criar um código que calcula a pontuação dos(as) atletas. Para isso, o seu código deve receber 5 notas digitadas pelas pessoas juradas.

Para calcular a pontuação de um(a) skatista, você precisa eliminar a maior e a menor pontuação dentre as 5 notas e tirar a média das 3 notas que sobraram. Retorne a média para apresentar o texto:

"Nota da manobra: [media]"

def calcular_nota():
    notas = []

    # Coletando as 5 notas
    for i in range(1, 6):
        nota = float(input(f"Digite a nota {i}: "))
        notas.append(nota)

    # Eliminando a maior e a menor nota
    maior = max(notas)
    menor = min(notas)
    notas.remove(maior)
    notas.remove(menor)

    # Calculando a média das 3 notas restantes
    media = sum(notas) / 3

    # Exibindo o resultado
    print(f"Nota da manobra: {media:.2f}")

# Chamada da função
calcular_nota()

Para atender a uma demanda de uma instituição de ensino para a análise do desempenho de seus(suas) estudantes, você precisa criar uma função que receba uma lista de 4 notas e retorne:

maior nota menor nota média situação (Aprovado(a) ou Reprovado(a)) "O(a) estudante obteve uma média de [media], com a sua maior nota de [maior] pontos e a menor nota de [menor] pontos e foi [situacao]"

def analisar_desempenho():
    notas = []

    print("Digite as 4 notas do(a) estudante:")

    for i in range(1, 5):
        nota = float(input(f"Nota {i}: "))
        notas.append(nota)

    maior = max(notas)
    menor = min(notas)
    media = sum(notas) / len(notas)

    situacao = "Aprovado(a)" if media >= 6 else "Reprovado(a)"

    print(f"\nO(a) estudante obteve uma média de {media:.2f}, com a sua maior nota de {maior} pontos e a menor nota de {menor} pontos e foi {situacao}.")
analisar_desempenho()
3 respostas

Você recebeu uma demanda para tratar 2 listas com os nomes e sobrenomes de cada estudante concatenando-as para apresentar seus nomes completos na forma Nome Sobrenome. As listas são:

nomes = ["joão", "MaRia", "JOSÉ"] sobrenomes = ["SILVA", "souza", "Tavares"]

nomes = ["joão", "MaRia", "JOSÉ"]
sobrenomes = ["SILVA", "souza", "Tavares"]

# Lista para armazenar os nomes completos
nomes_completos = []

# Percorrendo as listas simultaneamente
for nome, sobrenome in zip(nomes, sobrenomes):
    nome_formatado = nome.capitalize()
    sobrenome_formatado = sobrenome.capitalize()
    nome_completo = f"{nome_formatado} {sobrenome_formatado}"
    nomes_completos.append(nome_completo)

# Exibindo os nomes completos
for nome in nomes_completos:
    print(nome)
Você recebeu o desafio de criar um código que calcula os gastos de uma viagem para um das quatro cidades partindo de Recife, sendo elas: Salvador, Fortaleza, Natal e Aracaju.

O custo da diária do hotel é de 150 reais em todas elas e o consumo de gasolina na viagem de carro é de 14 km/l, sendo que o valor da gasolina é de 5 reais o litro. O gastos com passeios e alimentação a se fazer em cada uma delas por dia seria de [200, 400, 250, 300], respectivamente.

Sabendo que as distâncias entre Recife e cada uma das cidades é de aproximadamente [850, 800, 300, 550] km, crie três funções nas quais: a 1ª função calcule os gastos com hotel (gasto_hotel), a 2ª calcule os gastos com a gasolina (gasto_gasolina) e a 3ª os gastos com passeio e alimentação (gasto_passeio).

Para testar, simule uma viagem de 3 dias para Salvador partindo de Recife. Considere a viagem de ida e volta de carro. "Com base nos gastos definidos, uma viagem de [dias] dias para [cidade] saindo de Recife custaria [gastos] reais"

Dados

distancias = { "Salvador": 850, "Fortaleza": 800, "Natal": 300, "Aracaju": 550 }

passeios = { "Salvador": 200, "Fortaleza": 400, "Natal": 250, "Aracaju": 300 }

Função 1: Gasto com hotel

def gasto_hotel(dias): diaria = 150 return diaria * dias

Função 2: Gasto com gasolina

def gasto_gasolina(cidade): km_total = distancias[cidade] * 2 # ida e volta consumo_km_l = 14 preco_litro = 5.0 litros = km_total / consumo_km_l return litros * preco_litro

Função 3: Gasto com passeios e alimentação

def gasto_passeio(cidade, dias): valor_diario = passeios[cidade] return valor_diario * dias

Simulação: 3 dias em Salvador

cidade_destino = "Salvador" dias = 3

total = gasto_hotel(dias) + gasto_gasolina(cidade_destino) + gasto_passeio(cidade_destino, dias)

print(f"Com base nos gastos definidos, uma viagem de {dias} dias para {cidade_destino} saindo de Recife custaria {round(total, 2)} reais")

Você iniciou um estágio em uma empresa que trabalha com processamento de linguagem natural (NLP). Sua líder requisitou que você criasse um trecho de código que recebe uma frase digitada pela pessoa usuária e filtre apenas as palavras com tamanho maior ou igual a 5, exibindo-as em uma lista. Essa demanda é voltada para a análise do padrão de comportamento de pessoas na escrita de palavras acima dessa quantidade de caracteres.

Dica: utilize as funções lambda e filter() para filtrar essas palavras. Lembrando que a função embutida filter() recebe uma função (no nosso exemplo uma função lambda) e filtra um iterável de acordo com a função. Para tratar a frase use replace() para trocar a ',' '.', '!' e '?' por espaço.

Use a frase "Aprender Python aqui na Alura é muito bom" para testar o código.

Frase de exemplo

frase = "Aprender Python aqui na Alura é muito bom"

Substituindo pontuação por espaço (caso tenha)

for pontuacao in [',', '.', '!', '?']: frase = frase.replace(pontuacao, ' ')

Separando palavras

palavras = frase.split()

Filtrando palavras com 5 ou mais caracteres

palavras_filtradas = list(filter(lambda p: len(p) >= 5, palavras))

Exibindo resultado

print("Palavras com 5 ou mais letras:", palavras_filtradas)



como cientista de dados em um time de futebol, você precisa implementar novas formas de coleta de dados sobre o desempenho de jogadores e do time como um todo. Sua primeira ação é criar uma forma de calcular a pontuação do time no campeonato nacional a partir dos dados de gols marcados e sofridos em cada jogo.

Escreva uma função chamada calcula_pontos que recebe como parâmetros duas listas de números inteiros, representando os gols marcados e sofridos pelo time em cada partida do campeonato. A função deve retornar a pontuação do time e o aproveitamento em percentual, levando em consideração que a vitória vale 3 pontos, o empate vale 1 ponto e a derrota 0 pontos.

Observação: se a quantidade de gols marcados numa partida for maior que a de sofridos, o time venceu. Caso seja igual, o time empatou e se for menor, o time perdeu. Para calcular o aproveitamento devemos fazer a razão entre a pontuação do time pela pontuação máxima que ele poderia receber.

Para teste, utilize as seguintes listas de gols marcados e sofridos:

gols_marcados = [2, 1, 3, 1, 0] gols_sofridos = [1, 2, 2, 1, 3] "A pontuação do time foi de [pontos] e seu aproveitamento foi de [aprov]%"

def calcula_pontos(gols_marcados, gols_sofridos):
    pontos = 0
    total_jogos = len(gols_marcados)

    for marcados, sofridos in zip(gols_marcados, gols_sofridos):
        if marcados > sofridos:
            pontos += 3  # Vitória
        elif marcados == sofridos:
            pontos += 1  # Empate
        # Derrota não soma nada

    pontuacao_maxima = total_jogos * 3
    aproveitamento = (pontos / pontuacao_maxima) * 100

    print(f"A pontuação do time foi de {pontos} e seu aproveitamento foi de {aproveitamento:.2f}%")

# Teste com os dados informados
gols_marcados = [2, 1, 3, 1, 0]
gols_sofridos = [1, 2, 2, 1, 3]

calcula_pontos(gols_marcados, gols_sofridos)

Oii, Gilrlane! Tudo bom?

Você estruturou bem as soluções com clareza e usou boas práticas como try/except e list comprehension. Isso torna o código mais legível e robusto.

Continue praticando e conte sempre com a gente aqui no fórum.

Até mais!