Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

1
resposta

[Projeto] Resolução - Registrando voluntários para uma campanha

class Voluntarios:
    def __init__(self):
        self.voluntarios = []

    def registrar_voluntario(self, nome):
        if nome.lower() != 'sair':
            self.voluntarios.append(nome)
            return True
        return False

    def exibir_voluntarios(self):
        print("Lista de Voluntários:")
        for voluntario in self.voluntarios:
            print(voluntario)

def main():
    voluntarios = Voluntarios()
    while True:
        nome = input("Digite o nome do voluntário (ou 'sair' para encerrar): ")
        if not voluntarios.registrar_voluntario(nome):
            break
    voluntarios.exibir_voluntarios()

if __name__ == "__main__":
    main()
1 resposta

Oi, Thaís, como vai?

Obrigado por compartilhar sua solução. Seu código atende ao objetivo da atividade e demonstra uma boa aplicação de conceitos de orientação a objetos, encapsulando a lista de voluntários e as operações relacionadas em uma classe própria.

A lógica de encerramento utilizando nome.lower() != 'sair' está correta e torna a entrada mais flexível para diferentes formas de digitação. Além disso, a separação entre os métodos de registro e exibição deixa o código mais organizado e fácil de manter.

Como você adaptaria sua classe para também informar a quantidade total de voluntários cadastrados ao final do programa?

Parabéns pela resolução e pela organização do código. Continue compartilhando suas soluções. O fórum está à disposição para apoiar seu aprendizado.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!