Carregar apresentação
A apresentação está carregando. Por favor, espere
1
Vetores (2) Continuação
2
Caso 1: Qual o menor valor ?
Início TIPO vcu = vetor [1..10] de inteiros; //variável composta uniforme vcu : vetor; Inteiro: min, i, n, pos; Ler (n); PARA i DE 1 ATÉ n PASSO 1 FAÇA Ler ( vetor[i] ) ; FIM PARA Min = vetor[1]; PARA i DE 2 ATÉ n PASSO 1 FAÇA SE min < vetor[i] ENTAO inicio min vetor[i]; pos i ; // a posição que se encontra fim FIM SE Escreve ( ‘menor valor: ‘, min, ‘ na posicao : ‘ , pos); FIM
3
Ordenar vetor Estratégia
aux 99 6 8 3 10 9 1 21 33 14 Estratégia Usar uma variável simples como “recipiente” de troca : inteiro aux Descobrir o menor valor do vetor e sua posição Armazenar esse “primeiro” menor em aux Trocar : valor do vetor[1] vai para posição do menor Copiar valor de Aux para vetor[1] ... O menor valor está na posição 1 !!!
4
Ordenar vetor ... aux pos 99 6 8 3 10 9 1 21 33 14 Usando o algoritmo do caso 1, descobriu-se que o menor valor é 1 !!! E está na posição 7...
5
Ordenar vetor ... 99 6 8 3 10 9 1 21 33 14 [7] aux pos
6
Ordenar vetor ... 99 6 8 3 10 9 21 33 14 1 aux 1 pos ???? 7 Falta colocar o menor valor na primeira posição ( ou índice ) do vetor. Mas será trocado o valor que lá está , pois não se quer perdê-lo.
7
Ordenar vetor ... 99 6 8 3 10 9 21 33 14 1 aux 1 pos !!!! 7 Vai ser trocado o valor que está na primeira posição para que o menor valor do vetor esteja em primeiro.
8
Ordenar vetor ... [pos] 99 6 8 3 10 9 21 33 14 1 aux 1 pos 7 O valor da primeira posição do vetor é atribuído para a posição 7 !!!!
9
Ordenar vetor ... 99 6 8 3 10 9 21 33 14 99 aux 1 pos 7 O valor da primeira posição do vetor para para a posição 7 !!!!
10
Ordenar vetor ... 1 6 8 3 10 9 21 33 14 99 aux 1 pos 7 Agora, o menor valor vai para o seu lugar ( a primeira posição do vetor ). Próximo passo ... Ordenar os demais ...
11
Ordenar vetor ... 1 6 8 3 10 9 21 33 14 99 aux pos Usar o algoritmo de encontrar o menor novamente, mas ignorar a primeira posição ( já é o menor ) Agora, o menor valor vai para o seu lugar ( a primeira posição do vetor ).
12
Ordenar vetor ... 1 6 8 3 10 9 21 33 14 99 [4] aux pos Usar o algoritmo de encontrar o menor novamente, mas ignorar a primeira posição ( já é o menor ) Agora, o menor valor vai para o seu lugar ( a primeira posição do vetor ).
13
Ordenar vetor ... 1 6 8 3 10 9 21 33 14 99 [4] aux 3 pos 4 Usar o algoritmo de encontrar o menor novamente, mas ignorar a primeira posição ( já é o menor ) Agora, o menor valor vai para o seu lugar ( a primeira posição do vetor ).
14
Ordenar vetor ... 1 6 8 3 10 9 21 33 14 99 aux ???? 3 pos 4 Usar o algoritmo de encontrar o menor novamente, mas ignorar a primeira posição ( já é o menor ) Agora, o SEGUNDO menor valor vai para o seu lugar ( a SEGUNDA posição do vetor ). Antes deve-se mover o conteúdo da segunda posição para ONDE pos indicar ...
15
Ordenar vetor ... [pos] 1 6 8 3 10 9 21 33 14 99 aux 3 pos 4 Usar o algoritmo de encontrar o menor novamente, mas ignorar a primeira posição ( já é o menor ) Agora, o SEGUNDO menor valor vai para o seu lugar ( a SEGUNDA posição do vetor ). Antes deve-se mover o conteúdo da segunda posição para ONDE pos indicar ...
16
Ordenar vetor ... [pos] 1 6 8 10 9 21 33 14 99 aux 3 pos 4 Agora, falta apenas transferir o SEGUNDO menor valor ( em aux) para a SEGUNDA posição do vetor
17
Ordenar vetor ... [pos] 1 6 8 10 9 21 33 14 99 aux 3 pos 4 Agora, falta apenas transferir o SEGUNDO menor valor ( em aux) para a SEGUNDA posição do vetor
18
Ordenar vetor ... [pos] 1 3 8 6 10 9 21 33 14 99 aux 3 pos 4 Agora, falta apenas transferir o SEGUNDO menor valor ( em aux) para a SEGUNDA posição do vetor
19
Ordenar vetor ... 1 3 8 6 10 9 21 33 14 99 aux pos Agora, repetir o processo com os demais elementos ... E começar a partir da terceira posição, já que se ordenou o primeiro e segundo menor elemento ... E assim sucessivamente, até o penúltimo elemento ser processado...
20
Sugestão de exercício Faça o procedimento para encontrar o maior elemento. Use esse procedimento para ordenar o vetor ( encontrar o maior , trocar , colocar o maior elemento na última posição do vetor ) ... Crie 2 vetores de mesmo tamanho e com mesmo tipo. Atribua valores diferentes entre esses vetores. Realize com eles: Soma Subtração Multiplicação Divisão Tome um dos vetores do exercício 3 e, para cada elemento, com seja K lido pelo usuário, faça Somar o valor k Subtrair o valor k Multiplicar por k Dividir por k
21
Sugestão de exercício 5. Dado o vetor
2 1 8 6 10 9 99 21 33 14 Escreva todos os elementos ímpares do vetor Escreva todos os elementos de índice/posição ímpar
22
Fortran Vetores = Arrays ( conjuntos ) inicio program testeVetor;
TIPO vreal = vetor[1..6] de real; vreal : vmedia; Inteiro: i ; Para i DE 1 ATÉ 6 PASSO 1 Faça vmedia[i] i escrever( i, vmedia[i] ); FIM PARA FIM program testeVetor; real vmedia(6) integer i do i=1,6,1 vmedia(i) = i print*, i, vmedia(i) end do end
23
Fortran Dimension inicio program testeVetor; vreal : vmedia;
TIPO vreal = vetor[1..6] de real; vreal : vmedia; Inteiro: i ; Para i DE 1 ATÉ 6 PASSO 1 Faça vmedia[i] i escrever( i, vmedia[i] ); FIM PARA FIM program testeVetor; real vmedia Dimension vmedia(1:6); do i=1,6,1 vmedia(i) = i print*, i, vmedia(i) end do end
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.