Considerando dois programas equivalentes, um escrito em Java e outro em Python, ambos contendo um erro de divisão por zero, um desenvolvedor decide compilar e executar os códigos em seus respectivos ambientes:

Código Java (Main.java):
public class Main {
public static void main(String[] args) {
int x = 10 / 0;
System.out.println(“Fim do programa”);
}
}
Código Python (main.py):

x = 10 / 0
print(“Fim do programa”)

Com base no funcionamento dos ambientes de execução de Java e Python, analise as assertivas e assinale a alternativa que aponta a(s) correta(s).

I. O código Java será compilado com sucesso, pois a expressão 10 / 0 é válida sintaticamente; o erro será exibido em tempo de execução como uma exceção.
II. O código Python será interrompido imediatamente com erro em tempo de execução, pois o interpretador avalia linha por linha durante a execução.
III. O Java detectará o erro de divisão por zero durante a compilação, impedindo a geração do bytecode .class.
IV. Tanto em Java quanto em Python, a instrução “Fim do programa” será exibida antes da exceção de divisão por zero.