Você está na página 1de 19

ALGORITMOS

Aula extra Thalison J. Pelegrini

Desenvolvimento

Desenvolver algoritmos é resolver

problemas.

Compreensão do problema.

Estabelecimento de um plano.(Encontre a conexão entre os dados)

Execute seu plano.

Verificação da solução obtida.(Examine a solução)

Exemplo

Para um arquiteto cujo problema é construir

uma casa, temos os seguintes passos:

Primeiro: Entender o problema:

Quem são os moradores? Como é o terreno? Direção do nascer e do pôr do Sol?

Exemplo Para um arquiteto cujo problema é construir uma casa, temos os seguintes passos: Primeiro: Entender

Exemplo

Segundo: Planejando uma Solução.

Desenho da planta baixa, planta de fachada e planta de situação.

Validação da mesma pelos futuros moradores.

Utilização até mesmo de maquetes para melhor visualização do projeto.

Exemplo Segundo: Planejando uma Solução. Desenho da planta baixa, planta de fachada e planta de situação.

Exemplo

Terceiro: Execução do Plano.

Construção da casa.

Quarto: Verificando.

Moradores da casa satisfeitos com as instalações?

Exemplo Terceiro: Execução do Plano. Construção da casa. Quarto: Verificando. Moradores da casa satisfeitos com as

Desenvolvimento

Maior problema.

esforço

Nesta

etapa

a

está

em

habilidade

entender

o

de

resolver

problemas se dá pela experiência na

solução de problemas correlatos.

Quanto

mais

projetos

o

arquiteto

tiver

desenvolvido, mais facilidade terá para entender e buscar uma solução que melhor atende ao seu cliente.

Desenvolvimento

Para planejar uma solução temos que fazer a elaboração do algoritmo para a solução do

problema. (notem rever um projeto ou uma solução no papel é bem mais barato).

Música

Um bom exemplo de um algoritmo é uma música. Uma música contém um conjunto de

notas que devem ser executadas em uma sequência determinada. Se tocamos as

notas em outra sequência não obteremos o

resultado esperado, isto é, a música que desejamos ouvir.

Música ● Um bom exemplo de um algoritmo é uma música. Uma música contém um conjunto

Miojo

Veja na embalagem do macarrão “Miojo” o

algoritmo para fazê-lo:

1 - Ferva 2 copos e meio de água (450 ml).

2 - Junte o macarrão e cozinhe durante 3 minutos.

3 - Retire do fogo, coloque o tempero o

envelope e misture bem.

Miojo Veja na embalagem do macarrão “Miojo” o algoritmo para fazê-lo: 1 - Ferva 2 copos

Desenvolvimento

Os passos do algoritmo devem ser simples, de forma que o computador possa entendê-

los e executá-los.

Os algoritmos devem resolver o problema utilizando um número finito de passos.

Método de Refinamentos

Sucessivos

Neste método vamos refinando a solução até chegarmos ao nível que o computador possa executar.

Trocar uma lâmpada -Nível 1

Retire a lâmpada queimada. Coloque a lâmpada nova.

Trocar uma lâmpada -Nível 1 ● Retire a lâmpada queimada. ● Coloque a lâmpada nova.

Trocar uma lâmpada -Nível 2

Apanhe uma lâmpada nova.

Ponha a cadeira ou escada debaixo da lâmpada queimada.

Suba na cadeira ou escada até que você consiga alcançar a lâmpada.

Gire a lâmpada queimada no sentido anti- horário até que possa retirá-la.

Trocar uma lâmpada -Nível 2 ● Apanhe uma lâmpada nova. ● Ponha a cadeira ou escada

Coloque a nova lâmpada e gire-a no sentido horário até que esteja firme.

Desça da escada ou cadeira.

Algoritmo

Descrição precisa, passo a passo, da solução de um problema.

Linguagem de Programação

É uma técnica de notação para programar,

com a intenção de servir de veículo tanto

para a expressão do raciocínio algorítmico quanto para a execução automática de um

algoritmo por um computador.

Estrutura de Dados

Forma

de

representação dos dados. Os

dados

de

um

problema

podem

ser

representados

de

diversas

formas,

por

exemplo, um ano pode ser representado

com

algarismos

romanos:

decimais

ou

algarismos

1997 = MCMDCVII

Todas

as

duas

formas

são

válidas

e

dependendo da utilização, cada uma tem suas vantagens e desvantagens.

Programa

Programas

representam

uma

classe

especial de algoritmos capazes de serem

seguidos ou executados por computadores. [WIRTH 1986]

ALGORITMO PROGRAMA

+

LINGUAGEM

>

Um algoritmo traduzido para uma linguagem

de

programação

gera

um

programa

de

Resumindo

Encontre uma solução.

Abra sua mente para outras soluções possíveis.

Escolha a “melhor” solução.

Descreva a solução formalmente gerando um algoritmo.

Codifique a solução em uma linguagem de programação gerando um programa.

Exercício Proposto

Um pastor deseja atravessar um rio em um

bote,

porém ele deve

levar

para

a

outra

margem um lobo, um carneiro e alfaces. No bote este só pode transportar um de cada

vez,

tendo

o cuidado

de

não

deixar nas

margens o lobo com o carneiro e nem o

carneiro

com

as

alfaces.

Descreva

o

algoritmo que o pastor deve utilizar.