Escolar Documentos
Profissional Documentos
Cultura Documentos
Algoritmos Aula V
Algoritmos Aula V
Ementa
UNIVERSIDADE FEDERAL DO PARÁ
CAMPUS UNIVERSITÁRIO DO TOCANTINS/CAMETÁ
Algoritmos b.
c.
Tipos de Dados.
Subalgoritmo: funções e procedimentos.
Prof. Dr. Fabricio Farias
3. Algoritmos recursivos.
4. Desenvolvimento de algoritmos por
refinamentos sucessivos.
5. Aspectos de implementação de algoritmos.
Definição de vetor
UNIVERSIDADE FEDERAL DO PARÁ
CAMPUS UNIVERSITÁRIO DO TOCANTINS/CAMETÁ
1
09/04/2019
X[1] ß 45 3 -25
X[4] ß 0 4 47
5 0
X 45 0
1 2 3 4 5 X 95 13 -25 47 0
1 2 3 4 5
2
09/04/2019
Exemplo 1 Exemplo 2
ALGORITMO
DECLARE num[9], i, j, cont NUMERICO
PARA i ß 1 ATE 9 FAÇA
INICIO
u Faça um programa que receba a quantidade de
LEIA num[i]
FIM
peças vendidas por vendedor e armazene essas
PARA i ß 1 ATE 9 FAÇA quantidades em um vetor. Receba também o
INICIO preço da peça vendida de cada e armazene
cont ß 0 esses preços em outro vetor. Existem apenas
PARA j ß 1 ATE num[i] FAÇA
dez vendedores e cada vendedor pode vender
INICIO
apenas um tipo de peça, isto é, para cada
SE RESTO(num[i] / j) == 0
ENTAO cont ß cont + 1
vendedor existe apenas um preço. Calcule e
FIM mostre a quantidade total de peças vendidas
SE cont <= 2 por todos os vendedores e para cada vendedor
ENTAO INICIO calcule e mostre o valor total da venda, isto é,
ESCREVA num[i]
ESCREVA i
a quantidade * o preço da peça.
FIM
FIM
FIM_ALGORITMO
Exemplo 2 Exemplo 3
ALGORITMO
DECLARE qtd[10], preco[10], i, tot_geral, tot_venda NUMERICO u Faça um programa que carregue dois
tot_geral ß 0 vetores de dez elementos numéricos cada
PARA i ß 1 ATE 10 FAÇA
INICIO
um e mostre um vetor resultante da
LEIA qtd[i] intercalação desses dois vetores
LEIA preco[i]
FIM
PARA i ß 1 ATE 10 FAÇA
Vetor 1 3 5 4 2 2
INICIO
tot_venda ß qtd[i] * preco[i] 1 2 3 4 5
ESCREVA tot_venda
Vetor 2 4 6 8 12 18
FIM
PARA i ß 1 ATE 10 FAÇA 1 2 3 4 5
INICIO
tot_geral ß tot_geral + qtd[i] Vetor 3 4 5 6 4 8 2 12 2 18
FIM Resultante
ESCREVA tot_geral 1 2 3 4 5 6 7 8 9 10
FIM_ALGORITMO
3
09/04/2019
Exemplo 3 Exemplo 4
ALGORITMO
DECLARE vet1[5], vet2[5], vet3[10], i, j NUMERICO u Faça um programa que carregue um vetor
jß1 com oito números inteiros, calcule e
PARA i ß 1 ATE 5 FAÇA mostre dois vetores resultantes. O primeiro
INICIO vetor resultante deve conter os números
LEIA vet1[i]
positivos. O segundo vetor resultante deve
vet3[j] ß vet1[i]
conter os números negativos. Cada vetor
jßj+1
LEIA vet2[i] resultante vai ter no máximo oito posições,
vet3[j] ß vet2[i] sendo que nem todas devem
jßj+1 obrigatoriamente ser utilizadas.
FIM
PARA i ß 1 ATE 10 FAÇA
INICIO
ESCREVA vet3[i]
FIM
FIM_ALGORITMO
cont_p ß1 INICIO
PARA i ß 1 ATE (cont_n-1) FAÇA
PARA i ß 1 ATE 8 FAÇA
INICIO
INICIO
ESCREVA neg[i]
LEIA num[i]
FIM
SE num[i] >= 0 ENTAO
FIM
INICIO SE cont_p = 1 ENTAO
pos[cont_p] ß num[i] ESCREVA “Vetor de positivos vazio”
cont_p ß cont_p + 1 SENAO
FIM INICIO
SENAO INICIO PARA i ß 1 ATE (cont_p-1) FAÇA
4
09/04/2019
Exercício 1 Exercício 2
u Quando a opção escolhida for Efetuar uA opção Sair é a única que permite sair do
reserva deverá ser perguntado o número do programa. Sendo assim, após cada
vôo no qual a pessoa deseja viajar. O operação de consulta ou reserva o
programa deverá dar as seguintes programa volta ao menu principal.
respostas:
§ Reserva confirmada – caso exista o vôo e lugar
disponível, dando baixa nos lugares
disponíveis.
§ Vôo lotado – caso não exista lugar disponível
nesse vôo.
§ Vôo inexistente – caso o código do vôo não
exista.
5
09/04/2019
Exercício 3 Exercício 4
Revisão da Aula