Académique Documents
Professionnel Documents
Culture Documents
D fi i
Definio
O desenvolvimento de um programa muito
complexo.
ALGORITMO: a descrio dos passos
necessrios para se resolver um problema.
Problema
Algoritmo
Programa
R i de
Receitas
d bolo
b l
Um algoritmo semelhante a uma
receita de bolo: so fornecidos os
ingredientes e o modo de fazer.
Seguindo a receita obteremos o bolo.
bolo
Al i
Algoritmos
& Receitas
R i
Uma receita apresenta certa
semelhana com algoritmos:
ENTRADA: So os ingredientes.
PROCESSAMENTO: Modo de
p p
preparo
SADA: O alimento pronto.
E
Exemplo:
l
Identifique a entrada, processamento
e sada na receita abaixo:
Sanduche Solduba
Ingredientes:
2 fatias de po de forma integral
1 tomate
queijo
queijo branco
peito de peru
organo
azeite
sal
Modo de preparo:
Corte o tomate e o queijo branco em fatias finas e coloque sobre o po
po. Acrescente o
peito de peru, uma pitada de organo, azeite e sal a gosto. Feche com a outra fatia.
Voc pode levar o sanduche ao forno se preferir.
5
I
Imprecises
i das
d Receitas
R i
A linguagem utilizada nas receitas
muito vaga para ser utilizada no
desenvolvimento de programas.
Por
P exemplo,
l na receita
it anterior
t i no
Li
Linguagens
para algoritmos
l i
Para formalizar a construo de
algoritmos, so utilizadas as
seguintes linguagens:
Formato
F
t livre
li
Fluxogramas
g
Pseudocdigos
F
Formato
li
livre
Consiste em se escrever os passos
necessrios numerados item a item.
Exemplo:
1- Introduzir
I t d i o primeiro
i i valor
l
2- Introduzir o segundo
g
valor
3 - Somar os dois valores
4 - Mostrar
M
o resultado
l d
(O que ffaz o algoritmo
l
it
acima?)
i ?)
8
D
Desvantagem
ddo fformato li
livre
O formato livre pode apresentar
imprecises em algoritmos mais
complexos.
O formato
f
t livre
li
s
vantajoso
t j
em
algoritmos muito simples.
Fluxogramas
Fl
uma representao grfica do
formato livre. Exemplo:
Incio
Introduzir 1 valor
Calcular a soma
dos dois valores
Introduzir 2 valor
Mostrar o
resultado
Fim
10
Fluxogramas
Fl
Um fluxograma pode se tornar muito
difcil de se ler quando o algoritmo
se torna complexo, alm de gastar
muito papel para ser desenhado!
11
P d di
Pseudocdigo
Os algoritmos atuais so muito
complexos.
Para facilitar o desenvolvimento, o
algoritmo
l
it
dividido
di idid em blocos,
bl
que
realizam determinadas tarefas que
quando juntos formam a soluo
co p eta
completa.
Esta forma de desenvolvimento se
chama Programao Estr
Estruturada
Estruturada.
t rada
12
P
Programao
estruturada
d
A programao estruturada produz
algoritmos complexos mas fceis de se ler
(e entender!).
O formato livre e o fluxograma no se
adaptam programao estruturada. Sua
forma de programao chama-se
chama se
PROGRAMAO LINEAR.
LINEAR
Para se escrever algoritmos estruturados
so usados os PSEUDOCDIGOS
PSEUDOCDIGOS.
13
Al i
Algoritmos
estruturados
d
No desenvolvimento dos algoritmos estruturados
devem ser observados 3 items bsicos:
1-FUNCIONABILIDADE: o algoritmo deve funcionar!
2-SIMPLICIDADE: o algoritmo no deve realizar
t f inteis.
tarefas
i t i Ele
El deve
d
ser feito
f it da
d forma
f
mais
i
simples possvel.
3 CLAREZA: o algoritmo deve ser claro
3-CLAREZA:
claro, isto
, fcil
de se ler e entender.
Sem estas caractersticas,
caractersticas o algoritmo estar
ERRADO!
ERRADO
14
15
E
Estrutura
de
d um algoritmo
l i
Algoritmo Nome
var
Declarao de variveis
incio
Comandos
d
fim
Obs.:: No utilize espaos
Obs
no nome do algoritmo!
16
Comandos
Fim
17
P d di
Pseudocdigo:
V
Variveis
i i
D l
Declarao
de
d variveis
i i
var
NomeDaVarivel : tipo
19
E
Exemplos:
l
var
X : real
i j : inteiro
i,j
Nome_cliente : string
Valor1,
, Valor2 : real
Flag : booleano
Letra : caractere
Taxa : word
20
A ib i de
Atribuio
d valores
l
Indicam o valor que uma varivel
deve receber em um algoritmo.
varivel valor
Exemplos:
x2
xy
xy + 2
21
Varivel Valor
22
O
Operadores
d
A
Aritmticos
i i
So utilizados os seguintes
operadores:
+
*
/
div
mod
Adio
S btrao
Subtrao
Multiplicao
Diviso
Diviso inteira
Resto da diviso inteira
23
E
Exemplos:
l
x
y
z
i
r
a
2
5
5
5
+ b
* x
/ 2
div 2 (quanto vale i?)
mod 2 (quanto vale r?)
24
E
Entrada
d e Sada
S d
Entrada:
Entrada indica que algum dado deve
ser fornecido ao algoritmo
(programa) pelo USURIO.
Sada
S d indica
Sada:
i di que algum
l
dado
d d deve
d
ser fornecido pelo algoritmo
(programa) ao USURIO.
25
P d di
Pseudocdigo:
E
Entrada
d
Leia Varivel
O valor digitado pelo usurio ser
armazenado na Varivel. Exemplo:
Leia X
O valor digitado ser armazenado na
varivel
i l X.
X
26
E
Entrada
d - Fluxograma
Fl
Leia X
Leia X
27
P d di
Pseudocdigo:
S
Sada
d
Escreva Varivel
Escreva Mensagem
Mensagem
No primeiro caso, o valor da Varivel
ser exibido ao usurio; no segundo,
g
entre
ser mostrada a mensagem
aspas (). Ex.:
Escreva X
Escreva Bom dia!
28
S d Fl
Sada:
Fluxograma
Escreva X
Escreva X
29
P d di
Pseudocdigo:
C
Condicionais
di i i
utilizado na tomada de decises.
1)
Se condio ento
incio
Bloco de comandos
comandos
fim
Os comandos so executados quando a
condio for VERDADEIRA.
30
P d di
Pseudocdigo:
C
Condicionais
di i i
2)
Se condio ento
Incio
Comandos1
fim
seno
incio
Comandos2
fim
Bloco 1
Bloco 2
C di i i - Fluxograma
Condicionais
Fl
Condio
Condio
V
Comandos
Comandos1
Tipo 1
Tipo 2
Comandos2
32
O
Operadores
d
R
Relacionais
l i i
Exemplos:
3>2
5<3
x5
V
F
D
Depende
d d
do valor
l de
d x
33
O
Operadores
d
L
Lgicos
i
Relacionam duas ou mais grandezas
lgicas.
O resultado de uma operao lgica
um valor
l lgico.
l i
Os valores lgicos
g
so FALSO e
VERDADEIRO.
34
O
Operador
d L
Lgico
i E (AND)
Tabela Verdade
A
B
F
F
F
V
V
F
V
V
Sada
F
F
F
V
35
O
Operador
d L
Lgico
i OU (OR)
Tabela Verdade
A
B
F
F
F
V
V
F
V
V
Sada
F
V
V
V
36
O
Operador
d L
Lgico
i NO (NOT)
Tabela Verdade
A
F
V
Sada
V
F
Obs.:
NO (F) = V
NO (NO (F)) = F
NO (NO (NO (F))) = V
37
C di Exemplo
Condies:
E
l
Exemplo:
Se (x>2) e (y<4) ento
Escreva x + y
seno
incio
Escreva x - y
Escreva x * y
fim
38
P d di
Pseudocdigo:
L
Lao Repita
R i
Lao REPITA...AT QUE
repita
comandos
at
t que condio
di
Bloco de comandos
L
Lao
Repita
R i - Fluxograma
Fl
1
Comandos
Condio
V
40
L
Lao
Repita:
R i Exemplo
E
l
i 0
repita
Escreva i
i i + 1
at que i > 5
41
P d di
Pseudocdigo:
L
Lao Enquanto
E
Lao ENQUANTO...FAA
Enquanto condio faa
incio
comandos
d
Bl
Bloco
de
d Comandos
C
d
fim
L
Lao
Enquanto
E
- Fluxograma
Fl
1
Condio F
V
Comandos
2
43
L
Lao
Enquanto:
E
Exemplo
E
l
i 0
q
i 5 faa
Enquanto
incio
i i + 1
Escreva i
fim
P d di
Pseudocdigo:
L
Lao Para
P
Para VC VI at VF faa
incio
comandos
Bloco de comandos
fi
fim
VC: Varivel
VC
Vari el Contadora (inteiro)
VI: Valor Inicial (inteiro)
VF: Valor Final (inteiro)
VC inicializada com VI e incrementada de 1 at atingir VF,
quando o lao para.
45
L
Lao
Para
P - Fluxograma
Fl
O fluxograma no possui estrutura Para. Ela deve ser feita usando a estrutura
Enquanto faa
Enquanto...faa.
VCVI
VC>VF?
F
Comandos
VCVC+1
1
46
Bibli
Bibliografia
fi
Algoritmos-Lgica para Desenvolvimento de programao.
Jos Augusto N. G. Manzano e Jayr Figueiredo de Oliveira. Ed.
rica.
Tcnicas de Programao - Uma abordagem estruturada.
Wlater Luiz Caram Saliba. Makron Books.
Projeto de Algoritmos com implementao em PASCAL e C .
Nvio Ziviani. Ed Cengage Learning
((PLT 83) Construo
Co st uo de Algoritmos.
go t os Andr
d Luiz
u Villar
a
Forbellone e Henri Frederico Eberspcher. Ed. Pearson
Education.
(PLT 81) Programao Estruturada / Algoritmo e Programao
/ Treinamento em Linguagem C. Victorine Viviane Mizrahi. Ed.
Pearson Education
47