Buscar

Notas sobre vetor e matriz

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 24 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 24 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 24 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Estrutura de Dados: Vetores 
A 1
Enquanto
n <= 20
Se
Fim
Prof. Dr. Raimundo J. Macário Costa 
(UEZO/UFRJ/UNESA) 
2012.1 
Ca
p. 6 
- 2 
Estruturas de Dados: Vetores 
 Objetivo: 
 Estudar as estruturas de dados estáticas e 
homogêneas (vetores e matrizes); 
 Estudar as operações que estas suportam e 
algumas aplicações básicas. 
 Introduzir as estruturas de dados; 
Conceito de vetores; 
Conceito de matrizes. 
Ca
p. 6 
- 3 
Estruturas Indexadas 
 Nos casos em que é necessário ou conveniente 
representar os dados em termos de conjuntos de 
valores; 
 Os elementos individuais da estrutura são identificados 
com o auxílio de índices; 
 Vetor: uma coleção de variáveis de um mesmo tipo que 
compartilham o mesmo nome e ocupam posições 
consecutivas de memória. 
 Cada variável da coleção denomina-se elemento e é 
identificada por um índice. 
Ca
p. 6 
- 4 
Estruturas Indexadas 
Ca
p. 6 
- 5 
Declaração de Vetor 
 Um vetor é declarado definindo-se seu nome, tipo e 
tamanho; 
 Representação da declaração de um vetor em 
pseudódigo: 
 V : vetor [0..N] de inteiros 
 Essa declaração define uma variável chamada V que pode 
armazenar um conjunto de números inteiros que serão 
identificados como V[0], V[1], V[2], ..., V[N], 
 
<tipo> [ ] <identificador> = new <tipo> [n]; 
OU 
<tipo> <identificador> [ ] = new <tipo> [n]; 
Ca
p. 6 
- 6 
Acesso e Atribuição de Valores 
Meses : vetor [1..12] de inteiros 
Meses [1]  “Janeiro” 
Meses [2]  “Fevereiro” 
... 
Meses [11]  “Novembro” 
Meses [12]  “Dezembro” 
 
String mesAno [ ] = new String [12]; 
mesAno[0] = “Janeiro”; 
mesAno[1] = “Fevereiro”; 
... 
mesAno[10] = “Novembro”; 
mesAno[11] = “Dezembro”; 
 
String mesAniversario = mesAno[0]; 
Ca
p. 6 
- 7 
Exemplo 1 
Algoritmo Exemplo6.1 
Var 
Valores : vetor [1..10] de reais 
Soma, Media : real 
i : inteiro 
Início 
Soma  0 
Para i  1 até 10 Faça 
 Ler (Valores[i]) 
 Soma  Soma + Valores[i] 
Fim-Para 
Media  Soma / 10 
Mostrar (“O valor da média é: “, Media) 
Fim. 
Ca
p. 6 
- 8 
Exemplo 1 
Início
Fim
"O valor da
média é: ",
Media
Soma  0
Media  Soma/
10
Valores [ i ]
Soma  Soma +
Valores[ i ]
i  1, 10, 1
Ca
p. 6 
- 9 
#include <iostream> 
#include <cstdlib> 
 
using namespace std; 
 
int main (void){ 
 int i, vetor[10]; 
 float somatorio=0, media; 
 
 //leitura dos valores 
 cout <<“Entre com os valores\n"; 
 for (i=1; i<=10; i++){ 
 cout <<"Digite o "<<i<<"o. numero: "; 
 cin >> vetor[i]; 
 cin.ignore(); 
 //system ("cls"); 
.... 
 } 
 //faz o somatorio 
 for (i=1; i<=10; i++){ 
 cout<<"v["<<i<<"] = "<<vetor[i]<<endl; 
 somatoria = somatoria + vetor[i]; 
 } 
 
 cout << "soma = " << somatorio <<endl; 
 media = somatorio/10; 
 cout << "media = " << media <<endl; 
 system ("pause"); 
 return EXIT_SUCCESS; 
} 
Exemplo em C++ 
Ca
p. 6 
- 10 
Exemplo 1 import java.io.*; 
 class ExVetor { 
 public static void main ( String args [] ){ 
 BufferedReader entrada; 
 entrada = new BufferedReader( new InputStreamReader (System.in) ); 
 try { 
 float soma = 0; 
 float [] vetor = new float [10]; 
 for (int i = 0, i < vetor.length; i++){ 
 System.out.println(“Qual o valor ? ”); 
 vetor [i] = Float.parseFloat( entrada.readLine() ); 
 soma = soma + vetor[i]; 
 } 
 float media = soma / vetor.length; 
 System.out.println ("A média = " + media); 
 } catch (Exception e) { 
 System.out.println(“Ocorreu um erro durante a leitura !”); 
 } 
 } 
 } 
Ca
p. 6 
- 11 
Operações 
 Os vetores permitem a manipulação dos elementos 
alocados em suas posições de forma independente; 
 A inclusão de um elemento em uma determinada posição 
de um vetor implica a substituição do valor 
anteriormente existente; 
 A exibição dos elementos pode ser necessária após a 
execução de uma determinada operação que envolva a 
alteração dos valores desses elementos. 
 Para i  1 até 6 Faça 
 Mostrar (Valores[i]) 
 Fim-Para; 
Ca
p. 6 
- 12 
Exemplo 2 Algoritmo Exemplo6.2 
Var 
 Teste1, Teste2 : vetor [1..10] de inteiros 
 i : inteiro 
Início 
 Para i  1 até 10 Faça 
 Ler (Teste1[i]) 
 Fim-Para 
 Para i 1 até 10 Faça 
 Se ( i mod 2 = 0 ) Então 
 Teste2[i]  Teste1[i] * 5 
 Senão 
 Teste2[i]  Teste1[i] + 5 
 Fim-Se 
 Fim-Para 
 Para i  1 até 10 Faça 
 Mostrar (Teste1[i], Teste2[i]) 
 Fim-Para 
Fim. 
Ca
p. 6 
- 13 
Exemplo 2 
Início
Fim
Teste1[ i ],
Teste2[ i ]
Teste2[ i ] 
Teste1[ i ] * 5
Teste1[ i ]
i  1, 10, 1
i  1, 10, 1
i mod 2=0
Teste2[ i ] 
Teste1[ i ] + 5
.V.
.F.
i  1, 10, 1
Ca
p. 6 
- 14 
Exemplo 2 import java.io.*; 
 
class Exemplo62 { 
 
 public static void main ( String args [] ){ 
 int teste1 [] = new int [10]; 
 int teste2 [] = new int [10]; 
 BufferedReader entrada; 
 entrada = new BufferedReader( new InputStreamReader (System.in) ); 
 
 try { 
 for (int i = 0; i < 10; i++) { 
 System.out.println(“Qual o numero ? ”); 
 teste1[i] = Integer.parseInt( entrada.readLine() ); 
 } 
Ca
p. 6 
- 15 
 for (int i = 0; i < 10; i++){ 
 if ( i % 2 == 0) 
 teste2[i] = teste1[i] * 5; 
 else 
 teste2[i] = teste1[i] + 5; 
 } 
 System.out.println(); 
 System.out.println(“Resultado:”); 
 for (int i = 0; i < 10; i++){ 
 System.out.print(“teste1[” + i + “]= ” + teste1[i] + “\t”); 
 System.out.println(“teste2[” + i + “] = ” + teste2[i]); 
 } 
 } catch (Exception e) { 
 System.out.println(“Ocorreu um erro durante a leitura !”); 
 } 
 } 
} 
Exemplo 2 
Ca
p. 6 
- 16 
Conceito de Matrizes 
 Estruturas indexadas que necessitam de mais que um 
índice para identificar um de seus elementos; 
 São chamadas matrizes de dimensão n, onde n 
representa o número de índices requeridos; 
 Uma matriz de dimensão 2 é uma matriz que exige 
dois índices para identificar um elemento em sua 
estrutura; 
 A maioria das linguagens não impõe limite sobre a 
dimensão de uma estrutura indexada, ficando a cargo 
do programador utilizar tantos índices quanto 
considerar convenientes. 
Conceito de Matrizes 
 Diagrama 
 
 
 
 
 
 
 
 Ca
p. 6 
- 17 
Ca
p. 6 
- 18 
Declaração 
 A declaração de uma matriz poderia ser feita da seguinte forma: 
Var 
 Vendas : vetor [1..n,1..n] de inteiros 
 Essa declaração é muito semelhante à declaração de vetor, 
porque o vetor é uma matriz de dimensão 1; 
 A convenção mais comum é dizermos que o primeiro índice 
identifica uma linha de uma matriz bidimensional e o segundo, 
uma coluna; 
 A linguagem Java não oferece suporte a arrays (vetores) 
multidimensionais; 
 A mesma funcionalidade pode ser obtida com a declaração de 
um array de arrays, por exemplo: int [ ][ ]. 
Ca
p. 6 
- 19 
Operações – Exemplo 3 
Algoritmo Exemplo6.6 
Var 
 G : vetor [1..6, 1..2] de inteiros 
 i, j : inteiro 
 prod : real 
InícioPara i  1 até 6 Faça 
 prod  1 
 Para j  1 até 2 Faça 
 Ler (G [i, j]) 
 prod  prod * G [i, j] 
 Fim-Para 
 Mostrar (“Linha “, i, “ = “SQRT (prod)) 
 Fim-Para 
Fim. 
Ca
p. 6 
- 20 
Exemplo 3 
Início
Fim
"Linha", i, " =
",
SQRT(prod)
prod  1
i  1, 6, 1
prod  prod *
G [ i, j ]
j  1, 2, 1
G [ i, j ]
Ca
p. 6 
- 21 
Exemplo 3 
 
import java.io.*; 
class Exemplo66{ 
 public static void main (String args[ ]){ 
 int G [ ][ ] = new int [6][2]; 
 double prod; 
 BufferedReader entrada; 
 entrada = new BufferedReader( new InputStreamReader (System.in) ); 
 try{ 
 for (int i = 0; i < 6; i++){ 
 prod = 1; 
 for (int j = 0; j < 2; j++){ 
 System.out.println ("Entre com valores de G-" + i + ", " + j); 
 G [i][j] = Integer.parseInt ( entrada.readLine() ); 
 prod = prod * G [i][j]; 
 } 
 System.out.println ("Linha-" + i + ": " + Math.sqrt (prod) ); 
 } 
 }catch (Exception e){ 
 System.out.println ("Ocorreu um erro durante a leitura!"); 
 } 
 } 
} 
Ca
p. 6 
- 22 
Exemplo 4 
Ca
p. 6 
- 23 
Exemplo 4 
 
Ca
p. 6 
- 24

Outros materiais