Buscar

Algoritmos e logica de programacao (1)

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

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

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ê viu 3, do total de 36 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

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

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ê viu 6, do total de 36 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

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

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ê viu 9, do total de 36 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

Prévia do material em texto

Algoritmos 
e 
 Lógica de Programação 
Prof. Helton Molina Sapia 
Prof. Helton Molina Sapia 
Formalização de algoritmos 
Prof. Helton Molina Sapia 
Formas de Representação de 
Algoritmos 
As três formas mais comuns de representar 
algoritmos são: 
 
1.Descrição Narrativa 
2.Fluxograma 
3.Pseudocódigo (Portugol) 
 
Prof. Helton Molina Sapia 
Descrição Narrativa 
 Detalhar passo a passo a resolução de um 
problema utilizando a linguagem natural, como 
por exemplo a língua portuguesa. 
 Essa forma apresenta a vantagem de não 
requerer nenhum conceito novo, basta saber a 
língua natural. 
 Mas cuidado, pois a língua natural permite 
várias interpretações, o que pode significar 
uma desvantagem para o correto 
entendimento do algoritmo. 
Prof. Helton Molina Sapia 
Descrição Narrativa 
 Algoritmo para obter o quadrado de um 
número: 
 
1. Conhecer o número. 
2. Multiplicar o número por ele mesmo. 
3. Mostrar o resultado da multiplicação. 
Prof. Helton Molina Sapia 
Fluxograma 
 É uma representação gráfica que utilizando 
símbolos, previamente acordados, apresenta a 
resolução de um determinado problema. 
• Os símbolos são de fácil entendimento então 
como vantagem temos uma representação 
mais simples. 
Prof. Helton Molina Sapia 
Fluxograma 
• O erro no entendimento de algum símbolo 
comprometerá a transcrição para um 
programa, além dessa desvantagem, o 
fluxograma pode perder detalhes da descrição 
narrativa. 
Prof. Helton Molina Sapia 
 
Fluxograma 
 DICA 
 
 A norma ISO 5807/1985 apresenta uma 
padronização de símbolos a serem utilizados nos 
fluxogramas, é importante que cada símbolo seja 
utilizado dentro do contexto de sua aplicação. 
Prof. Helton Molina Sapia 
 
Fluxograma 
 Todo fluxograma deve ter bem claro o seu 
início e o seu fim, permitindo assim uma 
correta interpretação dos passos a serem 
seguidos. 
 Setas indicam o caminho que deve ser 
seguido. 
Início Início 
Fim Fim 
Prof. Helton Molina Sapia 
 
Fluxograma 
 Algoritmo para obter o quadrado de um 
número: 
 
Início Início 
Fim Fim 
N N 
R = N * N R = N * N 
R R 
Prof. Helton Molina Sapia 
Fluxograma 
 Conjunto de símbolos utilizados em 
fluxograma. 
 
Símbolo Nome Utilidade 
Terminador Representar o início ou o fim 
do algoritmo. 
Seta Indica o sentido do fluxo de 
dados, ou atribuição de 
valores. 
Entrada de 
Dados 
Representa dados básicos 
de entrada. 
Processo Representa qualquer tipo de 
processamento como 
cálculos e atribuições de 
valores. 
Prof. Helton Molina Sapia 
Fluxograma 
 Conjunto de símbolos utilizados em 
fluxograma. 
 Símbolo Nome Utilidade 
Decisão Representar uma decisão ou 
um desvio, dentre vários 
caminhos possíveis somente 
um é assumido de acordo 
com a condição. 
Saída de 
Dados 
Indica uma saída de dados 
legíveis por seres humanos. 
 
Prof. Helton Molina Sapia 
Pseudocódigo 
 Consiste basicamente na escrita da resolução 
do problema obedecendo a regras específicas. 
 Sua escrita é muito próxima das linguagens 
reais de programação representando assim 
uma vantagem no momento de converter a 
escrita. 
 Exige domínio sobre as regras de escrita de 
pseudocódigo (desvantagem). 
Prof. Helton Molina Sapia 
Pseudocódigo 
 Regras de escrita de pseudocódigo: 
O pseudocódigo possui uma estrutura padrão: 
 
ALGORITMO 
DECLARE 
bloco de comandos 
FIM_ALGORITMO 
Prof. Helton Molina Sapia 
Pseudocódigo 
 Regras de escrita de pseudocódigo: 
É necessário declarar as variáveis que serão utilizadas, os tipos 
mais comuns são: 
 
ALGORITMO 
DECLARE 
X NUMÉRICO 
Y, Z LITERAL 
T LÓGICO 
bloco de comandos 
FIM_ALGORITMO 
Prof. Helton Molina Sapia 
Pseudocódigo 
 Regras de escrita de pseudocódigo: 
Para atribuir valores ou operações a variáveis deve ser utilizado o 
símbolo : 
ALGORITMO 
DECLARE 
X NUMÉRICO 
Y LITERAL 
T LÓGICO 
X  1 
Y  “um” 
T  verdadeiro 
FIM_ALGORITMO 
Prof. Helton Molina Sapia 
Pseudocódigo 
 Regras de escrita de pseudocódigo: 
É possível ler os dados digitados pelo usuário para uma variável 
especificada: 
 
ALGORITMO 
DECLARE 
X NUMÉRICO 
LEIA X 
FIM_ALGORITMO 
Prof. Helton Molina Sapia 
Pseudocódigo 
 Regras de escrita de pseudocódigo: 
Também é possível mostrar dados ou mensagens na tela ou 
impressora: 
 
ALGORITMO 
DECLARE 
X NUMÉRICO 
ESCREVA “O conteúdo de X é ”, X 
FIM_ALGORITMO 
Prof. Helton Molina Sapia 
Pseudocódigo 
 Algoritmo que calcula a área de um retângulo: 
 
ALGORITMO 
DECLARE L1, L2, A NUMÉRICO 
ESCREVA “Digite os dois lados do retângulo:” 
LEIA L1, L2 
A  L1 * L2 
ESCREVA “A área do retângulo é ”, A 
FIM_ALGORITMO 
Prof. Helton Molina Sapia 
Estruturas de programação 
 As estruturas de programação permitem 
basicamente que qualquer algoritmo 
computável seja escrito, consistem em: 
Estruturas sequenciais 
Estruturas de decisão 
Estruturas de repetição 
Prof. Helton Molina Sapia 
Estruturas sequenciais 
 Estrutura de programação sequencial: 
Representam comandos que são executados 
obrigatoriamente sem desvio de caminho. 
 
Problema: 
Sabendo que 1 m2 de parede consome 5 quilos de cimento e que 
o saco de cimento pesa 50 quilos, dada uma quantidade de sacos 
de cimento informe o rendimento em m2 de parede construída. 
 
Prof. Helton Molina Sapia 
Estruturas sequenciais 
 Descrição Narrativa 
 
1. Conhecer a quantidade de sacos de cimento 
2. Calcular quantidade de sacos de cimento vezes 50 e dividir 
por 5. 
3. Mostrar o resultado informando que esta será a quantidade de 
m2 de parede construída. 
Prof. Helton Molina Sapia 
Estruturas de decisão 
 Estas estruturas de programação permitem 
uma tomada de decisão sobre um caminho a 
ser escolhido de acordo com o resultado de 
uma expressão lógica, podem ser simples ou 
compostas. 
 Possui apenas duas situações possíveis, 
verdadeiro ou falso. 
 Também é conhecida com estrutura 
condicional. 
 
Prof. Helton Molina Sapia 
Estruturas de decisão 
 Operadores lógicos: E, OU, NÃO 
Tabela E Tabela OU Tabela NÃO 
V e V = V V ou V = V Não V = F 
V e F = F V ou F = V Não F = V 
F e V = F F ou V = V 
F e F = F F ou F = F 
Prof. Helton Molina Sapia 
Estruturas de decisão 
 Estrutura condicional simples. 
 
SE condição 
ENTÃO comando 
Ou 
SE condição 
ENTÃO INÍCIO 
comando 1 
comando 2 
comando 3 
FIM 
Prof. Helton Molina Sapia 
Estruturas de decisão 
 Estrutura condicional composta. 
Prof. Helton Molina Sapia 
Estruturas de decisão 
Problema: 
Dado um número inteiro, verificar se é par ou impar. 
 
Descrição narrativa 
 
1.Conhecer o número inteiro 
2.Dividir o número por dois e guardar o resto 
3.Se o resto for zero informe que o número é par 
4.Senão informe que o número é impar 
 
Prof. Helton Molina Sapia 
Estrutura de repetição 
 Estas estruturas permitem que alguns trechos 
ou até mesmo todo o algoritmo seja executado 
repetidas vezes. 
 O número de repetições pode variar conforme 
uma condição, ou ainda ser fixo. 
 Basicamente existem os tipos: 
 PARA 
 ENQUANTO 
 REPITA 
Prof. Helton Molina Sapia 
Estrutura de repetição 
 Número definido de repetições (PARA) 
 
PARA I  valor inicial ATÉ valor final FAÇA [PASSO n] 
INÍCIO 
comando1 
comando2 
... 
comandoN 
FIM 
Prof. Helton Molina Sapia 
Estrutura de repetição Número indefinido de repetições e teste no 
início (ENQUANTO) 
 
ENQUANTO condição FAÇA 
INÍCIO 
comando1 
comando2 
... 
comandoN 
FIM 
Prof. Helton Molina Sapia 
Estrutura de repetição 
 Número indefinido de repetições e teste no 
final (REPITA) 
 
REPITA 
comando1 
comando2 
... 
comandoN 
ATÉ condição 
Prof. Helton Molina Sapia 
Estrutura de repetição 
 A diferença básica entre a estrutura 
ENQUANTO e a estrutura REPITA é que a 
estrutura REPITA será executada pelo menos 
uma vez, pois a condição de parada se 
encontra no final. 
 
Problema 
Determinar o máximo divisor comum entre dois números inteiros 
utilizando o algoritmo de Euclides (400-300 a.C.) 
Prof. Helton Molina Sapia 
Estrutura de repetição 
Descrição narrativa 
 
1.Conhecer os dois número inteiro x e y 
2.Enquanto y for diferente de zero execute os passos de 3 a 5, de 
pois vá para o passo 6 
3.Armazene em r o resto da divisão entre x e y 
4.Armazene em x o valor de y 
5.Armazene em y o valor de r 
6.Exibir o resultado do máximo divisor comum que está em x. 
Prof. Helton Molina Sapia 
Estrutura de repetição 
Fluxograma 
 
Início Início 
Fim Fim 
x,y x,y 
r  x mod y r  x mod y 
x x 
Y≠0 Y≠0 
Verdadeiro Falso 
x  y x  y 
y  r y  r 
Prof. Helton Molina Sapia 
Estrutura de repetição 
Prof. Helton Molina Sapia 
DÚVIDAS ????????

Outros materiais