Boa tarde!
Sim, é possível aninhar laços while
em Python (e em muitas outras linguagens de programação). Isso significa que você pode ter um laço while
dentro de outro laço while
. Vou te mostrar um exemplo de como você pode fazer isso.
Vamos supor que você quer anotar as avaliações de 3 alunos, e para cada aluno você quer calcular a média de 3 notas. Depois, você pode imprimir uma mensagem indicando que todas as médias foram recebidas.
Aqui está um exemplo de como você pode fazer isso:
num_alunos = 3
num_notas = 3
# Contador para o número de alunos
aluno = 0
while aluno < num_alunos:
print(f"Anotando as notas do aluno {aluno + 1}")
# Contador para o número de notas de cada aluno
nota = 0
total_notas = 0
while nota < num_notas:
nota_atual = float(input(f"Digite a nota {nota + 1} do aluno {aluno + 1}: "))
total_notas += nota_atual
nota += 1
media = total_notas / num_notas
print(f"A média do aluno {aluno + 1} é: {media:.2f}\n")
aluno += 1
# Mensagem final após todas as médias serem recebidas
print("Todas as médias foram recebidas!")
Neste exemplo:
- O primeiro laço
while
(externo) percorre os alunos. - Para cada aluno, há um segundo laço
while
(interno) que percorre as notas desse aluno. - Após coletar as notas e calcular a média, o programa imprime a média do aluno.
- Depois que todas as médias são calculadas, uma mensagem final é impressa indicando que todas as médias foram recebidas.
Ao executar este código, você verá as mensagens e as médias sendo calculadas e exibidas, e no final, a mensagem "Todas as médias foram recebidas!" será mostrada.
Espero que isso te ajude! Se tiver mais dúvidas, estou à disposição.