Considere o código a seguir, codificado na linguagem de programação C:
#include
int main(){
int n1, n2;
n1 = 2;
n2 = 30;
while(n1
n2 = n2 + n1;
n1 = n1 * 3;
}
n1 = n2 + 11;
printf("%d e %d\n", n1, n2);
return 0;
Após a execução do código anterior, quais os valores de n1 e n2, respectivamente?
A) 162 e 110.
B) 110 e 121.
C) 110 e 162.
D) 121 e 110.
E) 173 e 110.
Ed
há 2 anos
Vamos analisar o código passo a passo para determinar os valores finais de `n1` e `n2`. 1. Inicialmente, `n1` é definido como 2 e `n2` como 30. 2. O loop `while(n1 < n2)` será executado enquanto `n1` for menor que `n2`. Dentro do loop: - Na primeira iteração: - `n1` é 2, que é menor que 30. - `n2 = n2 + n1` → `n2 = 30 + 2` → `n2` agora é 32. - `n1 = n1 * 3` → `n1 = 2 * 3` → `n1` agora é 6. - Na segunda iteração: - `n1` é 6, que ainda é menor que 32. - `n2 = n2 + n1` → `n2 = 32 + 6` → `n2` agora é 38. - `n1 = n1 * 3` → `n1 = 6 * 3` → `n1` agora é 18. - Na terceira iteração: - `n1` é 18, que ainda é menor que 38. - `n2 = n2 + n1` → `n2 = 38 + 18` → `n2` agora é 56. - `n1 = n1 * 3` → `n1 = 18 * 3` → `n1` agora é 54. - Na quarta iteração: - `n1` é 54, que é maior que 56, então o loop termina. Após o loop, temos: - `n1` = 54 - `n2` = 56 Agora, a linha `n1 = n2 + 11` é executada: - `n1 = 56 + 11` → `n1` agora é 67. Finalmente, o código imprime os valores de `n1` e `n2`: - `n1` = 67 - `n2` = 56 Nenhuma das alternativas apresentadas corresponde a esses valores. Parece que houve um erro na interpretação do código ou nas opções fornecidas. Você pode verificar se o código e as opções estão corretos?
Cadastre-se ou realize login
Ed
há 3 anos
O código apresentado na linguagem de programação C realiza a soma dos valores de n1 e n2 enquanto n1 é menor que n2. Em seguida, o valor de n1 é atualizado para a soma de n1 e n2 e n2 é atualizado para o valor de n1 multiplicado por 3. Após a execução do laço while, o valor de n1 é atualizado para a soma de n2 e 11 e, por fim, os valores de n1 e n2 são impressos na tela. Dessa forma, após a execução do código, os valores de n1 e n2, respectivamente, são 110 e 162. Portanto, a alternativa correta é a letra C.