SlideShare uma empresa Scribd logo
1 de 22
Estruturas de Dados Estáticas
1
Arrays
Vetores Matrizes
Arrays
O Um Vector (também muito conhecido por array) é um
conjunto de elementos consecutivos, todos do mesmo
tipo, que podem ser acedidos individualmente a partir de
um único nome e um índice.
2
Variáveis identificadas por um nome - reservados para guardar
um conjunto de elementos do mesmo tipo.
Acesso -- nome da variável e respectivo índice
O Arrays unidimensionais – vetores
O Arrays bidimensionais - matrizes
Arrays - Vetores
O Exemplos da utilização de arrays (vetores):
O Armazenamento de temperaturas médias anuais;
O Armazenamento de comissões mensais de um vendedor;
O Armazenamento de notas de um aluno ao longo do ano;
O Armazenamento de movimentações de capital;
3
Vectores (Arrays)
ORepresentação esquemática de um Array:
OO esquema representa um array com 5 posições
4
0 1 2 3 4
Vectores (Arrays)
O Declaração de um array:
tipo nome_variavel[numero_de_elementos];
O Onde:
O tipo: representa o tipo de dados dos elementos do
vector;
O nome_variavel: representa o nome do vector;
O numero_de_elementos: representa o número de
elementos que o vector poderá conter (tem de ser um
valor inteiro)
5
Vectores (Arrays)
O Exemplos de declarações de arrays:
O float renda[100];
O float: tipo de cada elemento do array;
O renda: nome do array;
O 100: número de elementos do array;
6
O Uso de Constantes para definir o tamanho de um vetor
#define TAM_MAX 10
float renda[TAM_MAX];
for(i=0; i<TAM_MAX; i++)
renda[i] = TAM_MAX - i; // coloca 5,4,3,2,1 no vetor
Vectores (Arrays)
OSe o array tem apenas um nome como
podemos aceder a cada elemento do array?
7
►Resposta: Através do seu índice.
12 123 1 14 0
0 1 2 3 4
int array_Exemplo[5];
array_Exemplo[0]=12;
array_Exemplo[3]=14;
Vectores (Arrays)
O Forma de aceder aos elementos de um array (cont.)
O nome_array[índide];
O Ex. array_Exemplo[1];
O Em que:
O nome_array: é o nome que foi definido para o array;
O índice: é a posição de um elemento do array.
O O valor do índice do primeiro elemento de um array é
sempre 0 (zero)
O Os índices de um array com n elementos variam sempre
entre 0 e n-1
8
12 123 1 14 0
0 1 2 3 4
int array_Exemplo[5];
Vectores (Arrays)
9
0 1 2 3 4 5 6 7 8 9
int array_Teste[10];
array_Teste[4] = 2;
array_Teste[7] = 5;
array_Teste[0] = array_Teste[4]+array_Teste[7];
array_Teste[array_Teste[4]]=6;
2 5
7 6
array_Teste[array_Teste[4]+3]=array_Teste[0];
7
Vectores (Arrays)
O Inicialização de arrays
O Um array pode ser inicializado com um
conjunto de valores:
O int arrayTeste[4]={12, 3, 332, 23};
O Se o nº de inicializações for inferior ao nº de
elementos do array, os elementos em falta serão
inicializados a 0.
O int arrayTeste[4]={1, 88, 99};
é equivalente a
int arrayTeste[4]={1, 88, 99, 0, 0};
10
Vectores (Arrays)
O Leitura de valores para um array em ciclo:
…
int x[8];
for(i=0;i<8;i++)
{
printf(“nDigite o elemento da posição %d”,i);
scanf(“%d”,&x[i]);
}
…
11
Vectores (Arrays)
O Impressão dos valores de um array:
…
printf(“nElementos do vetor:”);
for(i=0;i<8;i++)
{
printf(“n%d ”,x[i]);
}
…
12
Vectores (Arrays)
O Vantagens na utilização de arrays:
O Permitem manter os valores em memória;
O Reduzem a quantidade de variáveis;
O Cuidado:
O Quer durante a compilação, quer durante a execução, não é
verificado se os índices usados estão de acordo com a
dimensão declarada do array. É por isso possível declarar
um array com, por exemplo, 4 elementos, e tentar depois
aceder ao índice 5, o que levará a que ocorram problemas
de acesso à memória.
13
Vetores (Arrays)
OOperações com vetores
O Elabore um programa que faça a leitura da
distância percorrida em 5 viagens, guarda os
valores num vetor. De seguida faz a soma da
distância total percorrida.
O Elabore um programa que faça a leitura da
temperatura máxima de uma semana. Guarda os
valores lidos num vetor. De seguida calcula a
média da temperatura máxima daquela semana.
14
Vetores (Arrays)
OAlgoritmos de ordenação:
O Inserção (Insert Sort);
O Seleção (selection Sort);
O Bolha (Buble Sort)
OAlgoritmos de pesquisa
15
Vetores (Arrays)
OAlgoritmos de ordenação:
O Inserção (Insert Sort);
16
Vetores (Arrays)
OAlgoritmos de ordenação: Inserção (Insert Sort);
// Ordenação pelo método de inserção (Inserction Sort)
#include <stdio.h>
#define tamanho 5
main(){
int i, j, v[tamanho],min,aux;
for (i=0;i<tamanho;i++) {
printf("Preencha a posiçãodo%d do vetor-->",i);
scanf("%d",&v[i]); }
for(i=1; i<tamanho; i++) {
j = i;
while((j!=0)&&(v[j]<v[j-1])) {
aux=v[j];
v[j]=v[j-1];
v[j-1]=aux;
j--; }
}
for (i=0;i<tamanho;i++) {
printf("Elemento da posição %d =%dn",i, v[i]);
}
system("pause");
} 17
Vetores (Arrays)
OAlgoritmos de ordenação:
O Seleção (selection Sort);
18
Vetores (Arrays)
O Algoritmos de ordenação: Seleção (Selection Sort);
// Ordenação pelo método de Seleção (Selection Sort)
#include <stdio.h>
#define tamanho 5
main(){
int i, j, min, x[tamanho],aux;
for (i=0;i<tamanho;i++) {
printf("Preencha a posiçãodo%d do vetor-->",i);
scanf("%d",&x[i]); }
for (i=0; i<(tamanho-1);i++) {
min=i;
for(j=(i+1); j<tamanho; j++)
if(x[j]<x[min])
min=j;
if (i!=min) {
aux=x[i];
x[i]=x[min];
x[min]=aux; } }
for (i=0;i<tamanho;i++) {
printf("Elemento da posição %d =%dn",i, x[i]);
}
system("pause");
}
19
Vetores (Arrays)
OAlgoritmos de ordenação:
O Bolha (Buble Sort)
20
Vetores (Arrays)
O Algoritmos de ordenação: Seleção (Selection Sort);
// Ordenação pelo método de Troca (Bubble Sort, ou Método de Flutuação / Bolha)
#include <stdio.h>
#define tamanho 5
main(){
int i, j, min, b[tamanho],aux;
for (i=0;i<tamanho;i++) {
rintf("Preencha a posiçãodo%d do vetor-->",i);
scanf("%d",&b[i]); }
for(j=tamanho-1; j>=1; j--) {
for(i=0; i<j; i++) {
if(b[i] > b[i+1]) {
aux=b[i];
b[i]=b[i+1];
b[i+1]=aux; } } }
for (i=0;i<tamanho;i++) {
printf("Elemento da posição %d =%dn",i, b[i]);
}
system("pause");
}
21
Vetores (Arrays)
OAlgoritmos de pesquisa
22

Mais conteúdo relacionado

Semelhante a Arrays / Vetores / Matrizes em programação

Semelhante a Arrays / Vetores / Matrizes em programação (20)

Cap09
Cap09Cap09
Cap09
 
Cap09
Cap09Cap09
Cap09
 
Linguagem C - Vetores
Linguagem C - VetoresLinguagem C - Vetores
Linguagem C - Vetores
 
Trabalho vetores
Trabalho vetoresTrabalho vetores
Trabalho vetores
 
Vetores, Matrizes e Strings em C Parte 1
Vetores, Matrizes e Strings em C Parte 1Vetores, Matrizes e Strings em C Parte 1
Vetores, Matrizes e Strings em C Parte 1
 
Manipulacao de arrays
Manipulacao de arraysManipulacao de arrays
Manipulacao de arrays
 
Algoritmo 06 - Array e Matrizes
Algoritmo 06 - Array e MatrizesAlgoritmo 06 - Array e Matrizes
Algoritmo 06 - Array e Matrizes
 
Java8
Java8Java8
Java8
 
Vetores e Matrizes.pdf
Vetores e Matrizes.pdfVetores e Matrizes.pdf
Vetores e Matrizes.pdf
 
Curso de PHP - Arrays
Curso de PHP - ArraysCurso de PHP - Arrays
Curso de PHP - Arrays
 
Lp1 aula-5 array
Lp1  aula-5 arrayLp1  aula-5 array
Lp1 aula-5 array
 
Aula 13
Aula 13Aula 13
Aula 13
 
Algoritmos e Programação: Vetores
Algoritmos e Programação: VetoresAlgoritmos e Programação: Vetores
Algoritmos e Programação: Vetores
 
Arrays em java
Arrays em javaArrays em java
Arrays em java
 
Lp1 C# array
Lp1 C# arrayLp1 C# array
Lp1 C# array
 
Manual PSInf - Modulo 5
Manual PSInf - Modulo 5Manual PSInf - Modulo 5
Manual PSInf - Modulo 5
 
Arrays (vetores) em Java
Arrays (vetores) em JavaArrays (vetores) em Java
Arrays (vetores) em Java
 
mod4-estruturas-dadosestaticas-ordenacao
mod4-estruturas-dadosestaticas-ordenacaomod4-estruturas-dadosestaticas-ordenacao
mod4-estruturas-dadosestaticas-ordenacao
 
Lógica de Programação - Vetor
Lógica de Programação - VetorLógica de Programação - Vetor
Lógica de Programação - Vetor
 
4234 mysql
4234 mysql4234 mysql
4234 mysql
 

Mais de Jaime Martins

folha_de_calculo_7_Formulas ReferÊncias e Funções.ppt
folha_de_calculo_7_Formulas ReferÊncias e Funções.pptfolha_de_calculo_7_Formulas ReferÊncias e Funções.ppt
folha_de_calculo_7_Formulas ReferÊncias e Funções.pptJaime Martins
 
Direitos de Autor ficha trabalho.pdf
Direitos de Autor ficha trabalho.pdfDireitos de Autor ficha trabalho.pdf
Direitos de Autor ficha trabalho.pdfJaime Martins
 
Residências universitárias femininas
Residências universitárias femininasResidências universitárias femininas
Residências universitárias femininasJaime Martins
 

Mais de Jaime Martins (8)

folha_de_calculo_7_Formulas ReferÊncias e Funções.ppt
folha_de_calculo_7_Formulas ReferÊncias e Funções.pptfolha_de_calculo_7_Formulas ReferÊncias e Funções.ppt
folha_de_calculo_7_Formulas ReferÊncias e Funções.ppt
 
Direitos de Autor ficha trabalho.pdf
Direitos de Autor ficha trabalho.pdfDireitos de Autor ficha trabalho.pdf
Direitos de Autor ficha trabalho.pdf
 
Ficha 1 mariana-tic
Ficha 1 mariana-ticFicha 1 mariana-tic
Ficha 1 mariana-tic
 
teste-excel-pratico
teste-excel-praticoteste-excel-pratico
teste-excel-pratico
 
Residências universitárias femininas
Residências universitárias femininasResidências universitárias femininas
Residências universitárias femininas
 
Exercicios c
Exercicios cExercicios c
Exercicios c
 
Reality shows
Reality showsReality shows
Reality shows
 
CascãO O Colorido
CascãO O ColoridoCascãO O Colorido
CascãO O Colorido
 

Último

Dicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim RangelDicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim RangelGilber Rubim Rangel
 
Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Ilda Bicacro
 
Literatura Brasileira - escolas literárias.ppt
Literatura Brasileira - escolas literárias.pptLiteratura Brasileira - escolas literárias.ppt
Literatura Brasileira - escolas literárias.pptMaiteFerreira4
 
Ficha de trabalho com palavras- simples e complexas.pdf
Ficha de trabalho com palavras- simples e complexas.pdfFicha de trabalho com palavras- simples e complexas.pdf
Ficha de trabalho com palavras- simples e complexas.pdfFtimaMoreira35
 
A QUATRO MÃOS - MARILDA CASTANHA . pdf
A QUATRO MÃOS  -  MARILDA CASTANHA . pdfA QUATRO MÃOS  -  MARILDA CASTANHA . pdf
A QUATRO MÃOS - MARILDA CASTANHA . pdfAna Lemos
 
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfPRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfprofesfrancleite
 
COMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕES
COMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕESCOMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕES
COMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕESEduardaReis50
 
Revista-Palavra-Viva-Profetas-Menores (1).pdf
Revista-Palavra-Viva-Profetas-Menores (1).pdfRevista-Palavra-Viva-Profetas-Menores (1).pdf
Revista-Palavra-Viva-Profetas-Menores (1).pdfMárcio Azevedo
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...azulassessoria9
 
Rotas Transaarianas como o desrto prouz riqueza
Rotas Transaarianas como o desrto prouz riquezaRotas Transaarianas como o desrto prouz riqueza
Rotas Transaarianas como o desrto prouz riquezaronaldojacademico
 
Atividade sobre os Pronomes Pessoais.pptx
Atividade sobre os Pronomes Pessoais.pptxAtividade sobre os Pronomes Pessoais.pptx
Atividade sobre os Pronomes Pessoais.pptxDianaSheila2
 
Atividade - Letra da música Esperando na Janela.
Atividade -  Letra da música Esperando na Janela.Atividade -  Letra da música Esperando na Janela.
Atividade - Letra da música Esperando na Janela.Mary Alvarenga
 
Música Meu Abrigo - Texto e atividade
Música   Meu   Abrigo  -   Texto e atividadeMúsica   Meu   Abrigo  -   Texto e atividade
Música Meu Abrigo - Texto e atividadeMary Alvarenga
 
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptxJOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptxTainTorres4
 
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...IsabelPereira2010
 
2° ano_PLANO_DE_CURSO em PDF referente ao 2° ano do Ensino fundamental
2° ano_PLANO_DE_CURSO em PDF referente ao 2° ano do Ensino fundamental2° ano_PLANO_DE_CURSO em PDF referente ao 2° ano do Ensino fundamental
2° ano_PLANO_DE_CURSO em PDF referente ao 2° ano do Ensino fundamentalAntônia marta Silvestre da Silva
 
Manual da CPSA_1_Agir com Autonomia para envio
Manual da CPSA_1_Agir com Autonomia para envioManual da CPSA_1_Agir com Autonomia para envio
Manual da CPSA_1_Agir com Autonomia para envioManuais Formação
 
PROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdf
PROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdfPROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdf
PROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdfMarianaMoraesMathias
 
Discurso Direto, Indireto e Indireto Livre.pptx
Discurso Direto, Indireto e Indireto Livre.pptxDiscurso Direto, Indireto e Indireto Livre.pptx
Discurso Direto, Indireto e Indireto Livre.pptxferreirapriscilla84
 
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdfENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdfLeloIurk1
 

Último (20)

Dicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim RangelDicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim Rangel
 
Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"
 
Literatura Brasileira - escolas literárias.ppt
Literatura Brasileira - escolas literárias.pptLiteratura Brasileira - escolas literárias.ppt
Literatura Brasileira - escolas literárias.ppt
 
Ficha de trabalho com palavras- simples e complexas.pdf
Ficha de trabalho com palavras- simples e complexas.pdfFicha de trabalho com palavras- simples e complexas.pdf
Ficha de trabalho com palavras- simples e complexas.pdf
 
A QUATRO MÃOS - MARILDA CASTANHA . pdf
A QUATRO MÃOS  -  MARILDA CASTANHA . pdfA QUATRO MÃOS  -  MARILDA CASTANHA . pdf
A QUATRO MÃOS - MARILDA CASTANHA . pdf
 
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfPRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
 
COMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕES
COMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕESCOMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕES
COMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕES
 
Revista-Palavra-Viva-Profetas-Menores (1).pdf
Revista-Palavra-Viva-Profetas-Menores (1).pdfRevista-Palavra-Viva-Profetas-Menores (1).pdf
Revista-Palavra-Viva-Profetas-Menores (1).pdf
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
 
Rotas Transaarianas como o desrto prouz riqueza
Rotas Transaarianas como o desrto prouz riquezaRotas Transaarianas como o desrto prouz riqueza
Rotas Transaarianas como o desrto prouz riqueza
 
Atividade sobre os Pronomes Pessoais.pptx
Atividade sobre os Pronomes Pessoais.pptxAtividade sobre os Pronomes Pessoais.pptx
Atividade sobre os Pronomes Pessoais.pptx
 
Atividade - Letra da música Esperando na Janela.
Atividade -  Letra da música Esperando na Janela.Atividade -  Letra da música Esperando na Janela.
Atividade - Letra da música Esperando na Janela.
 
Música Meu Abrigo - Texto e atividade
Música   Meu   Abrigo  -   Texto e atividadeMúsica   Meu   Abrigo  -   Texto e atividade
Música Meu Abrigo - Texto e atividade
 
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptxJOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
 
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
 
2° ano_PLANO_DE_CURSO em PDF referente ao 2° ano do Ensino fundamental
2° ano_PLANO_DE_CURSO em PDF referente ao 2° ano do Ensino fundamental2° ano_PLANO_DE_CURSO em PDF referente ao 2° ano do Ensino fundamental
2° ano_PLANO_DE_CURSO em PDF referente ao 2° ano do Ensino fundamental
 
Manual da CPSA_1_Agir com Autonomia para envio
Manual da CPSA_1_Agir com Autonomia para envioManual da CPSA_1_Agir com Autonomia para envio
Manual da CPSA_1_Agir com Autonomia para envio
 
PROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdf
PROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdfPROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdf
PROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdf
 
Discurso Direto, Indireto e Indireto Livre.pptx
Discurso Direto, Indireto e Indireto Livre.pptxDiscurso Direto, Indireto e Indireto Livre.pptx
Discurso Direto, Indireto e Indireto Livre.pptx
 
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdfENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
 

Arrays / Vetores / Matrizes em programação

  • 1. Estruturas de Dados Estáticas 1 Arrays Vetores Matrizes
  • 2. Arrays O Um Vector (também muito conhecido por array) é um conjunto de elementos consecutivos, todos do mesmo tipo, que podem ser acedidos individualmente a partir de um único nome e um índice. 2 Variáveis identificadas por um nome - reservados para guardar um conjunto de elementos do mesmo tipo. Acesso -- nome da variável e respectivo índice O Arrays unidimensionais – vetores O Arrays bidimensionais - matrizes
  • 3. Arrays - Vetores O Exemplos da utilização de arrays (vetores): O Armazenamento de temperaturas médias anuais; O Armazenamento de comissões mensais de um vendedor; O Armazenamento de notas de um aluno ao longo do ano; O Armazenamento de movimentações de capital; 3
  • 4. Vectores (Arrays) ORepresentação esquemática de um Array: OO esquema representa um array com 5 posições 4 0 1 2 3 4
  • 5. Vectores (Arrays) O Declaração de um array: tipo nome_variavel[numero_de_elementos]; O Onde: O tipo: representa o tipo de dados dos elementos do vector; O nome_variavel: representa o nome do vector; O numero_de_elementos: representa o número de elementos que o vector poderá conter (tem de ser um valor inteiro) 5
  • 6. Vectores (Arrays) O Exemplos de declarações de arrays: O float renda[100]; O float: tipo de cada elemento do array; O renda: nome do array; O 100: número de elementos do array; 6 O Uso de Constantes para definir o tamanho de um vetor #define TAM_MAX 10 float renda[TAM_MAX]; for(i=0; i<TAM_MAX; i++) renda[i] = TAM_MAX - i; // coloca 5,4,3,2,1 no vetor
  • 7. Vectores (Arrays) OSe o array tem apenas um nome como podemos aceder a cada elemento do array? 7 ►Resposta: Através do seu índice. 12 123 1 14 0 0 1 2 3 4 int array_Exemplo[5]; array_Exemplo[0]=12; array_Exemplo[3]=14;
  • 8. Vectores (Arrays) O Forma de aceder aos elementos de um array (cont.) O nome_array[índide]; O Ex. array_Exemplo[1]; O Em que: O nome_array: é o nome que foi definido para o array; O índice: é a posição de um elemento do array. O O valor do índice do primeiro elemento de um array é sempre 0 (zero) O Os índices de um array com n elementos variam sempre entre 0 e n-1 8 12 123 1 14 0 0 1 2 3 4 int array_Exemplo[5];
  • 9. Vectores (Arrays) 9 0 1 2 3 4 5 6 7 8 9 int array_Teste[10]; array_Teste[4] = 2; array_Teste[7] = 5; array_Teste[0] = array_Teste[4]+array_Teste[7]; array_Teste[array_Teste[4]]=6; 2 5 7 6 array_Teste[array_Teste[4]+3]=array_Teste[0]; 7
  • 10. Vectores (Arrays) O Inicialização de arrays O Um array pode ser inicializado com um conjunto de valores: O int arrayTeste[4]={12, 3, 332, 23}; O Se o nº de inicializações for inferior ao nº de elementos do array, os elementos em falta serão inicializados a 0. O int arrayTeste[4]={1, 88, 99}; é equivalente a int arrayTeste[4]={1, 88, 99, 0, 0}; 10
  • 11. Vectores (Arrays) O Leitura de valores para um array em ciclo: … int x[8]; for(i=0;i<8;i++) { printf(“nDigite o elemento da posição %d”,i); scanf(“%d”,&x[i]); } … 11
  • 12. Vectores (Arrays) O Impressão dos valores de um array: … printf(“nElementos do vetor:”); for(i=0;i<8;i++) { printf(“n%d ”,x[i]); } … 12
  • 13. Vectores (Arrays) O Vantagens na utilização de arrays: O Permitem manter os valores em memória; O Reduzem a quantidade de variáveis; O Cuidado: O Quer durante a compilação, quer durante a execução, não é verificado se os índices usados estão de acordo com a dimensão declarada do array. É por isso possível declarar um array com, por exemplo, 4 elementos, e tentar depois aceder ao índice 5, o que levará a que ocorram problemas de acesso à memória. 13
  • 14. Vetores (Arrays) OOperações com vetores O Elabore um programa que faça a leitura da distância percorrida em 5 viagens, guarda os valores num vetor. De seguida faz a soma da distância total percorrida. O Elabore um programa que faça a leitura da temperatura máxima de uma semana. Guarda os valores lidos num vetor. De seguida calcula a média da temperatura máxima daquela semana. 14
  • 15. Vetores (Arrays) OAlgoritmos de ordenação: O Inserção (Insert Sort); O Seleção (selection Sort); O Bolha (Buble Sort) OAlgoritmos de pesquisa 15
  • 16. Vetores (Arrays) OAlgoritmos de ordenação: O Inserção (Insert Sort); 16
  • 17. Vetores (Arrays) OAlgoritmos de ordenação: Inserção (Insert Sort); // Ordenação pelo método de inserção (Inserction Sort) #include <stdio.h> #define tamanho 5 main(){ int i, j, v[tamanho],min,aux; for (i=0;i<tamanho;i++) { printf("Preencha a posiçãodo%d do vetor-->",i); scanf("%d",&v[i]); } for(i=1; i<tamanho; i++) { j = i; while((j!=0)&&(v[j]<v[j-1])) { aux=v[j]; v[j]=v[j-1]; v[j-1]=aux; j--; } } for (i=0;i<tamanho;i++) { printf("Elemento da posição %d =%dn",i, v[i]); } system("pause"); } 17
  • 18. Vetores (Arrays) OAlgoritmos de ordenação: O Seleção (selection Sort); 18
  • 19. Vetores (Arrays) O Algoritmos de ordenação: Seleção (Selection Sort); // Ordenação pelo método de Seleção (Selection Sort) #include <stdio.h> #define tamanho 5 main(){ int i, j, min, x[tamanho],aux; for (i=0;i<tamanho;i++) { printf("Preencha a posiçãodo%d do vetor-->",i); scanf("%d",&x[i]); } for (i=0; i<(tamanho-1);i++) { min=i; for(j=(i+1); j<tamanho; j++) if(x[j]<x[min]) min=j; if (i!=min) { aux=x[i]; x[i]=x[min]; x[min]=aux; } } for (i=0;i<tamanho;i++) { printf("Elemento da posição %d =%dn",i, x[i]); } system("pause"); } 19
  • 20. Vetores (Arrays) OAlgoritmos de ordenação: O Bolha (Buble Sort) 20
  • 21. Vetores (Arrays) O Algoritmos de ordenação: Seleção (Selection Sort); // Ordenação pelo método de Troca (Bubble Sort, ou Método de Flutuação / Bolha) #include <stdio.h> #define tamanho 5 main(){ int i, j, min, b[tamanho],aux; for (i=0;i<tamanho;i++) { rintf("Preencha a posiçãodo%d do vetor-->",i); scanf("%d",&b[i]); } for(j=tamanho-1; j>=1; j--) { for(i=0; i<j; i++) { if(b[i] > b[i+1]) { aux=b[i]; b[i]=b[i+1]; b[i+1]=aux; } } } for (i=0;i<tamanho;i++) { printf("Elemento da posição %d =%dn",i, b[i]); } system("pause"); } 21

Notas do Editor

  1. P.S.I - Programação e Sistemas de Informação