Observe o trecho de código abaixo. atribuir 13 a INDICE; a...
atribuir 13 a INDICE;
atribuir 0 a SOMA;
atribuir 0 a K;
enquanto K < INDICE faça
início
somar 1 a K;
atribuir SOMA+K a SOMA;
imprimir(K);
fim;
fim-enquanto;
imprimir(SOMA);
Ao final do processamento, a variável SOMA terá o seguinte valor:
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
A alternativa correta é a E - 91.
Vamos entender o porquê dessa resposta, analisando o trecho de código passo a passo:
Primeiramente, observe as linhas iniciais do código:
atribuir 13 a INDICE;
atribuir 0 a SOMA;
atribuir 0 a K;
Essas linhas inicializam as variáveis INDICE com o valor 13, SOMA com 0 e K com 0.
Em seguida, temos a estrutura de repetição enquanto:
enquanto K < INDICE faça
início
somar 1 a K;
atribuir SOMA + K a SOMA;
imprimir(K);
fim;
fim-enquanto;
Vamos detalhar o que acontece dentro desse laço:
1. Enquanto K for menor que INDICE (ou seja, enquanto K < 13):
2. O valor de K é incrementado em 1 (ou seja, K = K + 1).
3. O valor atual de K é adicionado à variável SOMA (ou seja, SOMA = SOMA + K).
4. O valor de K é impresso.
Vamos calcular passo a passo o valor acumulado em SOMA:
Na primeira iteração:
K = 1
SOMA = 0 + 1 = 1
Na segunda iteração:
K = 2
SOMA = 1 + 2 = 3
Na terceira iteração:
K = 3
SOMA = 3 + 3 = 6
...
Na última iteração (quando K = 13):
K = 13
SOMA = 78 + 13 = 91
Portanto, após o término do laço, o valor final de SOMA será 91.
Agora, vamos justificar por que as outras alternativas estão incorretas:
A - 3: Esse valor é muito baixo. Ele poderia ser o resultado se o laço parasse após poucas iterações, mas não é o caso aqui.
B - 6: Segunda opção incorreta. Este valor também é um resultado inicial, mas não condiz com a somatória dos valores de K até 13.
C - 66: Mais uma opção incorreta. Esse valor está mais próximo, mas ainda não corresponde ao somatório correto dos primeiros 13 números.
D - 78: Esse valor aparece na penúltima iteração, quando K é 12. No entanto, não é o valor final de SOMA após a última iteração.
Portanto, a alternativa correta é E - 91.
Espero que esta explicação tenha ajudado a entender por que a resposta é 91 e como o código funciona. Se tiver mais dúvidas, estou aqui para ajudar!
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
soma = 0
k = 0
Será adiciona 1 a k até k = 13, e adicionado a soma = soma + k, então
k = 1
soma = 1
k = 2
soma = 3
k = 3
soma = 6
k = 4
soma = 10
k = 5
soma = 15
k = 6
soma = 21
k = 7
soma = 28
k = 8
soma = 36
k = 9
soma = 45
k = 10
soma = 55
k = 11
soma = 66
k = 12
soma = 78
k = 13
soma = 91
LAÇO ENQUANTO | SOMA ANTES | K | SOMA + K |
1 | 0 | 1 | 1 |
2 | 1 | 2 | 3 |
3 | 3 | 3 | 6 |
4 | 6 | 4 | 10 |
5 | 10 | 5 | 15 |
6 | 15 | 6 | 21 |
7 | 21 | 7 | 28 |
8 | 28 | 8 | 36 |
9 | 36 | 9 | 45 |
10 | 45 | 10 | 55 |
11 | 55 | 11 | 66 |
12 | 66 | 12 | 78 |
13 | 78 | 13 | 91 |
(a1 + an) *n / 2
(1+13)*13 / 2
14*13 / 2
182 / 2
91
Discordo do gabarito da banca.
Pois, verificando-se a condição, que não pede K = INDICE, mas pede K < INDICE, então na transição do 12º LOOP para o 13º, a variável K já terá valor de 13, somente sendo feita a comparação na condição inicial e como esta já foi atendida, não entrará na estrutura, portanto resultado da variável SOMA = 78
1º loop: somar 1 a K = 1+0 = K = 1 ---> atribuir SOMA+K=0+1= SOMA = 1
2º loop: somar 1 a K = 1+1 = K = 2 ---> atribuir SOMA+K=1+2= SOMA = 3
3º loop: somar 1 a K = 1+2 = K = 3 ---> atribuir SOMA+K=3+3= SOMA = 6
4º loop: somar 1 a K = 1+3 = K = 4 ---> atribuir SOMA+K=6+4= SOMA = 10
5º loop: somar 1 a K = 1+4 = K = 5 ---> atribuir SOMA+K=10+5= SOMA = 15
6º loop: somar 1 a K = 1+5 = K = 6 ---> atribuir SOMA+K=15+6= SOMA = 21
7º loop: somar 1 a K = 1+6 = K = 7 ---> atribuir SOMA+K=21+7= SOMA = 28
8º loop: somar 1 a K = 1+7 = K = 8 ---> atribuir SOMA+K=28+8= SOMA = 36
9º loop: somar 1 a K = 1+8 = K = 9 ---> atribuir SOMA+K=36+9= SOMA = 45
10º loop: somar 1 a K = 1+9 = K = 10 ---> atribuir SOMA+K=45+10= SOMA = 55
11º loop: somar 1 a K = 1+10 = K = 11 ---> atribuir SOMA+K=55+11= SOMA = 66
12º loop: somar 1 a K = 1+11 = K = 12 ---> atribuir SOMA+K=66 +12= SOMA = 78
13º loop: somar 1 a K = 1+12 = K = 13 (não ocorre no entrada na estrutura, condição atendida, enquanto K < INDICE, então, 13 < 13)
K = 13
SOMA = 78
Ado Silva, a sua lógica está correta! contudo o erro foi você iniciar o k =1. Se fosse k=1 você estária certo. (mas o K=0).
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo