SlideShare uma empresa Scribd logo
1 de 13
Algoritmos e 
Programação 
Prof. Marcos Saúde 
marcosr@pitagoras.com.br
Vetores – Estruturas de Dados Homogêneos 
 1) 
Algoritmo Pesquisa; 
vet_nomes: Vetor[1..10] de Caracteres; 
nome: caracteres; 
i: inteiro; 
inicio 
para i de 1 até 10 faça 
Ler(vet_nomes[i]); 
fimPara; 
Ler(nome); 
i = 0; 
Enquanto ((i <= 10) E (nome <> vet_nomes[i])) faça 
i := i + 1; 
fimEnquanto; 
Se (i <= 10) Então //saiu do laço porque achou o nome, e não porque chegou a 10 
Escrever("ACHEI"); 
Senão 
Escrever("NÃO ACHEI"); 
FimSe; 
Fim.
Vetores – Estruturas de Dados Homogêneos 
 2) 
Algoritmo Maior; 
Q: Vetor[1..20] de Inteiro; 
maior, posicao: inteiro; 
Inicio 
para i de 1 até 20 faça 
Ler(Q[i]); 
fimPara; 
maior := Q[1]; 
posicao := 1; 
para i de 2 até 20 faça 
Se (Q[i] > maior) Então 
maior := Q[i]; 
posicao := i; 
FimSe; 
fimPara; 
Escrever(maior,posicao); 
Fim.
Vetores – Estruturas de Dados Homogêneos 
 3) 
Algoritmo Maior; 
Q: Vetor[1..20] de Inteiro; 
menor, posicao: inteiro; 
Inicio 
para i de 1 até 20 faça 
Ler(Q[i]); 
fimPara; 
menor := Q[1]; 
posicao := 1; 
para i de 2 até 20 faça 
Se (Q[i] < menor) Então 
menor := Q[i]; 
posicao := i; 
FimSe; 
fimPara; 
Escrever(menor,posicao); 
Fim.
Vetores – Estruturas de Dados Homogêneos 
 4) 
Algoritmo Multiplica_Vetor; 
A,M: Vetor[1..10] de Inteiro; 
int X; 
Inicio 
para i de 1 até 10 faça 
Ler(A[i],M[i]); 
fimPara; 
Ler(X); 
para i de 1 até 10 faça 
M[i] = A[i] * X; 
Escrever(M[i]); 
fimPara; 
Fim.
Vetores – Estruturas de Dados Homogêneos 
 5) 
Algoritmo Inverso; 
vet: Vetor[1..20] de Inteiro; 
inicio 
para i de 1 até 20 faça 
Ler(vet[i]); 
fimPara; 
{imprimir na tela em ordem inversa} 
para i de 20 até 1 faça 
{ 
Escrever(vet[i]); 
} 
}
Vetores – Estruturas de Dados Homogêneos 
 6) 
Algoritmo Temperatura; 
temperaturas: Vetor[1..12] de Real; 
maior, menor, soma: Real; 
mes_maior, mes_menor:inteiro; 
Inicio 
para i de 1 até 12 faça 
Ler(temperaturas[i]); 
fimPara; 
{ buscar a maior e menor temperaturas, somar as temperaturas } 
soma := 0; 
mes_maior := 1; 
mes_menor := 1; 
para i de 1 até 12 faça 
soma := soma + temperaturas[i]; 
Se (temperaturas[i] > maior) Então 
maior := temperaturas[i]; 
mes_maior := i; 
FimSe; 
Se (temperaturas[i] < menor) Então 
menor = temperaturas[i]; 
mes_menor = i; 
FimSe; 
FimPara; 
Escrever(mes_maior, mes_menor, soma/12); 
Fim.
Vetores – Estruturas de Dados Homogêneos 
 7) 
static void Main(string[] args) 
{ 
string[] nomes = new string[10]; 
string[] nomes_ordenados = new string[10]; 
string menor; 
int indice_menor, proximo; 
for (int i = 0; i < 10; i++) 
{ 
Console.Write("Digite o " + (i + 1) + "º nome:"); 
nomes[i] = Console.ReadLine(); 
// após ler, transformar para letra maiúscula 
nomes[i] = nomes[i].ToUpper(); 
}
Vetores – Estruturas de Dados Homogêneos 
 7) Continuação ... 
// carregar o vetor ordenado 
proximo = 0; 
while (proximo < 10) // enquanto não gravou todos os valores no vetor ordenado 
{ 
// acha o primeiro candidato a menor 
indice_menor = 0; 
while (nomes[indice_menor] == "") 
{ 
indice_menor++; 
} 
menor = nomes[indice_menor]; 
// descobre quem é o menor no momento, apaga o conteúdo deste índice 
for (int i = 0; i < 10; i++) 
{ 
if ((nomes[i] != "") && (nomes[i].CompareTo(menor) == -1)) 
{ 
menor = nomes[i]; 
indice_menor = i; 
} 
} 
nomes_ordenados[proximo] = menor; 
nomes[indice_menor] = ""; 
proximo++; 
} 
for (int i = 0; i < 10; i++) 
{ 
Console.WriteLine(nomes_ordenados[i]); 
} 
}
Vetores – Estruturas de Dados Homogêneos 
 8) 
Algoritmo Comparativo; 
V1,V2: Vetor[1..15] de Inteiro; 
contador: Inteiro; 
Inicio 
contador := 0; 
para i de 1 até 15 faça 
Ler(V1[i],V2[i]); 
se (V1[i] = V2[i]) então 
contador := contador + 1; 
fimSe; 
fimPara; 
Escrever(contador); 
Fim.
Vetores – Estruturas de Dados Homogêneos 
 9) 
Algoritmo Procura; 
vet: Vetor[1..30] de Inteiro; 
contador, numero:inteiro; 
Inicio 
Para i de 1 até 30 faça 
Ler(vet[i]); 
FimPara; 
contador := 0; 
Ler(numero); 
para i de 1 até 30 faça 
Se (vet[i] = numero) Então 
contador := contador + 1; 
FimSe; 
FimPara; 
Escrever(contador); 
Fim.
Vetores – Estruturas de Dados Homogêneos 
 10) 
Algoritmo Ordenar; 
vet: Vetor[1..10] de Inteiro; 
i1, i2, aux, posicao_menor: Inteiro; 
Inicio 
para i de 1 até 10 faça 
Ler(vet[i]); 
fimPara; 
{ ordenar o vetor } 
para i1 de 1 até 10 faça 
posicao_menor = i1; { descobrir onde está o menor número da posição i1 pra frente } 
para i2 de i1 até 10 faça 
Se (vet[i2] < vet[posicao_menor]) Então 
posicao_menor = i2; 
fimSe; 
FimPara; 
{ posicao_menor indica o índice do menor do vetor de i1 pra frente } 
{ trocar o valor que está em posicao_menor com o valor que está em i1 } 
Se (i1 <> posicao_menor) Então 
aux = vet[i1]; 
vet[i1] = vet[posicao_menor]; 
vet[posicao_menor] = aux; 
FimSe; 
{ à medida em que i1 é incrementado, o vetor vai ficando ordenado de i1 pra trás } 
FimPara; 
para i de 1 até 10 faça 
{ 
Escrever(vet[i]); 
} 
}
Vetores – Estruturas de Dados Homogêneos 
 Exercícios 11 ao 14, sobre matrizes, 
serão feitos em sala de aula;

Mais conteúdo relacionado

Semelhante a Vetores Algoritmos

Semelhante a Vetores Algoritmos (14)

Lógica De Programação
Lógica De ProgramaçãoLógica De Programação
Lógica De Programação
 
Aula06
Aula06Aula06
Aula06
 
Aula 5 aed - vetores
Aula 5   aed - vetoresAula 5   aed - vetores
Aula 5 aed - vetores
 
Lógica de Programação - Unimep/Pronatec - Aula10
Lógica de Programação - Unimep/Pronatec - Aula10Lógica de Programação - Unimep/Pronatec - Aula10
Lógica de Programação - Unimep/Pronatec - Aula10
 
Aula 05 Vetores
Aula 05  VetoresAula 05  Vetores
Aula 05 Vetores
 
Herança e_vetores.pdf_
 Herança e_vetores.pdf_ Herança e_vetores.pdf_
Herança e_vetores.pdf_
 
Linguagem c wellington telles - aula 07
Linguagem c   wellington telles - aula 07Linguagem c   wellington telles - aula 07
Linguagem c wellington telles - aula 07
 
Lp1 aula-5 array
Lp1  aula-5 arrayLp1  aula-5 array
Lp1 aula-5 array
 
Exercicios facebook
Exercicios facebookExercicios facebook
Exercicios facebook
 
mod4-estruturas-dadosestaticas-ordenacao
mod4-estruturas-dadosestaticas-ordenacaomod4-estruturas-dadosestaticas-ordenacao
mod4-estruturas-dadosestaticas-ordenacao
 
Algop - aula 07 resposta exercícios
Algop - aula 07 resposta exercíciosAlgop - aula 07 resposta exercícios
Algop - aula 07 resposta exercícios
 
Lista c
Lista cLista c
Lista c
 
Algorítimo de ordenação
Algorítimo de ordenaçãoAlgorítimo de ordenação
Algorítimo de ordenação
 
Algoritmos e lp parte 4-vetores matrizes e registros
Algoritmos e lp parte 4-vetores matrizes e registrosAlgoritmos e lp parte 4-vetores matrizes e registros
Algoritmos e lp parte 4-vetores matrizes e registros
 

Mais de Thiago Toscano Ferrari (9)

Algop - aula 07
Algop - aula 07Algop - aula 07
Algop - aula 07
 
Algop - aula 06 resposta exercícios
Algop - aula 06 resposta exercíciosAlgop - aula 06 resposta exercícios
Algop - aula 06 resposta exercícios
 
Algop - aula 06
Algop - aula 06Algop - aula 06
Algop - aula 06
 
Algop - aula 05
Algop - aula 05Algop - aula 05
Algop - aula 05
 
Algop - aula 04 pascal 1
Algop - aula 04 pascal 1Algop - aula 04 pascal 1
Algop - aula 04 pascal 1
 
Algop - aula 04
Algop - aula 04Algop - aula 04
Algop - aula 04
 
Algop - aula 03
Algop - aula 03Algop - aula 03
Algop - aula 03
 
Algop - aula 02
Algop - aula 02Algop - aula 02
Algop - aula 02
 
Teste 1 - Engenharia mecânica
Teste 1 - Engenharia mecânicaTeste 1 - Engenharia mecânica
Teste 1 - Engenharia mecânica
 

Último

Treinamento de NR06 Equipamento de Proteção Individual
Treinamento de NR06 Equipamento de Proteção IndividualTreinamento de NR06 Equipamento de Proteção Individual
Treinamento de NR06 Equipamento de Proteção Individualpablocastilho3
 
Livro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdf
Livro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdfLivro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdf
Livro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdfSamuel Ramos
 
A EXTENSÃO RURAL NO BRASIL Sociologia e Extensão 1 2014.ppt
A EXTENSÃO RURAL NO BRASIL Sociologia e Extensão 1 2014.pptA EXTENSÃO RURAL NO BRASIL Sociologia e Extensão 1 2014.ppt
A EXTENSÃO RURAL NO BRASIL Sociologia e Extensão 1 2014.pptssuserb964fe
 
LEAN SIX SIGMA - Garantia da qualidade e segurança
LEAN SIX SIGMA - Garantia da qualidade e segurançaLEAN SIX SIGMA - Garantia da qualidade e segurança
LEAN SIX SIGMA - Garantia da qualidade e segurançaGuilhermeLucio9
 
A Importância dos EPI's no trabalho e no dia a dia laboral
A Importância dos EPI's no trabalho e no dia a dia laboralA Importância dos EPI's no trabalho e no dia a dia laboral
A Importância dos EPI's no trabalho e no dia a dia laboralFranciscaArrudadaSil
 
Tecnólogo em Mecatrônica - Universidade Anhanguera
Tecnólogo em Mecatrônica - Universidade AnhangueraTecnólogo em Mecatrônica - Universidade Anhanguera
Tecnólogo em Mecatrônica - Universidade AnhangueraGuilhermeLucio9
 
Eletricista instalador - Senai Almirante Tamandaré
Eletricista instalador - Senai Almirante TamandaréEletricista instalador - Senai Almirante Tamandaré
Eletricista instalador - Senai Almirante TamandaréGuilhermeLucio9
 

Último (7)

Treinamento de NR06 Equipamento de Proteção Individual
Treinamento de NR06 Equipamento de Proteção IndividualTreinamento de NR06 Equipamento de Proteção Individual
Treinamento de NR06 Equipamento de Proteção Individual
 
Livro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdf
Livro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdfLivro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdf
Livro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdf
 
A EXTENSÃO RURAL NO BRASIL Sociologia e Extensão 1 2014.ppt
A EXTENSÃO RURAL NO BRASIL Sociologia e Extensão 1 2014.pptA EXTENSÃO RURAL NO BRASIL Sociologia e Extensão 1 2014.ppt
A EXTENSÃO RURAL NO BRASIL Sociologia e Extensão 1 2014.ppt
 
LEAN SIX SIGMA - Garantia da qualidade e segurança
LEAN SIX SIGMA - Garantia da qualidade e segurançaLEAN SIX SIGMA - Garantia da qualidade e segurança
LEAN SIX SIGMA - Garantia da qualidade e segurança
 
A Importância dos EPI's no trabalho e no dia a dia laboral
A Importância dos EPI's no trabalho e no dia a dia laboralA Importância dos EPI's no trabalho e no dia a dia laboral
A Importância dos EPI's no trabalho e no dia a dia laboral
 
Tecnólogo em Mecatrônica - Universidade Anhanguera
Tecnólogo em Mecatrônica - Universidade AnhangueraTecnólogo em Mecatrônica - Universidade Anhanguera
Tecnólogo em Mecatrônica - Universidade Anhanguera
 
Eletricista instalador - Senai Almirante Tamandaré
Eletricista instalador - Senai Almirante TamandaréEletricista instalador - Senai Almirante Tamandaré
Eletricista instalador - Senai Almirante Tamandaré
 

Vetores Algoritmos

  • 1. Algoritmos e Programação Prof. Marcos Saúde marcosr@pitagoras.com.br
  • 2. Vetores – Estruturas de Dados Homogêneos  1) Algoritmo Pesquisa; vet_nomes: Vetor[1..10] de Caracteres; nome: caracteres; i: inteiro; inicio para i de 1 até 10 faça Ler(vet_nomes[i]); fimPara; Ler(nome); i = 0; Enquanto ((i <= 10) E (nome <> vet_nomes[i])) faça i := i + 1; fimEnquanto; Se (i <= 10) Então //saiu do laço porque achou o nome, e não porque chegou a 10 Escrever("ACHEI"); Senão Escrever("NÃO ACHEI"); FimSe; Fim.
  • 3. Vetores – Estruturas de Dados Homogêneos  2) Algoritmo Maior; Q: Vetor[1..20] de Inteiro; maior, posicao: inteiro; Inicio para i de 1 até 20 faça Ler(Q[i]); fimPara; maior := Q[1]; posicao := 1; para i de 2 até 20 faça Se (Q[i] > maior) Então maior := Q[i]; posicao := i; FimSe; fimPara; Escrever(maior,posicao); Fim.
  • 4. Vetores – Estruturas de Dados Homogêneos  3) Algoritmo Maior; Q: Vetor[1..20] de Inteiro; menor, posicao: inteiro; Inicio para i de 1 até 20 faça Ler(Q[i]); fimPara; menor := Q[1]; posicao := 1; para i de 2 até 20 faça Se (Q[i] < menor) Então menor := Q[i]; posicao := i; FimSe; fimPara; Escrever(menor,posicao); Fim.
  • 5. Vetores – Estruturas de Dados Homogêneos  4) Algoritmo Multiplica_Vetor; A,M: Vetor[1..10] de Inteiro; int X; Inicio para i de 1 até 10 faça Ler(A[i],M[i]); fimPara; Ler(X); para i de 1 até 10 faça M[i] = A[i] * X; Escrever(M[i]); fimPara; Fim.
  • 6. Vetores – Estruturas de Dados Homogêneos  5) Algoritmo Inverso; vet: Vetor[1..20] de Inteiro; inicio para i de 1 até 20 faça Ler(vet[i]); fimPara; {imprimir na tela em ordem inversa} para i de 20 até 1 faça { Escrever(vet[i]); } }
  • 7. Vetores – Estruturas de Dados Homogêneos  6) Algoritmo Temperatura; temperaturas: Vetor[1..12] de Real; maior, menor, soma: Real; mes_maior, mes_menor:inteiro; Inicio para i de 1 até 12 faça Ler(temperaturas[i]); fimPara; { buscar a maior e menor temperaturas, somar as temperaturas } soma := 0; mes_maior := 1; mes_menor := 1; para i de 1 até 12 faça soma := soma + temperaturas[i]; Se (temperaturas[i] > maior) Então maior := temperaturas[i]; mes_maior := i; FimSe; Se (temperaturas[i] < menor) Então menor = temperaturas[i]; mes_menor = i; FimSe; FimPara; Escrever(mes_maior, mes_menor, soma/12); Fim.
  • 8. Vetores – Estruturas de Dados Homogêneos  7) static void Main(string[] args) { string[] nomes = new string[10]; string[] nomes_ordenados = new string[10]; string menor; int indice_menor, proximo; for (int i = 0; i < 10; i++) { Console.Write("Digite o " + (i + 1) + "º nome:"); nomes[i] = Console.ReadLine(); // após ler, transformar para letra maiúscula nomes[i] = nomes[i].ToUpper(); }
  • 9. Vetores – Estruturas de Dados Homogêneos  7) Continuação ... // carregar o vetor ordenado proximo = 0; while (proximo < 10) // enquanto não gravou todos os valores no vetor ordenado { // acha o primeiro candidato a menor indice_menor = 0; while (nomes[indice_menor] == "") { indice_menor++; } menor = nomes[indice_menor]; // descobre quem é o menor no momento, apaga o conteúdo deste índice for (int i = 0; i < 10; i++) { if ((nomes[i] != "") && (nomes[i].CompareTo(menor) == -1)) { menor = nomes[i]; indice_menor = i; } } nomes_ordenados[proximo] = menor; nomes[indice_menor] = ""; proximo++; } for (int i = 0; i < 10; i++) { Console.WriteLine(nomes_ordenados[i]); } }
  • 10. Vetores – Estruturas de Dados Homogêneos  8) Algoritmo Comparativo; V1,V2: Vetor[1..15] de Inteiro; contador: Inteiro; Inicio contador := 0; para i de 1 até 15 faça Ler(V1[i],V2[i]); se (V1[i] = V2[i]) então contador := contador + 1; fimSe; fimPara; Escrever(contador); Fim.
  • 11. Vetores – Estruturas de Dados Homogêneos  9) Algoritmo Procura; vet: Vetor[1..30] de Inteiro; contador, numero:inteiro; Inicio Para i de 1 até 30 faça Ler(vet[i]); FimPara; contador := 0; Ler(numero); para i de 1 até 30 faça Se (vet[i] = numero) Então contador := contador + 1; FimSe; FimPara; Escrever(contador); Fim.
  • 12. Vetores – Estruturas de Dados Homogêneos  10) Algoritmo Ordenar; vet: Vetor[1..10] de Inteiro; i1, i2, aux, posicao_menor: Inteiro; Inicio para i de 1 até 10 faça Ler(vet[i]); fimPara; { ordenar o vetor } para i1 de 1 até 10 faça posicao_menor = i1; { descobrir onde está o menor número da posição i1 pra frente } para i2 de i1 até 10 faça Se (vet[i2] < vet[posicao_menor]) Então posicao_menor = i2; fimSe; FimPara; { posicao_menor indica o índice do menor do vetor de i1 pra frente } { trocar o valor que está em posicao_menor com o valor que está em i1 } Se (i1 <> posicao_menor) Então aux = vet[i1]; vet[i1] = vet[posicao_menor]; vet[posicao_menor] = aux; FimSe; { à medida em que i1 é incrementado, o vetor vai ficando ordenado de i1 pra trás } FimPara; para i de 1 até 10 faça { Escrever(vet[i]); } }
  • 13. Vetores – Estruturas de Dados Homogêneos  Exercícios 11 ao 14, sobre matrizes, serão feitos em sala de aula;