Oi, Eduardo, como vai?
O código está correto e trata bem o caso de valores inválidos antes de realizar o cálculo. O uso do operador or na condição é a abordagem certa para verificar se qualquer um dos três valores é negativo.
Uma dica interessante de melhoria seria informar qual atividade teve o valor inválido, o que facilita a correção por parte de quem usa o programa.
Parabéns pelo exercício e obrigado por compartilhar.
O fórum está à disposição sempre que precisar.
Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!