Buscar

Programação Estruturada - Revisão de algoritmos

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 46 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 46 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 46 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

Revisão Algoritmos
Índice da Revisão 1/2
● Variáveis
● Tipos de variáveis
● Pseudo-código
● Atribuição de valores
● Aritmética Básica
● Troca de valores(swap)
● Vetores
● Matrizes
● Comandos
● Laço
– Enquanto
– Para
● Desvio Condicional
– Se <cond> então
– Se <cond> então senão
– Se <cond> então senão
Se <cond> então senão
Se ...
Índice da Revisão 2/2
● Comandos de I/O
● Ler( variável )
● Mostrar ( variável )
● Teste de mesa
● O que é?
● Como fazer
Variáveis
● O que são variáveis?
● São posições de memória
● Possuem um tipo: ( inteiro, real, caracter )
● Possuem uma capacidade de armazenamento
– 1 byte, 2 bytes, 4 bytes, etc.
● Dependendo da capacidade de armazenamento, é
a capacidade de reprodução.
● Ex: 8 bits= 1 byte = 2^8 = 256
– Um número de 8 bits consegue representar até 256
números
Variáveis
● Ex: 8 bits
Binário Decimal
00000000 0
00000001 1
00000010 2
00000011 3
00000100 4
00000101 5
 11111111 255
 
Variáveis
● Variáveis são posições de memória
28 3322-3322 1,75
idade telefone
Conteúdo inteiro
Conteúdo caracter
Altura
Conteúdo real
Tipos de Variáveis
● Tipo inteiro → valores inteiros
● I={1,2,3,4...}
● Tipo real → valores de ponto flutuante
● R={1.5,2.666,3.1416...}
● Tipo caracter → letras e números
● C={“a”,”b”,”c”,”1”,”2”...}
● Os números neste caso possuem apenas função
de texto.
Pseudo- Código
● Forma de representar um algoritmo
● É uma forma genérica
● Fácil de transportar para as linguagens de
programação
● Usado para publicações científicas
Pseudo-Código
● Formação de um programa
● Início (declaração das variáveis)
– Criação das variáveis
– Inicialização das variáveis
● Desenvolvimento (processamento)
– Transformações das variáveis por cálculos e trocas
● Finalização
– Relatório mostrando o resultado
Pseudo-Código para um Programa
//declaração de variáveis//
Inteiro Peso
Real Altura
Real IMC
//inicialização das variáveis//
Peso ← 28
Altura ← 1.75
//processamento das variáveis//
IMC ← Peso / (Altura * Altura)
//Finalização – relatório//
Mostrar ( “Seu IMC é”, IMC)
Tipo Nome
Nome ← Valor
Nome ← Valor do Cálculo
Detalhe: O cálculo é sempre
realizado antes de ocorrer a
atribuição
Atribuição de Valores
0 0 0 0
X Y Z W Nomes das Variáveis
0 0 0 0 Conteúdos
X ← 10
Y ← 15
0 0 0 0
X Y Z W Nomes das Variáveis
10 15 0 0 Conteúdos
Atribuição de Valores
0 0 0 0
X Y Z W Nomes das Variáveis
0 0 0 0 Conteúdos
X ← 10
Y ← X
0 0 0 0
X Y Z W Nomes das Variáveis
10 10 0 0 Conteúdos
Atribuição de Valores
0 0 0 0
X Y Z W Nomes das Variáveis
0 0 0 0 Conteúdos
X ← 10
Y ← X
Y ← Z
0 0 0 0
X Y Z W Nomes das Variáveis
10 0 0 0 Conteúdos
Atribuição de Valores
0 0 0 0
X Y Z W Nomes das Variáveis
0 0 0 0 Conteúdos
X ←X+1
Y ← X+1
0 0 0 0
X Y Z W Nomes das Variáveis
1 2 0 0 Conteúdos
Atribuição de Valores
0 0 0 0
X Y Z W Nomes das Variáveis
0 0 0 0 Conteúdos
X ← 10
Y ← Y+1
Y ← Y+X
0 0 0 0
X Y Z W Nomes das Variáveis
10 11 0 0 Conteúdos
Atribuição de Valores
0 0 0 0
X Y Z W Nomes das Variáveis
0 0 0 0 Conteúdos
X ← 10
Y ← X-9
Y ← Y+1
0 0 0 0
X Y Z W Nomes das Variáveis
10 2 0 0 Conteúdos
Aritmética Básica
0 0 0 10
X Y Z W Nomes das Variáveis
10 10 10 Conteúdos
X ← X+1
Y ← Y-1
Z ← Z / 2
W ← W * 2
0 0 0 0
X Y Z W Nomes das Variáveis
11 9 5 20 Conteúdos
Somar
+
Subtrair
-
Multiplicar
*
Dividir
/
Troca de Valores(swap)
0 0 0 0
X Y Z W Nomes das Variáveis
10 50 0 0 Conteúdos
Z ← X
X ← Y
Y ← Z
0 0 0 0
X Y Z W Nomes das Variáveis
50 10 10 0 Conteúdos
Como o conteúdo da memória se 
perde por sobreposição de valores,
é necessário copiar o conteúdo para
outra posição de memória
 
Troca de Valores em Pseudo-
Código
//declaração de variáveis//
Inteiro X
Inteiro Y
Inteiro Troca
//inicialização das variáveis//
X ← 10
Y ← 50
//processamento das variáveis//
Troca ← X
X ← Y
Y ← Troca
//Finalização – relatório//
Mostrar ( “Valores trocados”,X,Y)
X Y Troca
10
 
Troca de Valores em Pseudo-
Código
//declaração de variáveis//
Inteiro X
Inteiro Y
Inteiro Troca
//inicialização das variáveis//
X ← 10
Y ← 50
//processamento das variáveis//
Troca ← X
X ← Y
Y ← Troca
//Finalização – relatório//
Mostrar ( “Valores trocados”,X,Y)
X Y Troca
10 50
 
Troca de Valores em Pseudo-
Código
//declaração de variáveis//
Inteiro X
Inteiro Y
Inteiro Troca
//inicialização das variáveis//
X ← 10
Y ← 50
//processamento das variáveis//
Troca ← X
X ← Y
Y ← Troca
//Finalização – relatório//
Mostrar ( “Valores trocados”,X,Y)
X Y Troca
10 50 10
 
Troca de Valores em Pseudo-
Código
//declaração de variáveis//
Inteiro X
Inteiro Y
Inteiro Troca
//inicialização das variáveis//
X ← 10
Y ← 50
//processamento das variáveis//
Troca ← X
X ← Y
Y ← Troca
//Finalização – relatório//
Mostrar ( “Valores trocados”,X,Y)
X Y Troca
10
50
50 10
 
Troca de Valores em Pseudo-
Código
//declaração de variáveis//
Inteiro X
Inteiro Y
Inteiro Troca
//inicialização das variáveis//
X ← 10
Y ← 50
//processamento das variáveis//
Troca ← X
X ← Y
Y ← Troca
//Finalização – relatório//
Mostrar ( “Valores trocados”,X,Y)
X Y Troca
10
50
50
10
10
Vetores
● Mecanismo de programação adotado para
facilitar o acesso à várias posições de memória
0 0 0 10
X Y Z W Nomes das Variáveis
10 10 10 Conteúdos
0 0 0 10
Vetor[0] Vetor[1] Vetor[2] Vetor[3] Nomes das Variáveis
10 10 10 Conteúdos
Declaração de vetores
● Inteiro vetor[10]
Declara um vetor de
10 elementos de
Inteiro. Este vetor irá
ocupar 10 posições de memória
Vetor [ 10 ]
Nome
Índice
Inicialização de Vetores
0 0 0 0
vetor[0] vetor[1] vetor[2] vetor[3] Nomes das Variáveis
0 0 0 0 Conteúdos
vetor[0] ← 10
vetor[3] ← vetor[0]
vetor[1] ← vetor[1] + 1
0 0 0 0
Nomes das Variáveis
10 1 0 10 Conteúdos
vetor[0] vetor[1] vetor[2] vetor[3]
Somando o conteúdo de um
vetor em uma variável
//declaração de variáveis//
Inteiro vet[4]
Inteiro soma
//inicialização das variáveis//
vet[0] ← 10 vet[1] ← 15
vet[2] ← 20 vet[3] ← 45
Soma ← 0
//processamento das variáveis//
soma ← soma + vet[0]
soma ← soma + vet[1]
soma ← soma + vet[2]
soma ← soma + vet[3]
//Finalização – relatório//
Mostrar ( “Vetor:”,vet[0],vet[1],vet[2],vet[3])
Mostrar ( “Soma:”,soma)
Somando o conteúdo de um
vetor em uma variável
//declaração de variáveis//
Inteiro vet[4]
Inteiro soma
//inicialização das variáveis//
vet[0] ← 10 vet[1] ← 15
vet[2] ← 20 vet[3] ← 45
Soma ← 0
//processamento das variáveis//
soma ← soma + vet[0]
soma ← soma + vet[1]
soma ← soma + vet[2]
soma ← soma + vet[3]
//Finalização – relatório//
Mostrar ( “Vetor:”,vet[0],vet[1],vet[2],vet[3])
Mostrar ( “Soma:”,soma)
vet[0] vet[1] vet[2] vet[3] soma
10
Somando o conteúdo de um
vetor em uma variável
//declaração de variáveis//
Inteiro vet[4]
Inteiro soma
//inicialização das variáveis//
vet[0] ← 10 vet[1] ← 15
vet[2] ← 20 vet[3] ← 45
Soma ← 0
//processamento das variáveis//
soma ← soma + vet[0]
soma ← soma + vet[1]
soma ← soma + vet[2]
soma ← soma + vet[3]
//Finalização – relatório//
Mostrar ( “Vetor:”,vet[0],vet[1],vet[2],vet[3])
Mostrar ( “Soma:”,soma)
vet[0] vet[1] vet[2] vet[3] soma
10 15
Somando o conteúdo de um
vetor em uma variável
//declaração de variáveis//
Inteiro vet[4]
Inteiro soma
//inicialização das variáveis//
vet[0] ← 10 vet[1] ← 15
vet[2] ← 20 vet[3] ← 45
Soma ← 0
//processamento das variáveis//
soma ← soma + vet[0]
soma ←soma + vet[1]
soma ← soma + vet[2]
soma ← soma + vet[3]
//Finalização – relatório//
Mostrar ( “Vetor:”,vet[0],vet[1],vet[2],vet[3])
Mostrar ( “Soma:”,soma)
vet[0] vet[1] vet[2] vet[3] soma
10 15 20
Somando o conteúdo de um
vetor em uma variável
//declaração de variáveis//
Inteiro vet[4]
Inteiro soma
//inicialização das variáveis//
vet[0] ← 10 vet[1] ← 15
vet[2] ← 20 vet[3] ← 45
Soma ← 0
//processamento das variáveis//
soma ← soma + vet[0]
soma ← soma + vet[1]
soma ← soma + vet[2]
soma ← soma + vet[3]
//Finalização – relatório//
Mostrar ( “Vetor:”,vet[0],vet[1],vet[2],vet[3])
Mostrar ( “Soma:”,soma)
vet[0] vet[1] vet[2] vet[3] soma
10 15 20 45
Somando o conteúdo de um
vetor em uma variável
//declaração de variáveis//
Inteiro vet[4]
Inteiro soma
//inicialização das variáveis//
vet[0] ← 10 vet[1] ← 15
vet[2] ← 20 vet[3] ← 45
Soma ← 0
//processamento das variáveis//
soma ← soma + vet[0]
soma ← soma + vet[1]
soma ← soma + vet[2]
soma ← soma + vet[3]
//Finalização – relatório//
Mostrar ( “Vetor:”,vet[0],vet[1],vet[2],vet[3])
Mostrar ( “Soma:”,soma)
vet[0] vet[1] vet[2] vet[3] soma
10 15 20 45 0
Somando o conteúdo de um
vetor em uma variável
//declaração de variáveis//
Inteiro vet[4]
Inteiro soma
//inicialização das variáveis//
vet[0] ← 10 vet[1] ← 15
vet[2] ← 20 vet[3] ← 45
Soma ← 0
//processamento das variáveis//
soma ← soma + vet[0]
soma ← soma + vet[1]
soma ← soma + vet[2]
soma ← soma + vet[3]
//Finalização – relatório//
Mostrar ( “Vetor:”,vet[0],vet[1],vet[2],vet[3])
Mostrar ( “Soma:”,soma)
vet[0] vet[1] vet[2] vet[3] soma
10 15 20 45 0
10
Somando o conteúdo de um
vetor em uma variável
//declaração de variáveis//
Inteiro vet[4]
Inteiro soma
//inicialização das variáveis//
vet[0] ← 10 vet[1] ← 15
vet[2] ← 20 vet[3] ← 45
Soma ← 0
//processamento das variáveis//
soma ← soma + vet[0]
soma ← soma + vet[1]
soma ← soma + vet[2]
soma ← soma + vet[3]
//Finalização – relatório//
Mostrar ( “Vetor:”,vet[0],vet[1],vet[2],vet[3])
Mostrar ( “Soma:”,soma)
vet[0] vet[1] vet[2] vet[3] soma
10 15 20 45 0
10
25
Somando o conteúdo de um
vetor em uma variável
//declaração de variáveis//
Inteiro vet[4]
Inteiro soma
//inicialização das variáveis//
vet[0] ← 10 vet[1] ← 15
vet[2] ← 20 vet[3] ← 45
Soma ← 0
//processamento das variáveis//
soma ← soma + vet[0]
soma ← soma + vet[1]
soma ← soma + vet[2]
soma ← soma + vet[3]
//Finalização – relatório//
Mostrar ( “Vetor:”,vet[0],vet[1],vet[2],vet[3])
Mostrar ( “Soma:”,soma)
vet[0] vet[1] vet[2] vet[3] soma
10 15 20 45 0
10
25
45
Somando o conteúdo de um
vetor em uma variável
//declaração de variáveis//
Inteiro vet[4]
Inteiro soma
//inicialização das variáveis//
vet[0] ← 10 vet[1] ← 15
vet[2] ← 20 vet[3] ← 45
Soma ← 0
//processamento das variáveis//
soma ← soma + vet[0]
soma ← soma + vet[1]
soma ← soma + vet[2]
soma ← soma + vet[3]
//Finalização – relatório//
Mostrar ( “Vetor:”,vet[0],vet[1],vet[2],vet[3])
Mostrar ( “Soma:”,soma)
vet[0] vet[1] vet[2] vet[3] soma
10 15 20 45 0
10
25
45
90
Matrizes
● Mesma idéia dos vetores, porém com dois
índices
● Um índice para a linha, outro para a coluna
Inteiro matriz[ 2 ][ 3 ]
Linha
Coluna
Inteiro matriz [2][3]
Matriz [ 0 ][ 0 ] ← 10
Matriz [ 0 ][ 1 ] ← 11
Matriz [ 0 ][ 2 ] ← 12
Matriz [ 1 ][ 0 ] ← 20
Matriz [ 1 ][ 1 ] ← 21
Matriz [ 1 ][ 2 ] ← 22
10 11 12
20 21 22
//declaração de variáveis//
Inteiro vet[2][3]
Inteiro soma
//inicialização das variáveis//
vet[0][0] ← 10 vet[0][1] ← 15 vet[0][2] ← 12
vet[1][0] ← 21 vet[1][1] ← 25 vet[1][2] ← 22
Soma ← 0
//processamento das variáveis//
soma ← soma + vet[0][0]
soma ← soma + vet[0][1]
soma ← soma + vet[0][2]
soma ← soma + vet[1][0]
soma ← soma + vet[1][1]
soma ← soma + vet[1][2]
//Finalização – relatório//
Mostrar ( “Soma:”,soma)
Comparações
> maior
< menor
>= maior ou igual
<= menor ou igual
!= não igual
== igual
Inteiro a
a ← 10
a>10 → falso
a<10 → falso
a==10 → verdadeiro
a>=10 → verdadeiro
a<=10 → verdadeiro
A != 5 → verdadeiro
Comandos – Laço - Enquanto
Enquanto <condição> faça
Fim Enquanto
Inteiro contador
contador ← 0
Enquanto contador<10 faça
contador ← contador + 1
Fim Enquanto
Verdadeiro ou 
falso
Comandos – Laço - Para
Para [variavel] ← LI até LS faça
Fim Para
//LI-limite inferior
//LS-limite superior
Inteiro c
Para c ← 0 até 10 faça
Fim Para
//declaração de variáveis//
Inteiro vet[4]
Inteiro soma, ID
//inicialização das variáveis//
vet[0] ← 10 vet[1] ← 15
vet[2] ← 20 vet[3] ← 45
Soma ← 0 ID ← 0
//processamento das variáveis//
Enquanto ID<10 faça
soma ← soma + vet[ID]
 ID ← ID + 1
Fim Enquanto
//Finalização – relatório//
Mostrar ( “Vetor:”,vet[0],vet[1],vet[2],vet[3])
Mostrar ( “Soma:”,soma)
Soma de vetor usando Enquanto
Soma de vetor usando Para
//declaração de variáveis//
Inteiro vet[4]
Inteiro soma, ID
//inicialização das variáveis//
vet[0] ← 10 vet[1] ← 15
vet[2] ← 20 vet[3] ← 45
Soma ← 0 
//processamento das variáveis//
Para ID ←0 até 10 faça
soma ← soma + vet[ID]
Fim Enquanto
//Finalização – relatório//
Mostrar ( “Vetor:”,vet[0],vet[1],vet[2],vet[3])
Mostrar ( “Soma:”,soma)
Desvio Condicional
● Desvia a execução do programa para um outro
trecho de código de acordo com a condição
Se <cond> Então
Fim Se
Se <cond> Então
Senão
Fim Se
Se <cond> Então
Senão Se <cond> então
Senão Se <cond> então
Senão
Fim Se
//declaração de variáveis//
Inteiro vet[4], soma, ID
//inicialização das variáveis//
vet[0] ← 10 vet[1] ← 15
vet[2] ← 20 vet[3] ← 45 Soma ← 0
//processamento das variáveis//
Para ID ←0 até 10 faça
soma ← soma + vet[ID]
Fim Enquanto
Se soma<10 então
 Mostrar(“Valor insuficiente”)
 Soma ← soma *2
Senão
 Mostrar ( “ Valor suficiente”)
Fim Se
//Finalização – relatório//
Mostrar ( “Vetor:”,vet[0],vet[1],vet[2],vet[3])
Mostrar ( “Soma:”,soma)
	Slide 1
	Slide 2
	Slide 3
	Slide 4
	Slide 5
	Slide 6
	Slide 7
	Slide 8
	Slide 9
	Slide 10
	Slide 11
	Slide 12
	Slide 13
	Slide 14
	Slide 15
	Slide 16
	Slide 17
	Slide 18
	Slide 19
	Slide 20
	Slide 21
	Slide 22
	Slide 23
	Slide 24
	Slide 25
	Slide 26
	Slide 27
	Slide 28
	Slide 29
	Slide 30
	Slide 31
	Slide 32
	Slide 33
	Slide 34
	Slide 35
	Slide 36
	Slide 37
	Slide 38
	Slide 39
	Slide 40
	Slide 41
	Slide 42
	Slide 43
	Slide 44
	Slide 45
	Slide 46

Continue navegando