Questão nº 40

Questão de Tecnologia da Informação · FCC PGE-AM 2022 (nº 40)

FCC2022Técnico em Gestão Procuratorial - Especialidade Engenharia de SoftwareTecnologia da Informação
Gabarito: Dver comentário ↓

Considere o bloco PHP abaixo.

<?php
  function divide($dividendo, $divisor) {
    if($divisor == 0) {
      throw new Exception("Divisão por zero");
    }
    return $dividendo / $divisor;
   }
  echo divide(5, 10);
?>

Caso o segundo parâmetro passado para o método divide seja 0 ao invés de 10, ocorrerá uma exceção. Para tratar adequadamente esta exceção a chamada ao método realizada pelo comando echo divide(5, 10); deverá mudar para

Resposta comentada

Gabarito Alternativa D

Quando um programa pode encontrar um problema inesperado (uma "exceção"), usamos um bloco try-catch para tentar executar o código (try) e, se houver um erro, "pegar" esse erro (catch) para lidar com ele sem que o programa trave.

  • (A) Incorreta: A função divide lança uma Exception genérica, não uma DivisionByZeroException. O bloco catch só pegaria exceções do tipo DivisionByZeroException ou de classes filhas dela, mas não a Exception genérica lançada.
  • (B) Incorreta: Similar à alternativa A, a função lança uma Exception genérica, não uma DivisionException. Além disso, faltaria o echo dentro do try para exibir o resultado em caso de sucesso.
  • (C) Incorreta: O finally é uma cláusula separada que sempre executa, independentemente de haver exceção ou não. Ele não pode ser usado dentro do bloco catch como mostrado, resultando em um erro de sintaxe.
  • (D) Correta: O bloco try tenta executar a divisão. O bloco catch(Exception $e) é o correto, pois a função divide lança uma Exception genérica. Se a exceção ocorrer, o programa executa o código dentro do catch, exibindo a mensagem de erro.
  • (E) Incorreta: A função printf em PHP exige parênteses para seus argumentos (ex: printf("...")). A sintaxe printf "..." está incorreta, causando um erro de sintaxe.

Fonte: FCC PGE-AM 2022 Técnico em Gestão Procuratorial - Especialidade Engenharia de Software (Caderno Tipo 001). Reproduzida para fins de estudo.

Continue estudando

Estudar é izi

Pratique milhares de questões como esta, de graça, com explicação e gamificação no Quizinho.

Estudar de graça no Quizinho