Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga,...

38
Algoritmos e Técnicas de programação Professora: Luciana Faria

Transcript of Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga,...

Page 1: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na

Algoritmos e Técnicas de programação

Professora: Luciana Faria

Page 2: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na

Formas de representação de Algoritmos

Page 3: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na

Descrição Narrativa;

Fluxograma;

Pseudocódigo

Dentre algumas formas de representar algoritmo as mais utilizadas são:

Page 4: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na

Forma em que os algoritmos são expressos em linguagem natural.

Descrição Narrativa

Page 5: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na

EXEMPLO: Receita de Bolo

Providencie manteiga, ovos, farinha de trigo, chocolate, etc.Misture os ingredientesDespeje a mistura na forma de boloLeve a forma ao fornoEspere 20 minutosRetire a forma do fornoDeixe esfriarProve

Descrição Narrativa

Page 6: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na

EXEMPLO: Trocar lâmpada queimada1) Remova a lampada2) Coloque uma nova lampadaDetalhando ou refinando os passos:1.1) Coloque uma escada embaixo da lampada queimada1.2) Suba na escada ate alcançar a lampada1.3) Gire a lampada queimada no sentido anti-horário ate que ela se solte

Descrição Narrativa

Page 7: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na

Detalhando o passo 2

2.1) Escolha uma nova lampada de mesmapotencia da queimada2.2) Posicione a lampada nova no soquete2.3) Gire a lampada no sentido horário ate queela se firme2.4) Desça da escada2.5) Guarde a escada

Page 8: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na
Page 9: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na

Vamos agora fazer uma suposição?E se a lâmpada NÃO acender?

Page 10: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na
Page 11: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na

Novo algoritmo- pegue uma escada;- posicione-a embaixo da lampada;- busque uma lampada nova;- ligue o interruptor;- se a lâmpada não acender, então:- suba na escada;- retire a lampada velha;- coloque a lampada nova;

Page 12: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na

- ligue o interruptor;- se a lâmpada não acender, então:- pegue uma escada;- posicione-a embaixo da lampada;- busque uma lampada nova;- suba na escada;- retire a lampada velha;- coloque a lampada nova;

Algoritmo Otimizado

Page 13: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na

E se a nova lâmpada não acender???

Page 14: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na

E se a nova lâmpada não acender???ligue o interruptor;- se a lâmpada não acender, então:- pegue uma escada;- posicione-a embaixo da lampada;- busque uma lampada nova;- suba na escada;- retire a lampada velha;- coloque a lampada nova;

se a lâmpada não acender, então:- retire a lampada;- coloque outra lampada nova;- se a lâmpada não acender, então:- retire a lampada;- coloque outra lampada nova;(Até quando ???)

Page 15: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na

Utilização de Laço Condicional

Page 16: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na

ligue o interruptor;se a lâmpada não acender, então: pegue uma escada; posicione-a embaixo da lampada; busque uma lampada nova; suba na escada; retire a lampada velha; coloque a lampada nova; enquanto a lâmpada não acender, faça: retire a lampada; coloque outra lampada nova;

Versão Final do Algoritmo

Page 17: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na

Usando a forma de representacao “descricao narrativa”, faça um algoritmo para realizar a troca de um pneu furado utilizando estrutura de decisão e de repetição Considere as seguintes situações:a) Qualquer pneu furado;b) Qualquer pneu furado, porem verificar se o pneu reserva esta em condições de uso;c) Verificar primeiro se tem algum pneu furado; se houver, verificar o pneu reserva e então, trocar o pneu furado.

Atividades

Page 18: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na

FLUXOGRAMAS

Page 19: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na

Forma em que os algoritmos são expressos graficamente por formas geométricas diferentes que indicam ações distintas.

Page 20: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na

Terminação

Utilizado para indicar o início e o fim de um algoritmo

Principais Símbolos usados nos Fluxogramas

Page 21: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na

Fluxo

Define o fluxo da execução do algoritmoO fluxo é determinístico

Page 22: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na

Entrada de Dados

Solicita que o usuário digite um dado e armazena-o emuma variável

Page 23: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na

Exibição dos Dados

Apresenta dados na saída padrão (monitor)

Page 24: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na

ProcessoRealiza um processamento qualquer

Page 25: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na

DecisãoDefine o fluxo da execução emfunção de uma condição

Estrutura de seleção

Page 26: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na
Page 27: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na

Vantagens:Uma das ferramentas mais conhecidas;Figuras dizem muito mais que palavras;

Desvantagens:Vinculada a dispositivos físicos;Pouca atenção aos dados;Baixa escalabilidade.

Fluxograma

Page 28: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na
Page 29: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na

Exemplo: Fluxograma que mostra “Olá mundo” 10 vezes na tela.

Page 30: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na

● Monte um fluxograma que:● Solicite um número (x) e informe se x é positivo ou negativo. Considere que zero (0) é positivo.

Praticando

Page 31: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na

Linguagem Algorítmica: Pseudocódigo

Page 32: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na

Forma de representação de algoritmos que se assemelha muito ao modo como os programas são escritos. Esta forma de representação permite que os algoritmos nela representados possam ser traduzidos, quase que diretamente, para uma linguagem de programação.

Page 33: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na

Algoritmo <nome_do_algoritmo><declaração de variáveis><subalgoritmos>Início <corpo do algoritmo>Fim.

Forma Geral

Page 34: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na

Algoritmo éuma palavra que indica o início dadefinição de umalgoritmo em forma de pseudocódigo.

<nome_do_algoritmo> é umnome simbólico dado aoalgoritmo com a finalidade de distingui-los dos demais.

<declaração_de_variáveis> consiste em uma porçãoopcional onde são declaradas as variáveis globais usadas

no algoritmo principal e, eventualmente, nos subalgoritmos.

<subalgoritmos> consiste de uma porção opcional do pseudocódigo onde são definidos os subalgoritmos.

Início e Fim são respectivamente as palavras quedelimitam o início e o término do conjunto de instruções

do corpo do algoritmo.

Forma Geral

Page 35: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na

Exemplo: Cálculo da média de um aluno

Algoritmo MediaVar N1, N2, Media : realInício Leia N1, N2 Média (N1 + N2) / 2 Se Média >= 6.0 Então Escreva “Aprovado” Senão Escreva “Reprovado” Fim_seFim.

Pseudocódigo

Page 36: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na

Comparações entre formasDe representação de Algoritmos

Page 37: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na
Page 38: Algoritmos e Técnicas de programação e... · EXEMPLO: Receita de Bolo Providencie manteiga, ovos, farinha de trigo, chocolate, etc. Misture os ingredientes Despeje a mistura na

Há diversas formas de representação de algoritmos que diferem entre si pela quantidade de detalhes de implementação que fornecem ou, inversamente, pelo grau de abstração que possibilitam com relação à implementação do algoritmo em termos de uma linguagem de programação específica. Dentre as principais formas de representação de algoritmos destacam-se: a descrição narrativa, o fluxograma convencional e o pseudocódigo (ou linguagem estruturada).

Síntese