Oi, Giovanni, como vai?
O código resolve o problema proposto com uma adição interessante: o loop while True que permite ao usuário corrigir os valores sem precisar reiniciar o programa. Essa melhoria em relação ao enunciado original torna a experiência mais fluida e é uma decisão bem pensada.
Uma sugestão seria verificar cada atividade individualmente assim que o valor for digitado, em vez de esperar que os três sejam informados para só então validar. Isso evita que o usuário precise redigitar todos os valores quando apenas um deles for inválido, por exemplo: se A for negativo, o programa já avisa e pede novamente apenas o valor de A antes de seguir para B e C.
Parabéns pelo exercício, Giovanni, e obrigado por compartilhar por aqui.
O fórum está à disposição sempre que precisar.
Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!