Considere o código abaixo escrito na linguagem de programaçã...
Considere o código abaixo escrito na linguagem de programação C:
Qual das alternativas abaixo invocaria um loop infinito na rotina “recursivo”
sem condição de parada:
Comentários
Veja os comentários dos nossos alunos
A questão possui um if simples que testa se o resto do número dividido por 2 é igual a 0. Ou seja todas as alternativas cujos valores são pares (a, b, c, e) retornará o número 2. A única alternativa ímpar é a "e) recursivo(15)", neste caso, cairá no else e formará um looping infinito.
Portanto a alternativa correta é a letra e)
Selva!
Questão tranquila...
Ao observarmos o primeiro IF vemos que ele deseja uma operação que o resultado seja == 0, ou seja qualquer numero par. Porém não irá realizar nem um loop infinito.
No ELSE percebemos que ocorre um função recursiva (que chama a si mesmo varias vezes deixando-a infinita) e que só será executada caso o primeiro IF não seja. após entrar no ELSE ele não sairá mais pois sempre será um numero impar somando 2 a cada iteração.
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo