SlideShare uma empresa Scribd logo
1 de 24
Formas de
Representação de
Algoritmos
Prof.ª Ms. Eng.ª Elaine Cecília Gatto
Algoritmos e Estruturas de Dados
Engenharia de Computação
Universidade Sagrado Coração
Introdução
• Existem diversas formas de representação de algoritmos, mas
não há um consenso com relação à melhor delas.
• Algumas formas de representação de algoritmos tratam os
problemas apenas em nível lógico, abstraindo-se de detalhes
de implementação muitas vezes relacionados com alguma
linguagem de programação específica.
• Por outro lado existem formas de representação de algoritmos
que possuem uma maior riqueza de detalhes e muitas vezes
acabam por obscurecer as idéias principais do algoritmo,
dificultando seu entendimento.
Introdução
• Dentre as formas de representação de algoritmos mais
conhecidas podemos citar:
• Descrição Narrativa;
• Fluxograma Convencional;
• Pseudocódigo, também
Estruturada ou Portugol.

conhecido

como

Linguagem
Narração Descritiva
• Nesta forma de representação os algoritmos são expressos
diretamente em linguagem natural. Exemplo de uma receita de
bolo:
•
•
•
•
•
•
•
•
•
•

Misture os ingredientes
Unte a forma com manteiga
Despeje a mistura na forma
Se houver coco ralado
então despeje sobre a mistura
Leve a forma ao forno
Enquanto não corar
deixe a forma no forno
Retire do forno
Deixe esfriar
Narração Descritiva
• Exemplo de um pneu furado:
•
•
•
•
•
•
•
•

Troca de um pneu furado:
Afrouxar ligeiramente as porcas
Suspender o carro
Retirar as porcas e o pneu
Colocar o pneu reserva
Apertar as porcas
Abaixar o carro
Dar o aperto final nas porcas
Narração Descritiva
• Exemplo do cálculo da média de um aluno:
•
•
•
•
•
•

Cálculo da média de um aluno:
Obter as suas 2 notas de provas
Calcular a média aritmética
Se a média for maior que 7,
o aluno foi aprovado,
senão ele foi reprovado
Narração Descritiva
• Esta representação é pouco usada na prática porque o uso da
linguagem natural muitas vezes dá oportunidade a más
interpretações, ambigüidades e imprecisões.
• Por exemplo, a instrução "afrouxar ligeiramente as porcas" no
algoritmo da troca de pneus está sujeita a interpretações
diferentes por pessoas distintas.
• Uma instrução mais precisa seria: "afrouxar a porca, girando-a
30º no sentido anti-horário".
Fluxograma
• É uma representação gráfica de algoritmos onde formas
geométricas diferentes implicam ações (instruções, comandos)
distintos.
• Tal propriedade facilita o entendimento das idéias contidas nos
algoritmos e justifica sua popularidade.
• Esta forma é aproximadamente intermediária à descrição
narrativa e ao pseudocódigo (subitem seguinte), pois é menos
imprecisa que a primeira e, no entanto, não se preocupa com
detalhes de implementação do programa.
• Nota-se que os fluxogramas convencionais preocupam-se com
detalhes de nível físico da implementação do algoritmo.
• Por exemplo, figuras geométricas diferentes são adotadas para
representar operações de saída de dados realizadas em
dispositivos distintos, como uma fita magnética ou um monitor
de vídeo.
Fluxograma
• O pacote office possui os símbolos do fluxograma. Na aba
INSERT, na parte ILLUSTRATIONS, existe o botão SHAPES. Na
setinha aparecem os símbolos de desenho, entre eles o
FLOWCHART, ou FLUXOGRAMA.
Fluxograma
SÍMBOLO

FUNÇÃO

DESCRIÇÃO

Process ou
Processo

Representa todo tipo de ação (em Matemática seriam
as Operações Aritméticas e Lógicas, a Atribuição, etc).

Process Alternate
ou Processo
Alternativo

Raramente utilizado, indica uma forma diferente de se
fazer o mesmo processo.

Decision ou
Decisão

Uma ação que é efetuada de acordo com uma
condição. Exemplo: Se o aluno tirou nota 7, então ele
está aprovado, caso contrário, está reprovado.

Data ou Dados

Representa o símbolo de dados, entrada e saída
simultaneamente.

Predefined Process
ou Processo PréDefinido

Raramente utilizado. Processo já conhecido que será
aplicado ao fluxo.
Fluxograma
SÍMBOLO

FUNÇÃO

DESCRIÇÃO

Document ou
Documento

Símbolo utilizado para indicar a criação de um
documento.

Multi-Document
ou Múltiplos
Documentos

Símbolo utilizado para indicar a criação de vários
documentos.

Terminator ou
Terminador

Utilizado para inicar e terminar o fluxograma

Preparation ou
Preparação

Raramente utilizado.

Manual Input ou
Entrada Manual

Corresponde à instrução de entrada de dados através
do teclado. Atualmente é considerado o símbolo para
qualquer entrada de dados.
Fluxograma
SÍMBOLO

FUNÇÃO

DESCRIÇÃO

Manual Operation
Raramente utilizado. Corresponde à operação
ou Operação Manual manual de algum processo.
Connector ou
Conector

Raramente utilizado.

Off-Page Connector
ou Conector Fora de
Página

Raramente utilizado.

Card ou Cartão

Símbolo que corresponde ao cartão perfurado,
que não é mais utilizado atualmente.

Punched Tape ou Fita Símbolo que corrresponde à fita perfurada, que
Perfurada
não é mais utilizada atualmente.
Fluxograma
SÍMBOLO

FUNÇÃO

DESCRIÇÃO

Summing Junction ou
Tem a função da tabela verdade E.
Somador

OR – OU

Collate ou
Agrupamento

Sort ou Classificação

Seta de Fluxo

Tem a função da tabela verdade OU.

Símbolo utilizado para agrupar dados.

Símbolo utilizado para classificar os dados, por
exemplo, em ordem alfabética
Indica para onde está indo a informação
Fluxograma
SÍMBOLO

FUNÇÃO

DESCRIÇÃO

Internal Storage ou
Armazenamento
Interno

Raramente utilizado. Símbolo que representa o
armazenamento em memória.

Extract ou Extração

Símbolo utilizado para extração de dados. Em
banco de dados, através de comandos SQL,
conseguir extrair algumas informações, até então
tidas como desconexas, da base de dados.

Merge ou Mesclar

Símbolo utilizado para mesclar os dados. No excel,
esse “comando” transforma duas colunas em uma.

Stored Data ou
Dados Armazenados

Delay ou Atraso

Referente aos dados que estão guardados.

Referente à tempo de atraso. Por exemplo, quanto
tempo o resultado de uma conta, vai ficar
aparecendo na tela?
Fluxograma
SÍMBOLO

FUNÇÃO

DESCRIÇÃO

Sequential Storage
Access ou
Armazenamento de
Acesso Sequencial

Símbolo para armazenamento de dados de forma
sequencial, significa que os dados serão acessados
na ordem na qual foram armazenados.

Magnetic Disk ou
Disco Magnético

Símbolo para armazenamento de dados, no caso o
disco rígido (HD)

Símbolo para armazenamento de dados direto,
Direct Access Storage
significa que os dados podem ser recuperados
ou Armazenamento
diretamente sem passar por outros dados na
de Acesso Direto
seqüência.
Display ou Exibição

É considerado também o símbolo para SAÍDA de
dados, como uma impressora ou monitor.
Exemplos
• Exemplo 1:
• Desenvolva uma solução para o problema a seguir
utilizando as formas de representação “descrição narrativa”,
“fluxograma” e “algoritmo” para demonstrar o seu
raciocínio.
• Problema: O software (ou programa) a ser desenvolvido
deve solicitar ao usuário dois números do tipo real. O
usuário deve digitar esses números. Em seguida, o
programa deve somar esses números e apresentar o
resultado na tela.
Exemplos
• Exemplo 1:
• Solução:
• Descrição narrativa:
• Apresentar na tela uma mensagem para o usuário,
informando-o que deverá digitar dois números do tipo real.
• Após ler a mensagem, o usuário deverá inserir os números,
através do teclado, que serão lidos e armazenados em duas
variáveis diferentes;
• Em seguida, será aplicada a operação de soma nos dois
operandos, isto é, nos dois números que foram inseridos
pelo usuário, sendo o resultado armazendo em uma
terceira variável;
• O resultado será então apresentado na tela para o usuário
por um período de tempo, finalizando assim o programa.
Fluxograma
• Exemplo 1:
• Solução:
• Fluxograma:

INÍCIO

“Digite dois
números do
tipo real”

Leia X
Leia Y

Z=X+Y

FIM

30
segundos

“O resultado
da soma entre
X e Y é Z”
Fluxograma
• Exemplo 1:
• Solução:
• Algoritmo:
1. Início do algoritmo;
2. Apresentar na tela a seguinte mensagem para o usuário:
“Digite dois números do tipo real”;
3. Ler o número X e ler o número Y;
4. Somar o número X com o número Y;
5. Colocar o resultado em Z;
6. Apresentar na tela a seguinte mensagem para o usuário: “A
soma entre os números X, ‘X’, e Y, ‘Y’, é Z, ‘Z’ ”.
7. Manter a mensagem na tela por 30 segundos.
8. Fim do algoritmo
Exemplos
• Exemplo 2:
• Desenvolva uma solução para o problema a seguir
utilizando as formas de representação “descrição narrativa”,
“fluxograma” e “algoritmo” para demonstrar o seu
raciocínio.
• Problema: O software (ou programa) a ser desenvolvido
deve solicitar que o usuário digite as quatro notas que
obteve em suas quatro provas. O usuário deve digitar esses
números que são do tipo real. Em seguida, o programa
deve fazer a média desses números e apresentar o
resultado na tela.
Exemplos
• Exemplo 2:
• Solução:
• Descrição narrativa:
• Apresentar na tela uma mensagem para o usuário, informando-o
que deverá digitar os valores das notas das quatro provas que
realizou.
• Após ler a mensagem, o usuário deverá inserir os números,
através do teclado, que serão lidos e armazenados em quatro
variáveis diferentes;
• Em seguida, será aplicada duas operações;
• uma que soma os quatro operandos e armazena o resultado
em uma variável SOMA;
• outra que divide o resultado da SOMA pelo valor 4 (quatro) e
armazena o resultado da variável em MÉDIA;
• O resultado, MÉDIA, será então apresentado na tela para o
usuário por um período de tempo, finalizando assim o programa.
Fluxograma
• Exemplo 2:
• Solução:
• Fluxograma:

INÍCIO
“Digite os
valores das
quatro provas”

Leia X, Y, Z, W

SOMA = X + Y + Z + W

MÉDIA = SOMA / 4

FIM

30
segundos

“A nota final do
aluno é: , MÉDIA”
Fluxograma
• Exemplo 2:
• Solução:
• Algoritmo:
1. Início do algoritmo;
2. Apresentar na tela a seguinte mensagem para o usuário:
“Digite as quatro notas das provas (tipo real)”;
3. Ler os números X, Y, Z e W;
4. Somar os números X, Y, Z e W;
5. Colocar o resultado em SOMA;
6. Dividir a SOMA por 4;
7. Colocar o resultado em MÉDIA;
8. Apresentar na tela a seguinte mensagem para o usuário: “A
média final do aluno é: , MÉDIA”;
9. Manter a mensagem na tela por 30 segundos;
10. Fim do algoritmo.
Exercícios
• Faça uma descrição narrativa, um fluxograma e também um
algoritmo para as seguintes situações:
1. Levantar da Cama;
2. Lavar Roupa;
3. Trocar um Pneu Furado;
4. Trocar uma Lâmpada;
5. Ir para a Balada;
6. Obedecer os Pais;
7. Lavar a louça;
8. Assistir um filme em DVD;
9. Fazer um bolo recheado;
10. Fazer uma ligação pelo celular;

Mais conteúdo relacionado

Mais procurados

Algoritmos e lp parte3-pseudocódigo
Algoritmos e lp parte3-pseudocódigoAlgoritmos e lp parte3-pseudocódigo
Algoritmos e lp parte3-pseudocódigo
Mauro Pereira
 
Material aula informática básica
Material aula informática básicaMaterial aula informática básica
Material aula informática básica
Carlos Melo
 
1ª aula introdução a informática
1ª aula introdução a informática1ª aula introdução a informática
1ª aula introdução a informática
socrahn
 
Lista de exercícios resolvidos
Lista de exercícios resolvidosLista de exercícios resolvidos
Lista de exercícios resolvidos
Crishna Irion
 

Mais procurados (20)

Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Aula 01 - Algoritmo e Programação
Aula 01 - Algoritmo e ProgramaçãoAula 01 - Algoritmo e Programação
Aula 01 - Algoritmo e Programação
 
Algoritmo aula 01-f
Algoritmo   aula 01-fAlgoritmo   aula 01-f
Algoritmo aula 01-f
 
Variáveis e portugol
Variáveis e portugolVariáveis e portugol
Variáveis e portugol
 
Algoritmos e lp parte3-pseudocódigo
Algoritmos e lp parte3-pseudocódigoAlgoritmos e lp parte3-pseudocódigo
Algoritmos e lp parte3-pseudocódigo
 
Aula 06 - Sistema Binário
Aula 06 - Sistema BinárioAula 06 - Sistema Binário
Aula 06 - Sistema Binário
 
Algoritmos e Técnicas de Programação - Curso Completo
Algoritmos e Técnicas de Programação - Curso CompletoAlgoritmos e Técnicas de Programação - Curso Completo
Algoritmos e Técnicas de Programação - Curso Completo
 
Aula01 - Logica de Programação
Aula01 - Logica de ProgramaçãoAula01 - Logica de Programação
Aula01 - Logica de Programação
 
Informática Básica - Aula 03 - Hardware
Informática Básica - Aula 03 - HardwareInformática Básica - Aula 03 - Hardware
Informática Básica - Aula 03 - Hardware
 
Introdução à Lógica de Programação
Introdução à Lógica de ProgramaçãoIntrodução à Lógica de Programação
Introdução à Lógica de Programação
 
Material aula informática básica
Material aula informática básicaMaterial aula informática básica
Material aula informática básica
 
Exercicios de Algoritimos
 Exercicios de Algoritimos Exercicios de Algoritimos
Exercicios de Algoritimos
 
Analógico vs. Digital
Analógico vs. DigitalAnalógico vs. Digital
Analógico vs. Digital
 
1ª aula introdução a informática
1ª aula introdução a informática1ª aula introdução a informática
1ª aula introdução a informática
 
Introdução a Algoritmos: Conceitos Básicos
Introdução a Algoritmos: Conceitos BásicosIntrodução a Algoritmos: Conceitos Básicos
Introdução a Algoritmos: Conceitos Básicos
 
Algoritmos - Aula 07 B - Exercicios Vetores - Resolucao
Algoritmos - Aula 07 B - Exercicios Vetores - ResolucaoAlgoritmos - Aula 07 B - Exercicios Vetores - Resolucao
Algoritmos - Aula 07 B - Exercicios Vetores - Resolucao
 
Lista de exercícios resolvidos
Lista de exercícios resolvidosLista de exercícios resolvidos
Lista de exercícios resolvidos
 
Excel Básico
Excel BásicoExcel Básico
Excel Básico
 
Exercicios de estruturas condicionais - Lógica de Programação
Exercicios de estruturas condicionais - Lógica de ProgramaçãoExercicios de estruturas condicionais - Lógica de Programação
Exercicios de estruturas condicionais - Lógica de Programação
 
Banco de dados exercícios resolvidos
Banco de dados exercícios resolvidosBanco de dados exercícios resolvidos
Banco de dados exercícios resolvidos
 

Semelhante a Algoritmos - Formas de Representação de Algoritmos

Algoritmos e linguagem pascal
Algoritmos e linguagem pascalAlgoritmos e linguagem pascal
Algoritmos e linguagem pascal
angelicamenegassi
 
Apostila de algoritimos
Apostila de algoritimosApostila de algoritimos
Apostila de algoritimos
Cleide Soares
 
Introdução à programação
Introdução à programaçãoIntrodução à programação
Introdução à programação
12anogolega
 

Semelhante a Algoritmos - Formas de Representação de Algoritmos (20)

Algoritmos e linguagem pascal
Algoritmos e linguagem pascalAlgoritmos e linguagem pascal
Algoritmos e linguagem pascal
 
Algoritmos e linguagem pascal
Algoritmos e linguagem pascalAlgoritmos e linguagem pascal
Algoritmos e linguagem pascal
 
Cap03
Cap03Cap03
Cap03
 
Cap03
Cap03Cap03
Cap03
 
Cap03
Cap03Cap03
Cap03
 
Aula02
Aula02Aula02
Aula02
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Aula02
Aula02Aula02
Aula02
 
Algoritmos - Aula 02 - Construcao de algoritmos
Algoritmos - Aula 02 - Construcao de algoritmosAlgoritmos - Aula 02 - Construcao de algoritmos
Algoritmos - Aula 02 - Construcao de algoritmos
 
Apostila de algoritimos
Apostila de algoritimosApostila de algoritimos
Apostila de algoritimos
 
Introdução à programação
Introdução à programaçãoIntrodução à programação
Introdução à programação
 
Unidade 111 estrutura de dados e lógica de programação - com respostas 15-0...
Unidade 111   estrutura de dados e lógica de programação - com respostas 15-0...Unidade 111   estrutura de dados e lógica de programação - com respostas 15-0...
Unidade 111 estrutura de dados e lógica de programação - com respostas 15-0...
 
Unidade 111 estrutura de dados e lógica de programação - com respostas 15-0...
Unidade 111   estrutura de dados e lógica de programação - com respostas 15-0...Unidade 111   estrutura de dados e lógica de programação - com respostas 15-0...
Unidade 111 estrutura de dados e lógica de programação - com respostas 15-0...
 
Unidade 111 estrutura de dados e lógica de programação - com respostas 15-0...
Unidade 111   estrutura de dados e lógica de programação - com respostas 15-0...Unidade 111   estrutura de dados e lógica de programação - com respostas 15-0...
Unidade 111 estrutura de dados e lógica de programação - com respostas 15-0...
 
Unidade 111 estrutura de dados e lógica de programação - com respostas 15-0...
Unidade 111   estrutura de dados e lógica de programação - com respostas 15-0...Unidade 111   estrutura de dados e lógica de programação - com respostas 15-0...
Unidade 111 estrutura de dados e lógica de programação - com respostas 15-0...
 
mod1-algoritmia
mod1-algoritmiamod1-algoritmia
mod1-algoritmia
 
Algoritmo estruturado
Algoritmo estruturadoAlgoritmo estruturado
Algoritmo estruturado
 
Algoritmo5deprogramaçãosskdjsdkjskdj.pptx
Algoritmo5deprogramaçãosskdjsdkjskdj.pptxAlgoritmo5deprogramaçãosskdjsdkjskdj.pptx
Algoritmo5deprogramaçãosskdjsdkjskdj.pptx
 
FC-Logic
FC-LogicFC-Logic
FC-Logic
 
Aula 3 - Formas de Representacao de Algoritmos.pptx
Aula 3 - Formas de Representacao de Algoritmos.pptxAula 3 - Formas de Representacao de Algoritmos.pptx
Aula 3 - Formas de Representacao de Algoritmos.pptx
 

Mais de Elaine Cecília Gatto

Mais de Elaine Cecília Gatto (20)

A influência da Tecnologia em cada faixa etaria
A influência da Tecnologia em cada faixa etariaA influência da Tecnologia em cada faixa etaria
A influência da Tecnologia em cada faixa etaria
 
Inteligência Artificial Aplicada à Medicina
Inteligência Artificial Aplicada à MedicinaInteligência Artificial Aplicada à Medicina
Inteligência Artificial Aplicada à Medicina
 
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
 
Apresentação da minha tese de doutorado no EPPC
Apresentação da minha tese de doutorado no EPPCApresentação da minha tese de doutorado no EPPC
Apresentação da minha tese de doutorado no EPPC
 
entrevista r7.pdf
entrevista r7.pdfentrevista r7.pdf
entrevista r7.pdf
 
Como a pesquisa científica impacta o mundo real.pptx
Como a pesquisa científica impacta o mundo real.pptxComo a pesquisa científica impacta o mundo real.pptx
Como a pesquisa científica impacta o mundo real.pptx
 
Empoderamento Feminino
Empoderamento FemininoEmpoderamento Feminino
Empoderamento Feminino
 
Explorando correlações entre rótulos para o particionamento do espaço de rótu...
Explorando correlações entre rótulos para o particionamento do espaço de rótu...Explorando correlações entre rótulos para o particionamento do espaço de rótu...
Explorando correlações entre rótulos para o particionamento do espaço de rótu...
 
Community Detection for Multi-Label Classification - Seminários UFSCar
Community Detection for Multi-Label Classification - Seminários UFSCarCommunity Detection for Multi-Label Classification - Seminários UFSCar
Community Detection for Multi-Label Classification - Seminários UFSCar
 
Classificação Multirrótulo: Aprendizado de Correlações
Classificação Multirrótulo: Aprendizado de CorrelaçõesClassificação Multirrótulo: Aprendizado de Correlações
Classificação Multirrótulo: Aprendizado de Correlações
 
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
 
Community Detection Method for Multi-Label Classification
Community Detection Method for Multi-Label ClassificationCommunity Detection Method for Multi-Label Classification
Community Detection Method for Multi-Label Classification
 
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdfMulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
 
Curtinhas de sábado.pdf
Curtinhas de sábado.pdfCurtinhas de sábado.pdf
Curtinhas de sábado.pdf
 
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
 
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
 
Pipeline desdobramento escalonamento
Pipeline desdobramento escalonamentoPipeline desdobramento escalonamento
Pipeline desdobramento escalonamento
 
Cheat sheet Mips 32 bits
Cheat sheet Mips 32 bitsCheat sheet Mips 32 bits
Cheat sheet Mips 32 bits
 
Resumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bitsResumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bits
 
Como descobrir e classificar coisas usando machine learning sem compilcação
Como descobrir e classificar coisas usando machine learning sem compilcaçãoComo descobrir e classificar coisas usando machine learning sem compilcação
Como descobrir e classificar coisas usando machine learning sem compilcação
 

Último

QUIZ ensino fundamental 8º ano revisão geral
QUIZ ensino fundamental 8º ano revisão geralQUIZ ensino fundamental 8º ano revisão geral
QUIZ ensino fundamental 8º ano revisão geral
AntonioVieira539017
 
19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf
marlene54545
 
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
azulassessoria9
 
Os editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptxOs editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptx
TailsonSantos1
 
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptxResponde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
AntonioVieira539017
 
Slide - SAEB. língua portuguesa e matemática
Slide - SAEB. língua portuguesa e matemáticaSlide - SAEB. língua portuguesa e matemática
Slide - SAEB. língua portuguesa e matemática
sh5kpmr7w7
 

Último (20)

aula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.pptaula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.ppt
 
QUIZ ensino fundamental 8º ano revisão geral
QUIZ ensino fundamental 8º ano revisão geralQUIZ ensino fundamental 8º ano revisão geral
QUIZ ensino fundamental 8º ano revisão geral
 
Educação Financeira - Cartão de crédito665933.pptx
Educação Financeira - Cartão de crédito665933.pptxEducação Financeira - Cartão de crédito665933.pptx
Educação Financeira - Cartão de crédito665933.pptx
 
19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf
 
Cartão de crédito e fatura do cartão.pptx
Cartão de crédito e fatura do cartão.pptxCartão de crédito e fatura do cartão.pptx
Cartão de crédito e fatura do cartão.pptx
 
Pesquisa Ação René Barbier Livro acadêmico
Pesquisa Ação René Barbier Livro  acadêmicoPesquisa Ação René Barbier Livro  acadêmico
Pesquisa Ação René Barbier Livro acadêmico
 
Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!
Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!
Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!
 
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfCurrículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
 
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
 
Os editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptxOs editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptx
 
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptxSlides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
 
P P P 2024 - *CIEJA Santana / Tucuruvi*
P P P 2024  - *CIEJA Santana / Tucuruvi*P P P 2024  - *CIEJA Santana / Tucuruvi*
P P P 2024 - *CIEJA Santana / Tucuruvi*
 
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptxResponde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
 
LENDA DA MANDIOCA - leitura e interpretação
LENDA DA MANDIOCA - leitura e interpretaçãoLENDA DA MANDIOCA - leitura e interpretação
LENDA DA MANDIOCA - leitura e interpretação
 
Texto dramático com Estrutura e exemplos.ppt
Texto dramático com Estrutura e exemplos.pptTexto dramático com Estrutura e exemplos.ppt
Texto dramático com Estrutura e exemplos.ppt
 
APRESENTAÇÃO - BEHAVIORISMO - TEORIA DA APRENDIZAGEM.pdf
APRESENTAÇÃO - BEHAVIORISMO - TEORIA DA APRENDIZAGEM.pdfAPRESENTAÇÃO - BEHAVIORISMO - TEORIA DA APRENDIZAGEM.pdf
APRESENTAÇÃO - BEHAVIORISMO - TEORIA DA APRENDIZAGEM.pdf
 
Renascimento Cultural na Idade Moderna PDF
Renascimento Cultural na Idade Moderna PDFRenascimento Cultural na Idade Moderna PDF
Renascimento Cultural na Idade Moderna PDF
 
Aula 1 - Psicologia Cognitiva, aula .ppt
Aula 1 - Psicologia Cognitiva, aula .pptAula 1 - Psicologia Cognitiva, aula .ppt
Aula 1 - Psicologia Cognitiva, aula .ppt
 
Aula prática JOGO-Regencia-Verbal-e-Nominal.pdf
Aula prática JOGO-Regencia-Verbal-e-Nominal.pdfAula prática JOGO-Regencia-Verbal-e-Nominal.pdf
Aula prática JOGO-Regencia-Verbal-e-Nominal.pdf
 
Slide - SAEB. língua portuguesa e matemática
Slide - SAEB. língua portuguesa e matemáticaSlide - SAEB. língua portuguesa e matemática
Slide - SAEB. língua portuguesa e matemática
 

Algoritmos - Formas de Representação de Algoritmos

  • 1. Formas de Representação de Algoritmos Prof.ª Ms. Eng.ª Elaine Cecília Gatto Algoritmos e Estruturas de Dados Engenharia de Computação Universidade Sagrado Coração
  • 2. Introdução • Existem diversas formas de representação de algoritmos, mas não há um consenso com relação à melhor delas. • Algumas formas de representação de algoritmos tratam os problemas apenas em nível lógico, abstraindo-se de detalhes de implementação muitas vezes relacionados com alguma linguagem de programação específica. • Por outro lado existem formas de representação de algoritmos que possuem uma maior riqueza de detalhes e muitas vezes acabam por obscurecer as idéias principais do algoritmo, dificultando seu entendimento.
  • 3. Introdução • Dentre as formas de representação de algoritmos mais conhecidas podemos citar: • Descrição Narrativa; • Fluxograma Convencional; • Pseudocódigo, também Estruturada ou Portugol. conhecido como Linguagem
  • 4. Narração Descritiva • Nesta forma de representação os algoritmos são expressos diretamente em linguagem natural. Exemplo de uma receita de bolo: • • • • • • • • • • Misture os ingredientes Unte a forma com manteiga Despeje a mistura na forma Se houver coco ralado então despeje sobre a mistura Leve a forma ao forno Enquanto não corar deixe a forma no forno Retire do forno Deixe esfriar
  • 5. Narração Descritiva • Exemplo de um pneu furado: • • • • • • • • Troca de um pneu furado: Afrouxar ligeiramente as porcas Suspender o carro Retirar as porcas e o pneu Colocar o pneu reserva Apertar as porcas Abaixar o carro Dar o aperto final nas porcas
  • 6. Narração Descritiva • Exemplo do cálculo da média de um aluno: • • • • • • Cálculo da média de um aluno: Obter as suas 2 notas de provas Calcular a média aritmética Se a média for maior que 7, o aluno foi aprovado, senão ele foi reprovado
  • 7. Narração Descritiva • Esta representação é pouco usada na prática porque o uso da linguagem natural muitas vezes dá oportunidade a más interpretações, ambigüidades e imprecisões. • Por exemplo, a instrução "afrouxar ligeiramente as porcas" no algoritmo da troca de pneus está sujeita a interpretações diferentes por pessoas distintas. • Uma instrução mais precisa seria: "afrouxar a porca, girando-a 30º no sentido anti-horário".
  • 8. Fluxograma • É uma representação gráfica de algoritmos onde formas geométricas diferentes implicam ações (instruções, comandos) distintos. • Tal propriedade facilita o entendimento das idéias contidas nos algoritmos e justifica sua popularidade. • Esta forma é aproximadamente intermediária à descrição narrativa e ao pseudocódigo (subitem seguinte), pois é menos imprecisa que a primeira e, no entanto, não se preocupa com detalhes de implementação do programa. • Nota-se que os fluxogramas convencionais preocupam-se com detalhes de nível físico da implementação do algoritmo. • Por exemplo, figuras geométricas diferentes são adotadas para representar operações de saída de dados realizadas em dispositivos distintos, como uma fita magnética ou um monitor de vídeo.
  • 9. Fluxograma • O pacote office possui os símbolos do fluxograma. Na aba INSERT, na parte ILLUSTRATIONS, existe o botão SHAPES. Na setinha aparecem os símbolos de desenho, entre eles o FLOWCHART, ou FLUXOGRAMA.
  • 10. Fluxograma SÍMBOLO FUNÇÃO DESCRIÇÃO Process ou Processo Representa todo tipo de ação (em Matemática seriam as Operações Aritméticas e Lógicas, a Atribuição, etc). Process Alternate ou Processo Alternativo Raramente utilizado, indica uma forma diferente de se fazer o mesmo processo. Decision ou Decisão Uma ação que é efetuada de acordo com uma condição. Exemplo: Se o aluno tirou nota 7, então ele está aprovado, caso contrário, está reprovado. Data ou Dados Representa o símbolo de dados, entrada e saída simultaneamente. Predefined Process ou Processo PréDefinido Raramente utilizado. Processo já conhecido que será aplicado ao fluxo.
  • 11. Fluxograma SÍMBOLO FUNÇÃO DESCRIÇÃO Document ou Documento Símbolo utilizado para indicar a criação de um documento. Multi-Document ou Múltiplos Documentos Símbolo utilizado para indicar a criação de vários documentos. Terminator ou Terminador Utilizado para inicar e terminar o fluxograma Preparation ou Preparação Raramente utilizado. Manual Input ou Entrada Manual Corresponde à instrução de entrada de dados através do teclado. Atualmente é considerado o símbolo para qualquer entrada de dados.
  • 12. Fluxograma SÍMBOLO FUNÇÃO DESCRIÇÃO Manual Operation Raramente utilizado. Corresponde à operação ou Operação Manual manual de algum processo. Connector ou Conector Raramente utilizado. Off-Page Connector ou Conector Fora de Página Raramente utilizado. Card ou Cartão Símbolo que corresponde ao cartão perfurado, que não é mais utilizado atualmente. Punched Tape ou Fita Símbolo que corrresponde à fita perfurada, que Perfurada não é mais utilizada atualmente.
  • 13. Fluxograma SÍMBOLO FUNÇÃO DESCRIÇÃO Summing Junction ou Tem a função da tabela verdade E. Somador OR – OU Collate ou Agrupamento Sort ou Classificação Seta de Fluxo Tem a função da tabela verdade OU. Símbolo utilizado para agrupar dados. Símbolo utilizado para classificar os dados, por exemplo, em ordem alfabética Indica para onde está indo a informação
  • 14. Fluxograma SÍMBOLO FUNÇÃO DESCRIÇÃO Internal Storage ou Armazenamento Interno Raramente utilizado. Símbolo que representa o armazenamento em memória. Extract ou Extração Símbolo utilizado para extração de dados. Em banco de dados, através de comandos SQL, conseguir extrair algumas informações, até então tidas como desconexas, da base de dados. Merge ou Mesclar Símbolo utilizado para mesclar os dados. No excel, esse “comando” transforma duas colunas em uma. Stored Data ou Dados Armazenados Delay ou Atraso Referente aos dados que estão guardados. Referente à tempo de atraso. Por exemplo, quanto tempo o resultado de uma conta, vai ficar aparecendo na tela?
  • 15. Fluxograma SÍMBOLO FUNÇÃO DESCRIÇÃO Sequential Storage Access ou Armazenamento de Acesso Sequencial Símbolo para armazenamento de dados de forma sequencial, significa que os dados serão acessados na ordem na qual foram armazenados. Magnetic Disk ou Disco Magnético Símbolo para armazenamento de dados, no caso o disco rígido (HD) Símbolo para armazenamento de dados direto, Direct Access Storage significa que os dados podem ser recuperados ou Armazenamento diretamente sem passar por outros dados na de Acesso Direto seqüência. Display ou Exibição É considerado também o símbolo para SAÍDA de dados, como uma impressora ou monitor.
  • 16. Exemplos • Exemplo 1: • Desenvolva uma solução para o problema a seguir utilizando as formas de representação “descrição narrativa”, “fluxograma” e “algoritmo” para demonstrar o seu raciocínio. • Problema: O software (ou programa) a ser desenvolvido deve solicitar ao usuário dois números do tipo real. O usuário deve digitar esses números. Em seguida, o programa deve somar esses números e apresentar o resultado na tela.
  • 17. Exemplos • Exemplo 1: • Solução: • Descrição narrativa: • Apresentar na tela uma mensagem para o usuário, informando-o que deverá digitar dois números do tipo real. • Após ler a mensagem, o usuário deverá inserir os números, através do teclado, que serão lidos e armazenados em duas variáveis diferentes; • Em seguida, será aplicada a operação de soma nos dois operandos, isto é, nos dois números que foram inseridos pelo usuário, sendo o resultado armazendo em uma terceira variável; • O resultado será então apresentado na tela para o usuário por um período de tempo, finalizando assim o programa.
  • 18. Fluxograma • Exemplo 1: • Solução: • Fluxograma: INÍCIO “Digite dois números do tipo real” Leia X Leia Y Z=X+Y FIM 30 segundos “O resultado da soma entre X e Y é Z”
  • 19. Fluxograma • Exemplo 1: • Solução: • Algoritmo: 1. Início do algoritmo; 2. Apresentar na tela a seguinte mensagem para o usuário: “Digite dois números do tipo real”; 3. Ler o número X e ler o número Y; 4. Somar o número X com o número Y; 5. Colocar o resultado em Z; 6. Apresentar na tela a seguinte mensagem para o usuário: “A soma entre os números X, ‘X’, e Y, ‘Y’, é Z, ‘Z’ ”. 7. Manter a mensagem na tela por 30 segundos. 8. Fim do algoritmo
  • 20. Exemplos • Exemplo 2: • Desenvolva uma solução para o problema a seguir utilizando as formas de representação “descrição narrativa”, “fluxograma” e “algoritmo” para demonstrar o seu raciocínio. • Problema: O software (ou programa) a ser desenvolvido deve solicitar que o usuário digite as quatro notas que obteve em suas quatro provas. O usuário deve digitar esses números que são do tipo real. Em seguida, o programa deve fazer a média desses números e apresentar o resultado na tela.
  • 21. Exemplos • Exemplo 2: • Solução: • Descrição narrativa: • Apresentar na tela uma mensagem para o usuário, informando-o que deverá digitar os valores das notas das quatro provas que realizou. • Após ler a mensagem, o usuário deverá inserir os números, através do teclado, que serão lidos e armazenados em quatro variáveis diferentes; • Em seguida, será aplicada duas operações; • uma que soma os quatro operandos e armazena o resultado em uma variável SOMA; • outra que divide o resultado da SOMA pelo valor 4 (quatro) e armazena o resultado da variável em MÉDIA; • O resultado, MÉDIA, será então apresentado na tela para o usuário por um período de tempo, finalizando assim o programa.
  • 22. Fluxograma • Exemplo 2: • Solução: • Fluxograma: INÍCIO “Digite os valores das quatro provas” Leia X, Y, Z, W SOMA = X + Y + Z + W MÉDIA = SOMA / 4 FIM 30 segundos “A nota final do aluno é: , MÉDIA”
  • 23. Fluxograma • Exemplo 2: • Solução: • Algoritmo: 1. Início do algoritmo; 2. Apresentar na tela a seguinte mensagem para o usuário: “Digite as quatro notas das provas (tipo real)”; 3. Ler os números X, Y, Z e W; 4. Somar os números X, Y, Z e W; 5. Colocar o resultado em SOMA; 6. Dividir a SOMA por 4; 7. Colocar o resultado em MÉDIA; 8. Apresentar na tela a seguinte mensagem para o usuário: “A média final do aluno é: , MÉDIA”; 9. Manter a mensagem na tela por 30 segundos; 10. Fim do algoritmo.
  • 24. Exercícios • Faça uma descrição narrativa, um fluxograma e também um algoritmo para as seguintes situações: 1. Levantar da Cama; 2. Lavar Roupa; 3. Trocar um Pneu Furado; 4. Trocar uma Lâmpada; 5. Ir para a Balada; 6. Obedecer os Pais; 7. Lavar a louça; 8. Assistir um filme em DVD; 9. Fazer um bolo recheado; 10. Fazer uma ligação pelo celular;