terça-feira, 16 de dezembro de 2014

Brincando.Dev("VETORES E MATRIZES");

Diego diz: Grande usuário! Hoje falaremos um pouco do chamados VETORES e MATRIZES, partiu?
Usuário diz: Partiu!!!

Diego diz: Primeiramente, o que são vetores e matrizes?


Diego diz:  Vetores e Matrizes são Arrays ou seja, são estrutura de dados utilizadas para armazenar coleções de elementos do mesmo tipo, onde esses elementos são acessados através de chaves ou índices, que apontam para o endereço do valor armazenado na memória. Essas estruturas, guardam o valor das coleções de forma consecutiva na memória, ou seja, o primeiro elemento do vetor ou matriz ficará armazenado no endereço 0x00000001 (um), o segundo elemento no 0x00000002 (dois), o terceiro elemento na posição 0x00000003 (três) e assim por diante.

Usuário diz: Então qual a diferença entre vetores e matrizes?
Diego diz: Boa pergunta Usuário. Bom, a principal diferença entre essas duas estrutura de dados, é que um vetor é um array unidimensional ou seja, possui apenas uma dimensão, onde os valores podem ser armazenados/referenciados da seguinte forma:
             
                Linguagem C:


Diego diz: Note que, o vetor possui tamanho igual a 5 que é definido pela macro chamada TAM_MAX (Uma macro nada mais é que um padrão de entrada que será substituído por um padrão de saída, exemplo padrão de entrada TAM_MAX logo onde aparecer no código a nomeação TAM_MAX, ela será substituída pela saída que é igual a 5), isso implica que o vetor terá 5 posições na memória para armazenar valores do tipo inteiro. Ao compilarmos esse código, teremos a seguinte saída:

                               

Os 5 primeiros valores que são mostrados, são as entradas lidas no primeiro laço de repetição pela função scanf, onde o valor do incremento i define qual a posição no vetor será inserido o valor lido, o vetor começa na posição 0 e vai até a posição 4, assim é possível perceber que esse vetor contem 5 posições (0,1,2,3 e 4).

A saída, mostra o valor contido em cada posição desse vetor, e o endereço na memória de cada valor.

Usuário diz: Muito massa cara! Mas e quanto a Matrizes??
Diego diz: Matrizes assim como vetores, são arrays, no entanto matrizes possuem 2 dimensões, sendo chamadas de arrays bidimensionais ou multidimensionais. Matrizes bidimensionais possuem índices referidos por linha-coluna, onde o primeiro índice indica a linha e segundo indica a coluna. Ex:

Uma Matriz[4:4] bidimensional matematicamente falando é representada da seguinte forma:

  Matriz =  a11  a12  a13  a14
                a21  a22  a23  a24
                a31  a32  a33  a34
                a41  a42  a43  a44

E para programação, a matriz segue a mesma ordem de formação. Repare no exemplo abaixo:

                                              C



No código escrito em C, pode-se observar que existe uma variável com o nome matriz[][], que tamanho definido pela macro TAM_MAX, como o numero de colunas e o numero de linhas serem o mesmo, então trata-se de uma matriz quadrada, para esse exemplo foi utilizado a função rand() para o preenchimento de valores na matriz. A variável de incremento i representa as linhas e a variável j representa as colunas.

Usuário diz: Ah que bacana, e como eu faço para ver os valores dessa matriz, do jeito que você mostrou com o vetor?

Diego diz: Aii que ta, esse será um desafio que proponho a você Usuário! Crie um código em que nele exista uma matriz quadrada de qualquer ordem, e que seus valores sejam preenchidos randomicamente e que após preenchida toda a matriz, você possa exibir na tela todo o conteúdo nela existente. Demoro??

Usuário diz: Moleeza! Vamo que vamo! Qualquer duvida, te chamo aqui no blog!
Diego diz: Excelente! Boa sorte!




Nenhum comentário:

Postar um comentário