Considere o seguinte código em Python, analise
as assertivas e assinale a alternativa que aponta
as corretas.
def dividir(a, b):
try:
return a / b except ZeroDivisionError:
return “Divisão por zero não é permitida”
finally:
print(“Operação finalizada.”)
resultado = dividir(10, 0)
print(resultado)
I. A função dividir trata explicitamente a divisão
por zero com o bloco except.
II. O bloco finally será executado mesmo
quando ocorrer uma exceção.
III. A mensagem “Divisão por zero não é
permitida” será atribuída à variável resultado.
IV. O programa exibirá apenas a mensagem de
erro tratada, sem exibir o texto do finally.
V. Se o segundo argumento fosse diferente de
zero, o programa exibiria o resultado da
divisão normalmente.
Com base no seguinte trecho de código em
Python, que manipula listas e estruturas de
repetição, analise as assertivas e assinale a
alternativa que aponta as corretas.
nomes = [“Ana”, “Bruno”, “Carlos”, “Diana”,
“Eduardo”]
for i in range(len(nomes)):
if i % 2 == 0:
print(nomes[i])
I. O código percorre a lista nomes e imprime
todos os elementos.
II. A função range(len(nomes)) gera os índices
de 0 a 4.
III. A condição i % 2 == 0 verifica se o índice é
par.
IV. Os nomes “Ana”, “Carlos” e “Eduardo” serão
impressos.
V. A função print(nomes[i]) imprime diretamente
o nome localizado no índice atual.
Ao se implementar programas de
computador em Java, há possibilidade de
ocorrerem erros imprevistos durante sua
execução. Esses erros são conhecidos
como exceções. Sabendo disso,
considere que Márcio está fazendo uma
operação em um banco de dados, porém
essa operação dispara uma exceção de
que o campo que ele está manipulando
para inserir nesse banco está vazio, ou
seja, acontece um NullPointerException.
O problema, nesse caso, é a conexão
com o banco de dados ficar aberta, o que
não pode acontecer. Assim, assinale a
alternativa que apresenta o bloco/código
no qual deve ser inserida essa operação
de fechamento da conexão com o banco
de dados.
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.
Um desenvolvedor necessita fazer uma iteração
em C# e está em dúvida sobre qual laço deve
utilizar. Sabe-se que o desenvolvedor não
conhece a quantidade de vezes que o laço é
executado, entretanto o desenvolvedor sabe que
o laço deve ser executado ao menos uma vez.
Diante do exposto, com qual das alternativas a
seguir a iteração deve ser efetuada?