VisuAlg Web

Listas no Visual Cobra: índices e repetição

Encontrar o maior valor quando todos são negativos em Visual Cobra. Execute o exemplo, confira o resultado e pratique os casos de limite no VisuAlg Web.

No Visual Cobra, vetores são listas e começam no índice 0. Isso muda em relação ao VisuAlg, que normalmente trabalha com vetores iniciando em 1.

Exemplo de códigoVisual Cobra
# Cria uma lista com 3 nomes
nomes = ["Ana", "Carlos", "João"]

# Em Python, listas são indexadas a partir de 0
escreva("A pessoa na gaveta 2 é:", nomes[1])
Exemplo de códigoVisual Cobra


notas = [0.0] * 4
soma = 0.0

# Lendo todas as gavetas rapidamente
para i em intervalo(0, 4):
    notas[i] = real(leia(f"Digite a nota do aluno {i+1}: "))
    soma = soma + notas[i]

escreva("A média da turma foi:", soma / 4)

Índice zero e último elemento

Uma lista com três elementos ocupa os índices 0, 1 e 2. O índice 3 já está fora dela. No VisuAlg você declara o intervalo do vetor; no Visual Cobra, a lista segue a indexação do Python. Não copie os limites de uma linguagem para outra sem conferir essa diferença.

Exemplo: somar as notas da lista

intervalo(0, 3) inclui o zero e exclui o três. Assim, cada posição válida é visitada uma vez e o acumulador conserva a soma.

Exemplo de códigoVisual Cobra
notas = [6, 7, 8]
soma = 0
para indice em intervalo(0, 3):
    soma = soma + notas[indice]
escreva("Soma:", soma)
escreva("Última:", notas[2])

A saída é Soma: 21 e Última: 8. Experimente trocar uma nota por zero: a quantidade de elementos continua três, apenas o total muda.

Erro comum: acessar uma posição inexistente

Se trocar notas[2] por notas[3], o acesso ultrapassa a lista. Confira o tamanho e os limites antes de alterar o laço. Estude também PARA no Visual Cobra e compare com os vetores do VisuAlg.

Encontrar o maior valor quando todos são negativos

Uma lista reúne valores em posições numeradas a partir de zero. Para buscar o maior, comece com um elemento real da lista e compare os demais. Iniciar maior com zero daria uma resposta incorreta para uma lista formada só por números negativos. O primeiro elemento tem índice zero; o último fica no índice tamanho menos um. A repetição pelos próprios valores dispensa controlar um índice quando você só precisa compará-los.

Preserve a indentação dos blocos ao modificar este exemplo em Visual Cobra.

Exemplo de códigoVisual Cobra
valores = [-8, -3, -12]
maior = valores[0]
para valor em valores:
    se valor > maior:
        maior = valor
escreva("Maior:", maior)

Resultado esperado e testes

Execute o exemplo sem fornecer entradas. A saída deve ser:

Maior: -3

Teste uma lista com um único valor e outra com valores repetidos. Uma lista vazia não tem posição zero: antes de usar este algoritmo com dados variáveis, trate esse caso explicitamente. Como exercício, conte quantas vezes o maior aparece. Preveja a saída com [-3, -3, -8] antes de escrever o contador.

Depois, compare o raciocínio com a versão do mesmo assunto nas outras linguagens do menu.