Este código começa lendo quatro números de ponto flutuante da entrada padrão, correspondentes às quatro notas do aluno. Em seguida, calcula a média ponderada dessas notas com os pesos especificados e imprime a mensagem “Media: ” seguida pelo valor da média calculada.
Dependendo do valor da média calculada, o código imprime uma das três mensagens possíveis: “Aluno aprovado.”, “Aluno reprovado.” ou “Aluno em exame.”. No caso do aluno estar em exame, o código lê um valor adicional correspondente à nota do exame obtida pelo aluno e imprime a mensagem “Nota do exame: ” seguida pela nota digitada.
Usamos a estrutura switch
para verificar o valor da variável $status
e executar o bloco de código correspondente. No caso do aluno estar em exame (case 'exame':
), o código lê um valor adicional correspondente à nota do exame obtida pelo aluno e imprime a mensagem “Nota do exame: ” seguida pela nota digitada.
Em seguida, o código recalcula a média final (somando a pontuação do exame com a média anteriormente calculada e dividindo por 2) e imprime uma das duas mensagens possíveis: “Aluno aprovado.” (caso a média final seja 5.0 ou mais) ou “Aluno reprovado.” (caso a média tenha ficado 4.9 ou menos). Por fim, o código apresenta na última linha uma mensagem “Media final: ” seguida da média final para esse aluno.