Um programa, ao ser implementado, pode conter erros que devem ser corrigidos, por isso a necessidade de um depurador, que é usado para testar o programa implementado identificando seus defeitos. A depuração consiste na identificação e na redução de erros em programas. Para realizar a correção de forma ágil e eficiente, é preciso inicialmente saber identificar o tipo de erro ocorrido. Avalie as afirmações a seguir em relação aos tipos de erros e relacione-as adequadamente aos termos às quais se referem. 1 - Erros de sintaxe (syntax errors). 2 - Erros de execução (runtime errors), também chamados de exceções. 3 - Erros de semântica (semantic errors). I - Este tipo de erro ocorre no momento da execução do programa e indica que houve um erro de lógica. II - Este tipo de erro ocorre no momento em que o Python está traduzindo o código-fonte do programa para código executável (byte code). III - Este tipo de erro ocorre a partir do momento em que o programa não apresenta mais erros durante sua execução e não apresenta erros de sintaxe. Assinale a alternativa que correlaciona adequadamente os dois grupos de informações:
Questão
Um programa, ao ser implementado, pode conter erros que devem ser corrigidos, por isso a necessidade de um depurador, que é usado para testar o programa implementado identificando seus defeitos. A depuração consiste na identificação e na redução de erros em programas. Para realizar a correção de forma ágil e eficiente, é preciso inicialmente saber identificar o tipo de erro ocorrido.
Avalie as afirmações a seguir em relação aos tipos de erros e relacione-as adequadamente aos termos às quais se referem.
1 - Erros de sintaxe (syntax errors).
2 - Erros de execução (runtime errors), também chamados de exceções.
3 - Erros de semântica (semantic errors).
I - Este tipo de erro ocorre no momento da execução do programa e indica que houve um erro de lógica.
II - Este tipo de erro ocorre no momento em que o Python está traduzindo o código-fonte do programa para código executável (byte code).
III - Este tipo de erro ocorre a partir do momento em que o programa não apresenta mais erros durante sua execução e não apresenta erros de sintaxe.
Assinale a alternativa que correlaciona adequadamente os dois grupos de informações:
Alternativas
a) 1-III; 2-II; 3-I.
b) 1-III; 2-I; 3-II.
c) 1-I; 2-II; 3-III.
d) 1-I; 2-III; 3-II.
e) 1-II; 2-I; 3-III.
Explicação
Vamos correlacionar cada tipo de erro (1, 2, 3) com as descrições (I, II, III):
1 – Erros de sintaxe (syntax errors)
- São detectados quando o Python analisa/traduz o código-fonte antes de executar de fato o programa (na fase de leitura/compilação para bytecode).
- Portanto, correspondem à afirmação II (“ocorre no momento em que o Python está traduzindo o código-fonte...”).
2 – Erros de execução (runtime errors) / exceções
- Acontecem durante a execução do programa (por exemplo: divisão por zero, acessar índice inexistente, arquivo não encontrado).
- Em geral, indicam um problema que surge no fluxo de execução; a questão associa isso a “erro de lógica” no momento da execução.
- Portanto, correspondem à afirmação I (“ocorre no momento da execução do programa...”).
3 – Erros de semântica (semantic errors)
- Também chamados frequentemente de erros lógicos: o programa roda sem acusar erro de sintaxe e pode até não lançar exceções, mas faz algo diferente do esperado.
- Isso aparece tipicamente depois que o programa “já executa” sem erros de sintaxe e sem falhas de execução evidentes.
- Portanto, correspondem à afirmação III (“a partir do momento em que o programa não apresenta mais erros durante sua execução e não apresenta erros de sintaxe”).
Assim, a correlação correta é:
- 1 – II
- 2 – I
- 3 – III
Alternativa correta: (e).