1
resposta

Desafio: Estruturas de repetição

  1. inicio = int(input('Insira o primeiro número inteiro: '))
    fim = int(input('Insira o segundo número inteiro: '))

if inicio < fim:
for i in range(inicio + 1, fim):
print(i)
elif inicio > fim:
for i in range(fim + 1, inicio):
print(i)
else:
print('Os números são iguais.')

  1. número inicial de bactérias

colonia_a = 4
colonia_b = 10

#taxas de crescimento das colônias
taxa_a = 0.03
taxa_b = 0.015

#contador de dias
dias = 0

#a colônia A ultrapasse a colônia B
while colonia_a <= colonia_b:
#usamos um operador de atribuição com multiplicação
colonia_a *= 1 + taxa_a
colonia_b *= 1 + taxa_b
#contamos o dia para cada iteração
dias += 1

print(f'Irá levar {dias} dias para a colônia A ultrapassar a colônia B.')

3)
for i in range(15):
nota = float(input(f'Insira a nota da pessoa usuária {i}: '))

while (nota < 0) or (nota > 5):
nota = float(input(f'Nota inválida, insira novamente a nota da pessoa usuária {i}: '))

print('Verificação feita')

temp = float (input ('Insira a temperatura em Celsius: '))

contadora = 0
soma = 0

while temp != -273:
soma += temperatura
contadora += 1
temperatura = float (input ('Insira a temperatura em Celsius: '))

media = soma / contadora
print(f'A média das temperaturas é: {media}')

  1. Escreva um programa que calcule o fatorial de um número inteiro fornecido pela pessoa usuária. Lembrando que o fatorial de um número inteiro é a multiplicação desse número por todos os seus antecessores até o número 1. Por exemplo, o fatorial de 5 é 5 x 4 x 3 x 2 x 1 = 120.

Não conseguir resolver essa questão.

Momento dos projetos
Respostas: As questões de 6 a 9 eu realmente me perdi. Pode me ajudar a comprender a lógica dessas questões?

1 resposta

Olá, Pedro! Tudo bem?

Fico feliz em ver sua dedicação nos desafios iniciais. Você já tem uma base ótima em if, while e manipulação de variáveis. O segredo do Python para Dados é justamente dominar esses blocos fundamentais antes de avançar para bibliotecas complexas.

Vamos resolver o que falta e esclarecer a lógica para você destravar.


1. Resolvendo o Fatorial (Questão 5)

O fatorial consiste em multiplicar um número por todos os seus antecessores até o 1. A lógica é: começamos com um resultado igual a 1 e, a cada passo de um laço, multiplicamos esse resultado pelo número atual.

num = int(input("Digite um número inteiro: "))
fatorial = 1

# O range vai do número escolhido até 1, voltando de -1 em -1
for i in range(num, 0, -1):
    fatorial *= i

print(f"O fatorial de {num} é {fatorial}")

2. A Lógica dos Projetos (Questões 6 a 9)

As questões finais costumam misturar tudo o que você aprendeu. Vamos quebrar a lógica de cada uma:

#6: Tabuada

O que pede: Mostrar a multiplicação de um número de 1 a 10.
Lógica: Você recebe um número fixo e usa um for i in range(1, 11) para multiplicar esse número por cada i da lista.

#7: Números Primos

O que pede: Verificar se um número é divisível apenas por 1 e por ele mesmo.
Lógica:

  1. Use um for para testar divisões do seu número por todos os números entre 2 e ele mesmo.
  2. Se o resto da divisão (%) for zero em qualquer um desses casos, ele não é primo.

#8: Idades e Médias (Estrutura de Interrupção)

O que pede: Receber várias idades e parar quando o usuário digitar um valor específico (como 0 ou negativo).
Lógica: Use um while True. Dentro dele, peça a idade. Se a idade for o valor de parada, use o comando break para sair do laço. Se não for, some a idade a um acumulador e incremente um contador.

#9: Sistema de Votação

O que pede: Contar votos para diferentes candidatos.
Lógica:

  1. Crie variáveis contadoras para cada candidato: cand1 = 0, cand2 = 0, etc.
  2. Use um for para repetir o número de votos.
  3. Use if/elif para verificar qual número foi digitado e somar +1 na variável do candidato correspondente.

Dica para o erro na Questão 4

Notei que no seu código da média de temperatura, você criou a variável temp mas dentro do laço tentou somar soma += temperatura. Como o nome da variável é diferente, o Python daria um erro. Certifique-se de usar sempre o mesmo nome: temp.

Qual dessas lógicas (6 a 9) parece mais difícil de transformar em código agora que explicamos o passo a passo? Se quiser, escolha uma e tentamos montar juntos!