O problema central
Temos uma entrada (a média) e três possíveis saídas, cada uma correspondendo a uma faixa de valores. O algoritmo precisa avaliar a média e tomar a decisão correta sem sobrepor as condições.
Algoritmo em linguagem natural
Solicitar ao usuário a média final do estudante.
Verificar primeiro se a média é menor que 5,0. Se for, exibir a mensagem "Você está reprovado" e encerrar.
Caso contrário, verificar se a média é menor que 7,0. Se for, exibir "Você está de recuperação" e encerrar.
Caso nenhuma das condições anteriores seja verdadeira, significa que a média é 7,0 ou mais, então exibir "Parabéns! Você foi aprovado."
Por que a ordem das condições importa
Esse é o ponto mais sutil da questão. Ao testar primeiro se a média é menor que 5,0, e só então testar se é menor que 7,0, o algoritmo já eliminou a possibilidade de reprovação na segunda verificação. Isso significa que quando chegamos ao segundo teste, sabemos que a média é pelo menos 5,0 — então basta verificar se ela ainda não atingiu 7,0. Inverter essa ordem poderia gerar resultados incorretos.
Esse encadeamento de condições é chamado de estrutura se-senão-se, e é uma das ferramentas mais usadas no dia a dia de quem desenvolve sistemas com regras de negócio baseadas em faixas ou categorias.