Escolar Documentos
Profissional Documentos
Cultura Documentos
Rodrigo M. Bacurau
Roteiro
Representação de Algoritmos
Descrição Narrativa
Fluxograma
Pseudocódigo
2
Representação de Algoritmos
Descrição Narrativa
Fluxograma
Pseudocódigo
3
Descrição Narrativa
Exemplo (“Trocar a resistência de um
chuveiro”):
4
Descrição Narrativa
Descrição em linguagem natural da solução de
um problema.
Vantagem:
Não há a necessidade de aprender nenhum novo
conceito.
Desvantagem:
Ambiguidade;
Extensão da solução.
5
Pseudocódigo e Fluxograma
Uma forma de eliminar (ou ao menos
minimizar) a ambiguidade dos algoritmos é
representando-os como:
6
Pseudocódigo e Fluxograma
Os métodos em questão impõem regras e
disponibilizam um conjunto reduzido de
palavras/símbolos passíveis de serem
utilizadas(os) (rigidez sintática).
7
Fluxograma
Utilização de símbolos gráficos
padronizados para representar
algoritmos.
8
Fluxograma
Conceitualmente um fluxograma é um tipo
de diagrama, e pode ser entendido como
uma representação esquemática de um
processo.
Constitui uma representação gráfica que
ilustra de forma descomplicada a
seqüência de execução dos elementos que
o compõem.
Podemos entendê-lo, na prática, como a
documentação dos passos necessários para
a execução de um processo qualquer.
9
Fluxograma
Conjunto de símbolos utilizados em fluxogramas
SÍMBOLO NOME DESCRIÇÃO
Terminador Indica o início e o fim do fluxo do algoritmo.
Fim
11
Fluxograma
Vantagem:
A representação gráfica é mais concisa
que a representação textual.
Desvantagem :
É necessário aprender a simbologia dos
fluxogramas.
12
Fluxograma
Exemplo:
Cálculo da divisão
entre dois
números.
13
Fluxograma
Exemplo: fluxograma que recebe um valor inteiro,
através da entrada padrão, e acresce duas unidades a
este exibindo o resultado na saída padrão.
Inicio
n: inteiro
“Forneça um
valor inteiro”
Fim
n
“O valor fornecido
acrescido de duas
unidades resulta
n=n+2 em ”, n
14
Fluxograma
Exercício:
15
Fluxograma
Resposta do exercício: Inicio
Inicio
n1, n2: inteiro
“Digite um
inteiro como n1
“Digite o multiplicando: ”
multiplicando Fim
e o multiplicador,
n2 “Digite um
ambos inteiros: ”
“Resultado: ”, inteiro como
res multiplicador: ”
n1, n2 “Resultado: ”,
n1 * n2
res = n1 * n2
Fim 16
Fluxograma
Exercício:
17
Fluxograma
Resposta do exercício:
Inicio
Inicio Inicio
“Entre com o
“Entre com o valor valor do produto:”
valor do produto:”
“Valor de venda”,
resultado =valor * 0.7 valor “Valor com desconto: ”,
valor * 0.7
Fim
“Valor de venda”,
resultado Fim
Fim 18
Fluxograma
Exercícios:
Construa o fluxograma que represente o cálculo
da média aritmética de 4 números.
19
Pseudocódigo
Este modo de representar algoritmos procura
empregar uma linguagem que esteja o mais
próximo possível de uma linguagem de
programação de computadores de alto nível mas
evitando de definir regras de construção muito
rígidas (pseudolinguagem).
20
Pseudocódigo
Exemplo: Cálculo da divisão entre dois números.
algoritmo “divisao”
variáveis N1, N2: real
R : real
inicio
leia( N1 )
leia( N2 )
se ( N2 = 0 )
escreva (“não é permitido divisão por 0”)
senao
R = N1/N2
escreva (R)
fimalgoritmo
21
Pseudocódigo
Vantagem:
Sua transcrição para qualquer linguagem
de programação é quase que direta.
Desvantagem:
É necessário aprender as regras do
pseudocódigo.
22
Linguagem Visualg
Uma linguagem para representação de
algoritmos;
23
Linguagem Visualg
Estrutura geral:
algoritmo "semnome"
// Seção de Declarações
inicio
// Seção de Comandos
Fimalgoritmo
24
Linguagem Visualg
Declaração de variáveis
26
Linguagem Visualg
Cada variável é referenciada por um identificador
único.
Seqüência de até 30 caracteres;
O primeiro deve ser uma letra e os demais letras,
dígitos ou o caracter “_”;
Maiúsculas e minúsculas não são diferenciadas.
Palavras reservadas não podem ser usadas como
identificadores.
28
Linguagem Visualg
Entrada de dados (comando leia).
Utilizado para receber dados (pelo teclado) externos ao algoritmo
e armazená-los em variáveis.
Exemplos:
leia (n1) - O valor digitado será armazenado na variável n1.
leia (k) - Um ou vários caracteres digitados serão armazenados
na variável k (Definida como caractere).
29
Linguagem Visualg
Saída de dados (comando escreva).
Utilizado para externar dados (pelo monitor)
gerados pelo algoritmo.
Exemplos:
30
Linguagem Visualg
Exemplo comando escreva:
...
var x: inteiro
y: caractere
...
escreva(y)
escreval(x,y)
escreva(“Estudou e se dedicou tirou ”, 10-x)
...
31
Linguagem Visualg
Comando escreva
É possível especificar o número de colunas da
tela onde se deseja escrever um determinado
valor. Por exemplo, considerando uma variável
inteira x, o comando escreva (x:5) escreve o
valor da variável x em 5 colunas, alinhado-o à
direita.
Para variáveis reais, além de especificar o
número de colunas a serem reservadas para
representar o número, também pode-se
especificar o número de casas fracionárias
que serão exibidas.
Por exemplo, considerando z como uma
variável real, o comando escreva(z:5:2),
escreve seu valor em 5 colunas colocando 2
casas decimais.
32
Linguagem Visualg
Operador de atribuição: <-
Exemplo:var a: inteiro
valor1, valor2: real
...
A <- 5
Valor1 <- 3.14
valor2 <- valor1
escreva(valor2)
...
33
Linguagem Visualg
Operadores Aritméticos
Unários: +, -
Exemplos: +1
-5.9
...
var a: inteiro
...
a <- -a
34
Linguagem Visualg
Operadores Aritméticos
Binários: +, -, *, /, \, %, ^
Associação
Símbolo Operação
+ Soma
- Subtração
* Multiplicação
/ Divisão
\ Quociente da divisão inteira
% Resto da divisão inteira
^ Potenciação
35
Linguagem Visualg
Operadores Aritméticos
Binários
Precedência (Hierarquia nas operações)
Hierarquia Operação
1 Parênteses
2 Função
3 -, + (unários)
4 ^
5 *, /, \, %
6 +, -
36
Linguagem Visualg
Expressões aritméticas
Exemplos:
3/4+5
3/(4+5)
3\2*9
11%3^2
11%(3^2)
(11%3)^2
3\2+(65-40)^(1/2)
37
Linguagem Visualg
Operadores Relacionais
Operador Ação
> maior que
>= maior ou igual a
< menor que
<= menor ou igual a
= igual a
<> diferente de
38
Linguagem Visualg
Operadores Lógicos
Operador
e
ou
nao
xou
39
Linguagem Visualg
Expressões lógicas
Exemplos:
3>7 = FALSO
algoritmo “exemplo 1”
var x: inteiro
inicio
leia (x)
escreva (x)
fimalgoritmo
42
Linguagem Visualg
Exemplo de algoritmo
Outro exemplo é o pseudocódigo de um algoritmo que
recebe um valor inteiro, acresce duas unidades a
este, e exibe o resultado desta manipulação.
algoritmo “exemplo 2”
var n: inteiro
inicio
escreva (“Digite um número inteiro: ”)
leia (n)
n <- n+2
escreval (“Resultado (número + 2): ”, n)
fimalgoritmo
43
Pseudocódigo
Exercícios:
45
Referências
MEDINA, M.; FERTIG, C. Algoritmo e Programação:
Teoria e Pratica. 2ª ed. Novatec, 2006
46
OBRIGADO!
47