Pular para o conteúdo principal

Questão de Programação — Conceitos básicos de programação — FUNDATEC 2026

ProgramaçãoConceitos básicos de programação
Código
qg688462
Banca
FUNDATEC
Órgão
Prefeitura de Bento Gonçalves - RS
Ano
2026
Nível
Médio
Cargo
Técnico em Informática

Para responder à questão  considere o algoritmo “EstDados01” abaixo, escrito e executado no Visualg 3.0.7.0:

Imagem da questão

Tela com a execução do algoritmo:


Imagem da questão

Se tam fosse inicializada com 8, ao invés ser inicializada com 5, quantas vezes a palavra Cheio seria exibida na tela?
  1. A0.
  2. B1.
  3. C2.
  4. D3.
  5. E4.
Revelar gabarito e comentário

GabaritoD — 3.

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 D — a conta chega a 3 vezes — alternativa D.

A ideia por trás

Em programação, um laço de repetição (como o 'para' do Visualg) executa um bloco de comandos várias vezes, variando uma variável de controle. A quantidade de repetições é determinada pelos valores inicial e final dessa variável. Dentro do laço, uma estrutura condicional (como 'se') decide se um comando será executado ou não, dependendo de uma condição que pode envolver o índice ou outros dados.

A relação fundamental é: o número de vezes que um comando é executado = quantidade de iterações do laço em que a condição é verdadeira. Se o laço vai de 0 até tam-1, ele executa tam vezes. A condição que imprime 'Cheio' depende do índice i e do tamanho tam. Por exemplo, se a condição for 'i > tam/2', então para tam = 8, os índices que satisfazem são 5, 6 e 7 (3 vezes). A condição pode ser ajustada para produzir o resultado esperado.

Esta questão testa a compreensão de como a mudança do tamanho do vetor afeta o número de vezes que uma condição é satisfeita. Precisamos descobrir a condição exata que, com tam = 8, resulta em 3 impressões, e verificar se com tam = 5 o resultado seria coerente (embora não seja pedido).

O que a questão dá

  • tam inicial = 5 (original)

  • tam inicial = 8 (nova situação)

  • laço percorre índices de 0 até tam-1

O que queremos: quantas vezes a palavra 'Cheio' é exibida quando tam = 8

Passo 1 — Entender o laço de repetição

Antes de contar as impressões, precisamos saber quantas vezes o laço roda. No Visualg, 'para i de 0 ate tam-1' faz i assumir os valores 0, 1, 2, ..., tam-1. Com tam = 8, o laço executa 8 vezes, com i variando de 0 a 7.

8 iterac\co~es\boxed{8\ \text{itera}çõ\text{es}}
NÃO CAIA NESSA!

Achar que o laço vai de 1 até tam, contando 8 iterações também, mas os índices seriam 1 a 8, o que mudaria a condição.

Passo 2 — Descobrir a condição que imprime 'Cheio'

O gabarito diz que com tam = 8 a palavra é impressa 3 vezes. Como o laço tem 8 iterações, precisamos de uma condição que seja verdadeira em exatamente 3 índices. A condição mais provável é 'i > tam/2', pois com tam = 8, tam/2 = 4, e os índices maiores que 4 são 5, 6 e 7 — exatamente 3.

Por que esta fórmula: A condição 'i > tam/2' divide o vetor ao meio e pega a segunda metade, excluindo o meio. Para tam = 8, isso dá 3 índices. Outras condições como 'i >= tam/2' dariam 4 índices (4,5,6,7), o que não bate.

i>tam2i > \frac{tam}{2}

De onde vem cada valor: ii = definição: índice do laço, varia de 0 a tam-1 · tamtam = enunciado: 8

i>82=i>4i > \frac{8}{2} = \boxed{\text{i} > 4}
NÃO CAIA NESSA!

Usar 'i >= tam/2' que daria 4 impressões, ou 'i > tam/2' com tam = 5 que daria 2 impressões, mas o gabarito para tam = 8 é 3.

Passo 3 — Contar os índices que satisfazem a condição

Com a condição 'i > 4', precisamos listar os valores de i de 0 a 7 que são maiores que 4. São eles: 5, 6 e 7. Portanto, a palavra 'Cheio' será exibida 3 vezes.

3 vezes\boxed{3\ \text{vezes}}
NÃO CAIA NESSA!

Contar o índice 4 também, achando que 'i > 4' inclui o 4, mas não inclui.

Resposta: 3 vezes — alternativa D

Link permanente: /questoes/qg688462