12.º anoPercurso edumaterial
O que vais aprender
- Usar ciclos com invariante e critério de paragem observável.
Compreender
Num array de cinco posições indexadas desde zero, os índices válidos são 0 a 4. O ciclo de verificação das etiquetas deve começar em 0, avançar uma posição de cada vez e parar antes do índice 5. A condição «índice menor que comprimento» cobre as cinco etiquetas; «menor ou igual» tentaria aceder a uma sexta posição inexistente.
A lista de cinco etiquetas tem comprimento 5, mas o último índice é 4. Se a condição de continuação for índice menor que comprimento, a execução percorre cinco posições válidas. Menor ou igual acrescentaria uma sexta tentativa fora da lista. A atualização do índice deve ocorrer em todos os caminhos; caso contrário, uma etiqueta problemática pode prender o programa num ciclo infinito. A frase «A condição índice menor ou igual a cinco executa exatamente as cinco etiquetas disponíveis.» ultrapassa aquilo que foi demonstrado. Para a corrigir, é necessário traçar os valores numa tabela e testar também listas vazias antes de fechar o algoritmo. A decisão resulta da comparação entre o dado, o conceito e a condição que ficou por testar.
Para cinco etiquetas indexadas de 0 a 4, o ciclo deve começar em 0, aumentar uma unidade por volta e parar quando o índice alcançar 5. A condição índice < 5 visita todos os elementos sem tentar aceder à posição 5. O invariante pode ser: antes de cada volta, já foram examinadas exatamente as etiquetas de índices menores que o atual. Esse enunciado explica por que a contagem está completa na paragem, inclusive se a lista for vazia.
Exemplo resolvido
No ciclo da teoria que visita as cinco etiquetas de índices 0 a 4, conta quantos índices pares aparecem antes da paragem.
- Escrevo o traço do ciclo válido: 0, 1, 2, 3, 4; o valor 5 só serve para testar a paragem.
- Seleciono os índices divisíveis por dois no traço: 0, 2 e 4.
- Conto três visitas pares e confirmo que não li a posição 5, que estaria fora da lista.
O ciclo visita três índices pares, 0, 2 e 4, antes de terminar.
Atenção ao erro
A condição índice menor ou igual a cinco executa exatamente as cinco etiquetas disponíveis.

Verifica agora
Que índices visita o ciclo correto e qual é o primeiro índice inválido?
Ver solução explicada
Resposta: Visita 0, 1, 2, 3 e 4; o primeiro índice inválido é 5.
Traça todas as iterações e identifica a fronteira.
Um colega toma a seguinte conclusão como demonstrada: «A condição índice menor ou igual a cinco executa exatamente as cinco etiquetas disponíveis.». Localiza o salto e corrige a frase.
Ver solução explicada
Resposta: A conclusão excede o recorte. O ciclo precisa de índice inicial, atualização e limite; após verificar a etiqueta quatro deve terminar. Se o índice aumenta uma unidade por volta, cinco iterações cobrem exatamente 0, 1, 2, 3 e 4.
Refuta a inferência com uma condição concreta do caso.
Se forem adicionadas duas etiquetas ao contador, qual é o último índice válido e qual condição substitui índice < 5?
Ver solução explicada
Resposta: Com sete etiquetas, os índices válidos vão de 0 a 6; o ciclo deve usar índice < 7 e parar antes de tentar a posição 7.
Recalcula o limite a partir do comprimento, sem usar o último índice como condição inclusiva errada.
Indica o traço dos índices visitados e do primeiro valor de paragem para a lista original de cinco etiquetas.
Ver solução explicada
Resposta: O traço das visitas é 0, 1, 2, 3, 4; depois do incremento final o índice vale 5, a condição índice < 5 torna-se falsa e não há sexta leitura.
Distingue visitas efetivas do valor usado apenas para terminar.
Alinhamento curricular e fontes
- Introdução à programação, estruturas repetitivas, página 6. Objetivo oficial parafraseado: Usar ciclos com invariante e critério de paragem observável.. O exemplo, a sequência e os exercícios são editoriais. · Aprendizagens Essenciais · aplicacoes-informaticas-b · 12-ano

