Neste artigo
Um vetor (ou array) é uma variável que guarda vários valores, um ao lado do outro, cada um em uma posição numerada. Uma matriz é um vetor de vetores: os valores ficam organizados em linhas e colunas, como em uma tabela.
Lá na série sobre as características de uma linguagem de programação, você aprendeu a guardar um valor em uma variável. Só que no mundo real a gente quase nunca trabalha com um valor só, não é verdade? São as notas de uma turma inteira, os produtos de um carrinho de compras, os contatos do seu celular… É aí que entram os vetores!!!
Como funciona um vetor?
Para você nunca mais esquecer, pense em um gaveteiro. O móvel inteiro tem um nome só, mas cada gaveta tem o seu número. Se eu pedir “pega o que está na gaveta 2”, você sabe exatamente onde procurar. O vetor é esse gaveteiro: um nome só para a variável e um número para cada posição. Esse número se chama índice.
Agora vem o detalhe que pega TODO iniciante kkkk: na maioria das linguagens, a primeira gaveta não é a de número 1. É a de número 0! Grave bem isso: o índice começa em zero. Veja como fica um vetor com quatro notas:
| Índice | 0 | 1 | 2 | 3 |
|---|---|---|---|---|
| Valor | 7.5 | 8.0 | 6.5 | 9.0 |

Como criar e percorrer um vetor?
Vamos para o código. Como sempre faço por aqui, vou mostrar o mesmo exemplo em mais de uma linguagem, para você focar no conceito e não na linguagem. O programa guarda quatro notas e calcula a média. Primeiro em PHP:
<?php
$notas = [7.5, 8.0, 6.5, 9.0];
echo $notas[0], PHP_EOL; // 7.5 (a primeira posição é a 0)
echo count($notas), PHP_EOL; // 4
$soma = 0;
foreach ($notas as $nota) {
$soma += $nota;
}
echo $soma / count($notas), PHP_EOL; // 7.75
Agora o mesmo programa em Python:
notas = [7.5, 8.0, 6.5, 9.0]
print(notas[0]) # 7.5 (a primeira posição é a 0)
print(len(notas)) # 4
soma = 0
for nota in notas:
soma += nota
print(soma / len(notas)) # 7.75
E em C, onde você precisa avisar o tamanho do vetor logo na criação:
#include <stdio.h>
int main(void) {
float notas[4] = {7.5, 8.0, 6.5, 9.0};
float soma = 0;
for (int i = 0; i < 4; i++) {
soma += notas[i];
}
printf("%.2f\n", soma / 4); // 7.75
return 0;
}
Percebe que as três versões fazem a mesma coisa? Criam o vetor, pegam um valor pelo índice e usam um laço de repetição para passar por todas as posições. Vetor e laço andam sempre juntos!
Uma curiosidade: no PHP, o array é mais flexível que o vetor clássico. O manual oficial explica que ele é, na verdade, um mapa ordenado, que relaciona valores a chaves. Por isso o PHP deixa você usar até texto como índice. Mas isso é assunto para outro artigo kkkk.
E a matriz, o que é?
Se o vetor é um gaveteiro, a matriz é uma planilha: tem linhas e colunas. Para achar um valor você precisa de dois índices: primeiro a linha, depois a coluna. Veja um jogo da velha em PHP:
<?php
$tabuleiro = [
['X', 'O', 'X'],
['O', 'X', 'O'],
['O', 'X', 'X'],
];
echo $tabuleiro[1][2], PHP_EOL; // O (linha 1, coluna 2)
A linha 1 é a segunda linha (lembra do zero?) e a coluna 2 é a terceira coluna. Por isso o resultado é O. Sacou?

| Vetor | Matriz | |
|---|---|---|
| Formato | Uma fila de valores | Linhas e colunas |
| Índices | Um: a posição | Dois: a linha e a coluna |
| Exemplo | Notas de um aluno | Tabuleiro, planilha, imagem |
Quais são os erros mais comuns com vetores?
- Esquecer que o índice começa em zero. Em um vetor de 4 posições, a última é a de índice 3, não 4.
- Pedir uma posição que não existe. Testei aqui: o PHP 8 mostra o aviso
Undefined array key 4e o Python interrompe o programa comIndexError: list index out of range. O C é o mais perigoso: ele não avisa nada e lê o que estiver naquele pedaço da memória. - Trocar a ordem na matriz. É sempre linha primeiro, coluna depois.
Onde vetores e matrizes aparecem no dia a dia?
Em todo lugar!!! Lista de produtos, resultado de uma consulta ao banco de dados, pixels de uma imagem, as casas de um tabuleiro… Vetores e matrizes também são a base de quase todas as estruturas de dados, como a pilha, e de exercícios clássicos como o Hourglass Sum.
Agora é com você!
Crie um vetor com as temperaturas dos sete dias da semana e descubra a maior delas percorrendo o vetor com um laço. Escolha a linguagem que quiser.
Um pedido: não copie e cole, e não peça a resposta pronta para ninguém antes de tentar. Digite, rode, erre e corrija. É assim que o conceito sai da tela e vai para a sua cabeça. Você tem a mesma capacidade de qualquer programador, o que falta é só treino!
No próximo artigo vamos falar sobre funções, que é o jeito de dar nome a um pedaço de código para usar quantas vezes você quiser. Até lá!
Confiança Sempre!!!
Fontes:
- Manual do PHP. Arrays.
- Documentação do Python. Estruturas de dados.

Continue a conversa