Você está na página 1de 6

Disciplina: Programação I

Ano: 2019
Docente: Eng. Anderson Carlos dos Santos Baptista
Tema: Vectores Unidimensionais e Bidimensionais (Array)
Aula: VII

Vectores
Array é um conjunto de elementos em sequência, onde cada elemento
está associado a um valor inteiro não negativo que o identifica. Ao conjunto
dos números que identificam elementos, chamamos de índice, e este tem a
função de fazer com que todos os elementos tenham um número inteiro não
negativo e crescente.

Podemos utilizar um Array para armazenar qualquer tipo de dado,


porém, todos os elementos do Array, obrigatoriamente, irão armazenar o
mesmo tipo. Assim, nós temos que definimos qual o tipo que os elementos que
faram parte da nossa estrutura de dados irão ter.

Nós utilizamos o índice do Array das mais variadas formas e combinações,


até porque, acessar o valor de um elemento, alterar ou mesmo, efetuar
operações matemáticas é relativamente simples e pode ser feito de forma
individual ou através de um laço de repetição.

Declaração
A declaração de Array se distingue da declaração de variáveis pela
utilização de uma par de parênteses rectos após a definição do nome, por
exemplo:

int valor[10];

Acima, nós estamos dizendo que queremos uma variável, do tipo Array
de nome valor e que contenha 10 elementos do tipo inteiro. Logo, após a
declaração, já podemos acessar os elementos e atribuir valores a estes, isto
porque, um Array é uma estrutura de dados incorporada a linguagem C++ e
assim, dispensa inicialização.
Disciplina: Programação I
Ano: 2019
Docente: Eng. Anderson Carlos dos Santos Baptista
Tema: Vectores Unidimensionais e Bidimensionais (Array)
Aula: VII

Tecnicamente, temos que a definição é a seguinte:

<tipo> <nome> [];

Nós podemos declarar Arrays de qualquer tipo, primitivo ou composto,


sendo que com o tipo composto, seremos obrigados a criar uma nova instância
e atribuí-la a uma determinada posição.

Exemplo

#include <iostream>
using namespace std;

int main() {

int nums[10];

nums[0] = 100;
nums[1] = 99;
nums[2] = 50;
nums[3] = 25;
nums[4] = 4;
nums[5] = 5;
nums[6] = 60;
nums[7] = 0;
nums[8] = -1;
nums[9] = 9;

cout << nums[5] + nums[9] << endl;


cout << nums[0];

return 0;
}
Disciplina: Programação I
Ano: 2019
Docente: Eng. Anderson Carlos dos Santos Baptista
Tema: Vectores Unidimensionais e Bidimensionais (Array)
Aula: VII

Inicialização de Vectores
Um Array é um conjunto de valores dispostos em listas e acessíveis através
de um índice numérico positivo. Assim, temos que cada posição do nosso Array
é uma variável do tipo do nosso Array, sendo assim, temos que ter uma forma
para inicializar esse conjunto de variáveis.

O C++ fornece a capacidade de declararmos o conjunto de valores


iniciais delimitando-os através de um para de chaves, por exemplo:

int num[] = {1, 2, 3};

No código acima, nós estamos inicializando um Array de inteiros e


estamos definindo o valor para as 3 primeiras posições. Nesse caso, como não
informamos a quantidade de elementos que o nosso Array irá ter, o C++ irá
assumir que o mesmo possui somente 3 posições, até porque, só foram definidos
3 valores.

Nós também podemos iniciar um Array de inteiros atribuindo o valor 0 a


todos os elementos, por exemplo:

int num2[5] = {};

Agora, nós estamos dizendo que queremos uma Array de inteiros e que
todas as posições do nosso Array sejam inicializados com o valor igual a 0;

A principal vantagem de utilizar a estrutura Array, deve-se a capacidade


de podermos facilmente, percorrer todos os seus elementos e efetuarmos uma
determinada operação sobre os mesmos.

Então, de quase nada serviria essa estrutura se não fosse a nossa


capacidade de percorrer a mesma e processar elemento por elemento.
Disciplina: Programação I
Ano: 2019
Docente: Eng. Anderson Carlos dos Santos Baptista
Tema: Vectores Unidimensionais e Bidimensionais (Array)
Aula: VII

Assim, como o valor de uma variável será incrementado ou


decrementado, temos que iremos alterar o índice em que estamos
manipulando, logo, percorreremos todos os elementos da estrutura de maneira
bastante simples.

Exemplo

#include <iostream>
using namespace std;

int main() {

int preco[10] = {1,2,3};

preco[0] = 14.55;
preco[2] = 9.68;
preco[3] = 1.1;
preco[7] = 2;

for(int i = 0; i<=9; i++){


cout << preco[i] << endl;
}

return 0;
}

Array Bidimensional
Até agora, estávamos estudando os Arrays que continham uma única
dimensão, agora daremos início ao estudo dos Arrays multidimensionais, ou seja,
das estruturas que possuem duas ou mais dimensões.

Em suma, o funcionamento de estruturas bidimensionais, da-se de


maneira semelhante a estruturas com uma única dimensão. Assim, a principal
diferença entre ambas estruturas é a quantidade de dimensões necessárias que
devemos fornecer para que seja possível o acesso a cada elemento. Isso
Disciplina: Programação I
Ano: 2019
Docente: Eng. Anderson Carlos dos Santos Baptista
Tema: Vectores Unidimensionais e Bidimensionais (Array)
Aula: VII

porque, quanto mais dimensões, maiores são as quantidade de coordenadas


existentes para o acesso a cada elemento.

Logo, conclui-se que a complexidade no manuseio de estruturas


multidimensionais encontra-se no entendimento de como essas estruturas
funcionam e na eventual imaginação de como estamos acessando os
elementos. Salvo isso, a escrita e recuperação de valores é tão simples como
numa estrutura que contém uma única dimensão.

Exemplo

#include <iostream>

using namespace std;

int main() {

int tabela[2][2];
tabela[0][0] = 10;
tabela[0][1] = 100; //10, 100
tabela[1][0] = 20; //20, 111
tabela[1][1] = 111;

int tabela2[2][2] = { {10, 100},


{20, 111} };
cout << "{{" << tabela2[0][0] << "," << tabela2[0][1
] << "}, {" << tabela2[1][0] << "," << tabela2[1][1]
<< "}}" << endl;

return 0;
}
Disciplina: Programação I
Ano: 2019
Docente: Eng. Anderson Carlos dos Santos Baptista
Tema: Vectores Unidimensionais e Bidimensionais (Array)
Aula: VII

BIBLIOGRAFIA
Bjarne Stroustrup. The Design and Evolution of C++. [S.l.]:
Addison-Wesley, 1994. ISBN 0-201-54330-3.

Andrei Alexandrescu e Herb Sutter. C++ Design and


Coding Standards: Rules and Guidelines for Writing Programs.
[S.l.]: Addison-Wesley, 2004. ISBN 0-321-11358-6.

Rocha António, “Introdução a programação”, Editora


FCA, 2006

Você também pode gostar