Você está na página 1de 21

ALGORITMOS

PROFESSOR MATHEUS CONCEIÇÃO DA SILVA


CLASSIFICAÇÃO DAS ESTRUTURAS DE DADOS
HOMOGÊNEAS

Na aula anterior, exploramos as estruturas de dados homogêneas, especialmente as


unidimensionais, como os vetores. Eles são variáveis compostas por vários espaços de
armazenamento, e para acessar cada espaço individual, precisamos utilizar um índice
específico. Esses índices funcionam como endereços para cada elemento dentro da estrutura,
permitindo a manipulação e recuperação dos dados armazenados em posições específicas.
CLASSIFICAÇÃO DAS ESTRUTURAS DE DADOS
HOMOGÊNEAS

Os vetores são estruturas unidimensionais, o que significa que têm apenas uma
dimensão. Para acessar os espaços de armazenamento nos vetores, é necessário fornecer
apenas um índice.
Por outro lado, as matrizes são estruturas homogêneas, mas possuem duas
dimensões ou mais. No caso das matrizes bidimensionais, como o nome sugere, elas têm
duas dimensões, o que significa que os dados são organizados em linhas e colunas. Agora,
você terá a oportunidade de trabalhar e explorar mais especificamente as matrizes
bidimensionais.
CLASSIFICAÇÃO DAS ESTRUTURAS DE DADOS
HOMOGÊNEAS

As matrizes bidimensionais podem ser exemplificadas por tabelas. Você se lembra


das tabelas estudadas durante o curso de Introdução às Tecnologias da Informação? Em uma
tabela, cada local de armazenamento (célula) exige duas informações para determinar seu
endereço. Em planilhas, uma dessas informações identifica a coluna, geralmente por letras,
enquanto as linhas são representadas por números.
CLASSIFICAÇÃO DAS ESTRUTURAS DE DADOS
HOMOGÊNEAS
CLASSIFICAÇÃO DAS ESTRUTURAS DE DADOS
HOMOGÊNEAS

Vejamos a mesma imagem com alguns espaços estão preenchidos na tabela. Na


primeira linha, as colunas A, B e C estão ocupadas. Já na sexta linha, apenas a coluna E está
ocupada. Na linha 10, o espaço da coluna H está preenchido. Para acessar um desses
espaços, é essencial especificar a coluna e a linha desejadas.
CLASSIFICAÇÃO DAS ESTRUTURAS DE DADOS
HOMOGÊNEAS
CLASSIFICAÇÃO DAS ESTRUTURAS DE DADOS
HOMOGÊNEAS

Nas matrizes, que são estruturas de dados homogêneas bidimensionais comumente


usadas em linguagens de programação, os endereços de cada espaço na tabela são
geralmente definidos por índices numéricos. No entanto, em algumas linguagens, é possível
definir índices usando outros tipos de dados. No Portugol, especificamente, ambos os índices
serão sempre valores inteiros.
CLASSIFICAÇÃO DAS ESTRUTURAS DE DADOS
HOMOGÊNEAS

Conforme explicado, uma matriz bidimensional pode ser visualizada como uma
tabela. Há uma representação de uma matriz, onde os índices são números inteiros dispostos
acima e à esquerda da tabela.
Na matriz, dentro de cada espaço (quadrado), há dois números: o primeiro indica o
número da linha e o segundo, o número da coluna. Lembra-se de que na aula sobre vetores,
mencionamos que os índices em Portugol começam a partir do valor 0 (zero)? O mesmo
princípio se aplica às matrizes, onde o primeiro índice (tanto para linhas quanto para colunas)
é sempre zero. Nesse exemplo, temos uma matriz de cinco colunas e três linhas.
CLASSIFICAÇÃO DAS ESTRUTURAS DE DADOS
HOMOGÊNEAS
SINTAXE DE MATRIZES

Em Portugol, a declaração de uma matriz bidimensional do tipo texto com 5 linhas e


10 colunas se assemelha à declaração de um vetor, mas com a adição de dois valores inteiros
separados por vírgula para indicar as dimensões da matriz. Um exemplo dessa declaração
seria algo assim:
SINTAXE DE MATRIZES

Essa declaração cria a variável "matrizTexto" como uma matriz com 5 linhas e 10
colunas, capaz de armazenar texto em cada célula.
SINTAXE DE MATRIZES

Exato, os índices entre colchetes em um vetor ou matriz indicam a posição que se


deseja acessar na variável. Para as matrizes bidimensionais, é necessário informar dois
índices: um para a linha e outro para a coluna. Veja como seria a sintaxe para acessar a
terceira linha e a segunda coluna do vetor "matriz_aluno", armazenar o nome de um aluno e,
em seguida, exibir na tela o nome armazenado:
SINTAXE DE MATRIZES

Supondo que "matriz_aluno" seja a matriz de texto e queremos acessar a terceira


linha e segunda coluna:

Isso atribuirá o nome "Nome do Aluno" à terceira linha e segunda coluna da matriz
"matriz_aluno" e, em seguida, exibirá esse nome na tela.
SINTAXE DE MATRIZES

Nos vetores é possível substituir o índice numérico por uma variável primitiva do tipo
inteiro, permitindo assim o uso de estruturas de repetição para simplificar a manipulação dos
dados. Essa mesma abordagem se aplica às matrizes, porém, para acessar todas as posições
(espaços da matriz), são necessárias duas estruturas de repetição: uma para controlar os
índices das linhas e outra para os índices das colunas. Isso é essencial para percorrer toda a
matriz e acessar cada célula individualmente.
SINTAXE DE MATRIZES

Nesse exemplo,
temos uma matriz chamada
"alunosNotas" com 5 linhas
(alunos) e 3 colunas
(disciplinas), onde cada linha
armazenará as notas de 3
disciplinas para cada aluno.
SINTAXE DE MATRIZES
Visualizando a representação gráfica
da matriz "notas_de_3disciplinas[ ][ ].",
perceba que à esquerda temos os
marcadores L1, L2, L3, L4 e L5, que
correspondem às linhas numeradas de 1 a 5.
Imediatamente ao lado, estão os índices
correspondentes, variando de 0 a 4, utilizados
para referenciar cada uma dessas linhas. Por
exemplo, para acessar a última linha (L5),
seria necessário utilizar o índice 4 dentro do
primeiro conjunto de colchetes na variável
notas_de_3disciplinas[ ][ ].
SINTAXE DE MATRIZES
Na parte superior, encontram-se as
designações C1, C2 e C3, correspondentes às
colunas 1, 2 e 3, respectivamente. Logo abaixo
dessas designações, são apresentados os índices
associados a cada coluna, variando de 0 a 2. Para
referenciar uma coluna específica, é necessário
inserir o índice correspondente ao segundo
conjunto de colchetes na variável
notas_de_3disciplinas[ ][ ]. É importante ressaltar
que ao acessar qualquer posição em uma matriz,
ambos os índices (tanto o da linha quanto o da
coluna) devem ser fornecidos para indicar
USO DE MATRIZES

Matrizes são comumente empregadas para armazenar dados que precisam ser
referenciados por mais de um índice. Um exemplo claro disso são as imagens digitais visualizadas
em computadores, tablets ou celulares. Uma imagem é composta por inúmeros pontos de dados,
alinhados lado a lado, e cada um desses pontos é identificado por um par de coordenadas,
indicando suas posições nas linhas e colunas da matriz. Nos contextos de imagens digitais, a
informação armazenada em cada um desses pontos corresponde à cor que o ponto deve
apresentar.
USO DE MATRIZES

De fato, as matrizes são fundamentais na resolução de diversos problemas


computacionais que requerem representações multidimensionais de dados. Exemplos dessas
aplicações são encontrados em jogos, como um tabuleiro de xadrez, em gráficos computacionais,
em sistemas de equações, como na construção de matrizes e na álgebra linear, e em uma ampla
gama de outras situações onde estruturas de dados multidimensionais são necessárias para
solucionar problemas específicos.
REFERÊNCIAS

ASCENCIO, Ana Fernanda Gomes; CAMPOS, Edilene Aparecida Veneruchi de. Fundamentos da
programação de computadores: algoritmos, Pascal e C/C++ (Padrão Ansi) e Java. 3. ed. São
Paulo: Pearson Education do Brasil, 2012.

CORMEN,Thomas H et al. Algoritmos: teoria e prática. trad. 2ª.ed. Rio de Janeiro:


Campus/Elsevier, 2002.

Você também pode gostar