Questão de TI - Desenvolvimento de Sistemas — Geral — VUNESP 2026
TI - Desenvolvimento de Sistemas›Geral
Código
vu169367
Banca
VUNESP
Órgão
FAPESP
Ano
2026
Cargo
Ana Sist ( )
Início
Inteiro: a, r, s, i;
a ← 2;
Leia r, s;
r ← r + a;
s ← s - a;
Para i de 1 até 4 faça
[
Se ((r+s) ≤ 10)
Então
[
r ← r + 2;
s ← s + 3;
a ← a + 1;
]
Senão
[
r ← r - 1;
s ← s - 1;
a ← a - 1;
]
]
a ← a + r + s;
Imprima a;
Fim.
Analise o seguinte algoritmo, expresso na forma de uma pseudolinguagem (português estruturado): Suponha que os valores lidos para as variáveis r e s, no início do algoritmo, tenham sido, respectivamente, 4 e 6. Dessa forma, ao final da execução do algoritmo, o valor impresso de a será:
A6
B7
C8
D10
E9
Revelar gabarito e comentário▾
GabaritoE — 9
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Resolução
Gabarito: letra E — a conta chega a 9 (alternativa E).
A ideia por trás
Teste de mesa é a simulação manual da execução de um algoritmo, linha por linha, anotando o valor de cada variável a cada passo. É como se você fosse o computador: você lê a instrução, atualiza as variáveis e segue para a próxima. Isso é essencial para entender o que um código realmente faz, especialmente quando há laços e condições.
Um laço 'Para i de 1 até 4' repete o bloco interno quatro vezes, com i assumindo os valores 1, 2, 3 e 4. Dentro do laço, uma condição 'Se (r+s) ≤ 10' decide qual bloco de comandos executar: se a soma for menor ou igual a 10, executa um conjunto de operações; caso contrário, executa outro. Cada operação modifica os valores de r, s e a, e esses novos valores são usados nas próximas iterações. Por isso, é crucial atualizar as variáveis na ordem correta.
Esta questão exige executar o algoritmo passo a passo, prestando atenção especial às operações que ocorrem antes do laço e à atualização de 'a' dentro do laço, pois 'a' influencia a condição e o resultado final.
O que a questão dá
r = 4
s = 6
a = 2 (inicial)
laço: Para i de 1 até 4
condição: Se (r+s) ≤ 10
O que queremos: o valor impresso de a ao final do algoritmo
Passo 1 — Aplicar as operações iniciais
Antes de entrar no laço, o algoritmo executa duas atribuições que alteram r e s. Precisamos aplicá-las com os valores iniciais para começar o laço com os valores corretos.
Por que esta fórmula: As operações são dadas diretamente no algoritmo: r recebe r + a e s recebe s - a. Não há escolha de fórmula, é só seguir a ordem.
De onde vem cada valor: = enunciado: 4 · = enunciado: 6 · = enunciado: 2 (inicial)
r = 6, s = 4
NÃO CAIA NESSA!
Esquecer de aplicar essas operações antes do laço, usando r=4 e s=6 dentro do laço.
Passo 2 — Executar a primeira iteração do laço
O laço começa com i=1. Precisamos verificar a condição com os valores atuais de r e s e executar o bloco correspondente.
Por que esta fórmula: A condição é (r+s) ≤ 10. Se for verdadeira, executa o bloco 'então'; se falsa, o bloco 'senão'. Os comandos de cada bloco são dados no algoritmo.
De onde vem cada valor: = passo 1: 6 · = passo 1: 4 · = passo 1: 2
r = 8, s = 7, a = 3
NÃO CAIA NESSA!
Errar a condição: achar que 10 > 10 e executar o bloco 'senão'.
Passo 3 — Executar a segunda iteração do laço
i=2. Usamos os valores atualizados do passo anterior para verificar a condição novamente.
Por que esta fórmula: Mesma estrutura condicional, mas com novos valores de r, s e a.
De onde vem cada valor: = passo 2: 8 · = passo 2: 7 · = passo 2: 3
r = 7, s = 6, a = 2
NÃO CAIA NESSA!
Usar os valores antigos de r e s (6 e 4) em vez dos atualizados.
Passo 4 — Executar a terceira iteração do laço
i=3. Continuamos a sequência, sempre com os valores mais recentes.
Por que esta fórmula: Mesma estrutura condicional.
De onde vem cada valor: = passo 3: 7 · = passo 3: 6 · = passo 3: 2
r = 6, s = 5, a = 1
NÃO CAIA NESSA!
Esquecer de atualizar a variável a, que é usada na condição e no final.
Passo 5 — Executar a quarta iteração do laço
i=4, a última iteração. Precisamos executar o bloco correto e obter os valores finais de r, s e a.
Por que esta fórmula: Mesma estrutura condicional.
De onde vem cada valor: = passo 4: 6 · = passo 4: 5 · = passo 4: 1
r = 5, s = 4, a = 0
NÃO CAIA NESSA!
Parar antes da última iteração ou errar a conta de subtração.
Passo 6 — Calcular o valor final de a
Após o laço, o algoritmo executa a atribuição final a = a + r + s. Precisamos aplicar essa operação com os valores obtidos no último passo.
Por que esta fórmula: É a instrução final do algoritmo, dada explicitamente.
De onde vem cada valor: = passo 5: 0 · = passo 5: 5 · = passo 5: 4
NÃO CAIA NESSA!
Esquecer de somar r e s, ou usar valores de passos anteriores.