Sei sulla pagina 1di 35

ALGORITMOS

Programador em Ambiente Web


Formadora: Deonilde Costa
Introduo Lgica de
Programao
Antes de se comear com uma Linguagem de
Programao, temos de ser capazes de
estruturar o nosso raciocnio para que quando
nos colocam um problema, termos um controlo
sobre a lgica que atribumos ao problema de
forma a conseguir concluir a soluo sem erros.
Formadora !eonilde "osta
O que a lgica?
Lgica de programao # a t#cnica de
encadear pensamentos para atingir
determinado ob$eti%o.
Formadora !eonilde "osta
Instrues
Na linguagem comum, entende&se por
instrues 'um con$unto de regras ou normas
definidas para a realizao ou emprego de
algo(.
Em informtica, instruo # a
informao que indica a um computador uma
ao elementar a e)ecutar.
Formadora !eonilde "osta
Instrues
Exemplo:
se quisermos fazer uma omelete com
batatas, precisamos colocar em pr*tica uma
s#rie de instru+es
descascar as batatas,
bater os o%os,
fritar as batatas, etc...
Formadora !eonilde "osta
Noes bsicas
Problemas, Algoritmos e Programas
,pera+es elementares, tipos de dados e
%ari*%eis
"onstruo de algoritmos em linguagem
informal simblica
Formadora !eonilde "osta
Problemas, lgoritmos e
Programas
An*lise do problema -especificao
do problema, anlise de requisitos,
pressupostos, etc../
"onceo do algoritmo/
0raduo desse algoritmo na
linguagem de programao.
Formadora !eonilde "osta
!efinio do problema
Planificao da resoluo
1strat#gia de abordagem
2mplementao &
codificao
0este e depurao
!ocumentao
3anuteno
Programa Problema Algoritmo
Problemas, lgoritmos e
Programas
Fase de "onceo Fase de implementao
Formadora !eonilde "osta
Algoritmo Programa
4equ5ncia finita e
ordenada de a+es
que conduzem 6
soluo de um
problema.
"on$unto de
instru+es
destinadas a serem
processadas num
sistema inform*tico
para realizar uma
determinada tarefa.
Problemas, lgoritmos e
Programas
Linguagem de programao
A programao consiste na codificao precisa
desse algoritmo, segundo uma linguagem de
programao especfica.
Exemplos: 7isual 8asic, ", 9a%a, P:t;on, "<,
.=10, >03L, P>P?
Formadora !eonilde "osta
Problemas, lgoritmos e
Programas
Algoritmia
A formulao de algoritmos # separada em
duas fases distintas na resoluo do problema
& A fase de formulao de algoritmos
& A fase da sua implementao numa
linguagem ou ferramenta de programao
-7isual 8asic, ", 9a%a, P:t;on, ?.
Formadora !eonilde "osta
lgoritmo
A pala%ra algoritmo, 6 primeira %ista, parece&nos estran;a.
1mbora apresente uma designao descon;ecida, fazemos
uso constante de algoritmos no nosso quotidiano a
maneira como uma pessoa toma ban;o # um algoritmo.
,utros algoritmos frequentemente encontrados so
2nstru+es para se utilizar um aparel;o eletrodom#stico/
@ma receita para preparar um dado prato/
Auia de preenc;imento da declarao do 2B4/
=as opera+es b*sicas -adio, multiplicao, di%iso e
subtrao..
Formadora !eonilde "osta
lgoritmo
@m algoritmo # formalmente uma sequ5ncia
finita de passos que le%am 6 e)ecuo de uma
tarefa, # uma sequ5ncia de instru+es para
atingir uma meta especfica.
1stas tarefas no podem ser redundantes
nem sub$eti%as na sua definio, de%em ser
claras e precisas.
Formadora !eonilde "osta
lgoritmo
Para resol%er um problema atra%#s dum
computador # necess*rio encontrar em primeiro
lugar uma maneira de descre%5&lo de uma forma
clara e precisa & A noo de algoritmo # central
para toda a inform*tica.
A criao de algoritmos para resol%er os
problemas # uma das maiores dificuldades, mas
tamb#m um dos desafios mais atrati%os, dos
iniciados em programao de computadores.
Formadora !eonilde "osta
!arater"sticas #undamentais
de um algoritmo
1ntradas um algoritmo de%e ter uma ou mais
entradas, isto # quantidades que l;e so
fornecidas antes do algoritmo iniciar.
4adas um algoritmo de%e ter uma ou mais
sadas, isto # quantidades que tem uma relao
especfica com as entradas.
Preciso 0odos os passos do algoritmo de%em
ter um significado preciso, no ambguo,
especificando e)atamente o que de%e ser feito.
Formadora !eonilde "osta
!arater"sticas #undamentais
de um algoritmo
1fic*cia: ,s passos de%em conduzir 6 resoluo
do problema proposto. !e%em ainda ser
e)ecut*%eis numa quantidade finita de tempo e
com uma quantidade finita de esforo.
1fici5ncia: @m algoritmo de%e ser eficiente. 2sto
significa que todas as opera+es de%em ser
suficientemente b*sicas de modo que possam
ser em princpio e)ecutadas com preciso num
tempo finito por um ser ;umano usando papel e
l*pis.
Formadora !eonilde "osta
lgoritmo
, algoritmo de%e ser f*cil de se interpretar e
f*cil de codificar. ,u se$a, ele de%e ser o
intermedi*rio entre a linguagem falada e a
linguagem de programao.
Pode haver mais do que um algoritmo para resolver um problema
Formadora !eonilde "osta
$%em&lo '
@ma receita # uma descrio dum con$unto
de passos ou a+es que fazem a combinao
dum con$unto de ingredientes com %ista a
obter um produto gastronmico particular.
Formadora !eonilde "osta
Farin;a de
trigo
,%os ACcar
Leite
3anteiga
Fermento
Beceita
$%em&lo '
@m algoritmo opera sobre um con$unto de
entradas -farin;a o%os, fermento, etc. no
caso do bolo. de modo a gerar uma sada que
se$a Ctil -ou agrad*%el. para o utilizador -o
bolo pronto..
Formadora !eonilde "osta
$%em&lo '
Algoritmo receita de !olo":
D. 8ater duas claras em castelo/
E. Adicionar duas gemas/
F. Adicionar uma c;*%ena de aCcar/
G. Adicionar duas col;eres de manteiga/
H. Adicionar uma c;*%ena de leite de coco/
I. Adicionar farin;a e fermento/
J. "olocar numa forma e le%ar ao forno em lume brando.
K. 7erificar tempo de cozedura
L. Betirar do forno
Formadora !eonilde "osta
$%em&lo (
#omar dois n$meros
1scre%a o primeiro nCmero no retMngulo A
1scre%a o segundo nCmero no retMngulo 8
4ome o nCmero do retMngulo A com nCmero do
retMngulo 8
"oloque o resultado no retMngulo "
Formadora !eonilde "osta
BetMngulo A BetMngulo 8
Besultado
$%erc"cios
%& Descre'a a se(u)ncia lgica:
a& *ara Comer+
!& *ara fer'er gua+
c& *ara trocar uma l,mpada&
d& -ue permita efetuar a mudana do pneu
furado de uma 'iatura&
Formadora !eonilde "osta
a) Para !omer
2nicio
Pegar no garfo
"olocar comida no garfo
Le%ar o garfo 6 boca
Abrir a boca
3eter a comida dentro da boca
Fec;ar a boca
3astigar a comida
1ngolir
Fim
Formadora !eonilde "osta
b) Para #er*er gua
2nicio
Pegar no recipiente
"olocar *gua no recipiente
Le%ar recipiente 6 placa
Ligar a placa
!ei)ar fer%er
!esligar a placa
Betirar o recipiente da placa
Fim
Formadora !eonilde "osta
c) Para trocar uma l+m&ada
Algoritmo #imples
2ncio
"olocar escada
Pegar na lMmpada no%a
4ubir a escada
Betirar lMmpada fundida
"olocao da lMmpada no%a
7erificar se luz acende
Arrumar escada
Fim
Formadora !eonilde "osta
Formadora !eonilde "osta
Preparar uma
lMmpada no%a
"olocar a
lMmpada no%a
Betirar a lMmpada
fundida
Processo
concludo
Luz acendeN
4im
=o
c) Para trocar uma l+m&ada
Definir as opera.es elementares / Algoritmo
mais complexo
dar passos
subirOdescer degraus
pegarOlargar ob$etos
rodar ob$etos sentido diretoOindireto
capacidade de deciso
Formadora !eonilde "osta
D. Preparar acessos 6 lMmpada fundida
D.D Bepetir enquanto no c;egar 6 escada
D.D.D !ar passos
D.E Pegar ob$eto -escada.
D.F Bepetir enquanto no c;egar debai)o lMmpada fundida
D.F.D !ar passos
E. Betirar lMmpada fundida
E.D Bepetir enquanto no c;egar 6 lMmpada fundida
E.D.D 4ubir degraus
E.E Bepetir enquanto no soltar a lMmpada fundida
E.E.D Bodar ob$eto -lMmpada fundida. no sentido indireto
E.F Bepetir enquanto no c;egar ao c;o
E.F.D descer degraus
Formadora !eonilde "osta
F.1scol;er lMmpada no%a
F.D Bepetir enquanto no c;egar $unto ga%eta das lMmpadas
no%as
D.F.D !ar passos
F.E Bepetir enquanto ;ou%er lMmpadas no%as ou pot5ncia
lMmpada no%a diferente de pot5ncia lMmpada fundida.
F.E.D Pegar ob$eto -L.=..
F.E.E 4e pot5ncia L.=. P Pot5ncia L.F.
F.E.E.D 1nto largar a L.F.
F.E.E.E 4eno largar a L.=.
Formadora !eonilde "osta
G. "olocao da lMmpada no%a
G.D Bepetir enquanto no c;egar 6 escada
G.D.D !ar passos
G.E Bepetir enquanto no c;egar ao casquil;o
G.E.D 4ubir degraus
G.F Bepetir enquanto no firmar a lMmpada no%a
G.F.D Bodar ob$eto-L.=.. no sentido direto
G.G Bepetir enquanto no c;egar ao c;o
G.G.D descer degraus
H. Arrumar escada
H.D Pegar ob$eto -escada.
H.E Bepetir enquanto no c;egar ao stio da escada
H.E.D !ar passos
H.F Largar ob$eto -escada.
I. F23
Formadora !eonilde "osta
d) ,ue &ermita e#etuar a
mudana do &neu #urado de
uma *iatura)
Araficamente
Formadora !eonilde "osta
4ubstituio do
pneu furado
2r buscar pneu
bom Qmacaco Q
c;a%e
Betirar pneu
furado e
substitu&lo
"olocar macaco
na posio
correta e ele%ar
o carro
Auardar macaco
Q pneu furado Q
c;a%e
Definir as opera.es elementares:
dar passos
abrir ou fec;ar
pegar ou largar
rodar
deslocar no sentido ...
capacidade de deciso
Formadora !eonilde "osta
D. 8uscar macaco, c;a%e e pneu suplente
D.D Bepetir at# c;egar ao carro
D.D.D !ar passos
D.E Abrir a mala
D.F Pegar macaco, c;a%e e pneu bom
D.G Bepetir at# c;egar ao pneu furado
D.G.D !ar passos
E. "olocar o macaco em posio correta e ele%ar o carro
E.D Largar o pneu e a c;a%e
E.E 1ncai)ar macaco
E.E.D !eslocar o macaco no sentido do carro at# encai)ar
E.F 1le%ar o carro
E.F.D Bepetir at# carro ele%ado
E.F.D.D Bodar mani%ela no sentido ;or*rio
Formadora !eonilde "osta
F.Betirar o pneu furado e substitu&lo
F.D Pegar na c;a%e
F.E Bepetir quatro %ezes
F.E.D !eslocar a c;a%e at# encai)ar na porca
F.E.E Bepetir at# porca cair
F.E.E.D Bodar sentido anti&;or*rio
F.F Largar c;a%e
F.G Pegar no pneu furado
F.H !esloc*&lo sentido contr*rio ao carro
F.I Largar pneu furado
F.J Pegar no pneu bom
F.K !eslocar pneu no sentido do carro
F.L 1ncai)ar pneu
Formadora !eonilde "osta
F.DR Pegar na c;a%e
F.DD Bepetir quatro %ezes
F.DD.D Pegar na porca
F.DD.E 1ncai)ar porca
F.DD.F Pegar c;a%e
F.DD.G Bepetir at# ficar apertado
F.DD.G.D Bodar no sentido ;or*rio
F.DE Largar c;a%e
Formadora !eonilde "osta
G. Auardar o macaco, c;a%e e o pneu furado
G.D 8ai)ar o carro
G.D.D Bodar mani%ela no sentido contr*rio ao ;or*rio
G.E !esencai)ar macaco
G.F Pegar pneu furado Q macaco Q c;a%e
G.G Bepetir at# 6 mala
G.G.D !ar passos
G.H Largar c;a%e Q macaco Q pneu furado
G.I Fec;ar mala
F23
Formadora !eonilde "osta

Potrebbero piacerti anche