Slide 1

Propaganda
Algoritmos
UDESC - Prof. Juliano Maia
1
Índice



Seção 1 – Introdução
Seção 2 – Estruturas de Controle
Seção 3 – Representação de Algoritmos
UDESC - Prof. Juliano Maia
2
Introdução
Seção 1



Definição Algoritmos
Características Algoritmos
Definição Programa
UDESC - Prof. Juliano Maia
3
Uma Receita de bolo!






Misture os ingredientes
Unte a forma com manteiga
Despeje a mistura na forma
Se forno convencional, asse por 45
minutos em temperatura de 180 graus
Se forno microondas, asse por 30
minutos em temperatura alta
Retire a forma do forno
UDESC - Prof. Juliano Maia
4
Conceitos comuns


“Um conjunto finito de regras que provê
uma seqüência de operações para
resolver um tipo de problema
específico”
“Seqüência ordenada, e não ambígua,
de passos que levam à solução de um
dado problema”
UDESC - Prof. Juliano Maia
5
Conceitos comuns

“Seqüência ordenada de passos que
deve ser seguida para a realização de
uma tarefa, garantindo a sua
repetibilidade.”
UDESC - Prof. Juliano Maia
6
Características de um Algoritmo




Ter fim
Não dar margem à dupla interpretação
(não ambíguo)
Capacidade de receber dado(s) de
entrada do mundo exterior
Poder gerar informações de saída para
o mundo externo ao do ambiente do
algoritmo
UDESC - Prof. Juliano Maia
7
Programa

Um programa de computador nada
mais é que um algoritmo escrito numa
forma compreensível pelo computador.
UDESC - Prof. Juliano Maia
8
Estruturas de Controle
Seção 2



Estrutura Seqüencial
Estruturas de Seleção
Estruturas de Repetição
UDESC - Prof. Juliano Maia
9
Estrutura Seqüencial

Esta estrutura representa a seqüência
de execução dos comandos de um
algoritmo:
Comando 1
Comando 2
::
Comando N
UDESC - Prof. Juliano Maia
10
Estruturas de Seleção

Estas estruturas subordinam a execução de
um comando, ou bloco de comandos, à
veracidade ou não de uma condição lógico
relacional.
Se <condição>
::
Senão
::
Fim_Se
UDESC - Prof. Juliano Maia
11
Estruturas de Repetição

Estas estruturas permitem a repetição
de um comando, ou bloco de
comandos, um número determinado de
vezes ou tantas vezes quantas uma
condição lógica permita, são elas:
Para
Enquanto
Faça Enquanto
UDESC - Prof. Juliano Maia
12
Estrutura Para

Nesta estrutura a repetição acontece
um número determinado de vezes, de
forma automática.
Para contador = 1 Até N
::
Fim_Para
UDESC - Prof. Juliano Maia
13
Estrutura Enquanto

Nesta estrutura a repetição acontece
enquanto uma condição lógica
relacionada for verdadeira, após a
verificação desta condição.
Enquanto <condição>
::
Fim_Enquanto
UDESC - Prof. Juliano Maia
14
Estrutura Faça Enquanto

Nesta estrutura a repetição acontece
enquanto uma condição lógica
relacionada for verdadeira, antes da
verificação desta condição.
Faça
::
Enquanto <condição>
UDESC - Prof. Juliano Maia
15
Representação de Algoritmos
Seção 3



Descrição Narrativa
Fluxograma
Pseudocódigo
UDESC - Prof. Juliano Maia
16
Descrição Narrativa


Representação de algoritmos diretamente em
linguagem natural, o português.
Cálculo da média de um aluno
Obter notas da primeira e segunda provas
Calcular a média aritmética entre as duas provas
Se a média for maior que 7, o aluno foi aprovado,
senão ele foi reprovado
UDESC - Prof. Juliano Maia
17
Desvantagens



Sujeito a más interpretações,
ambigüidades e imprecisões:
Maria toma banho porque sua mãe
disse ela traga a toalha.
Maria toma banho porque sua. Mãe,
disse ela, traga a toalha.
UDESC - Prof. Juliano Maia
18
Desvantagens
UDESC - Prof. Juliano Maia
19
Exercício Proposto

Crie um algoritmo em descrição
narrativa com o objetivo de trocar um
pneu de carro. Seja detalhista!
UDESC - Prof. Juliano Maia
20
Fluxograma

Representação gráfica de algoritmos
onde formas geométricas diferentes
implicam ações (instruções, comandos)
distintos.
UDESC - Prof. Juliano Maia
21
Símbolos de representação





Início e final do
fluxograma
Operação de entrada de
dados
Operação de saída de
dados
Operação de atribuição
e controle subalgoritmo
Decisão
UDESC - Prof. Juliano Maia
22
Exemplo
UDESC - Prof. Juliano Maia
23
Conceito de variável


Nota1, Nota2 e média são variáveis.
Variável: entidade destinada a
armazenar (espaço de memória) uma
informação.
UDESC - Prof. Juliano Maia
24
Vantagens e Desvantagens




Padrão mundial
Figuras representam melhor que
palavras
Representação conhecida e reconhecida
Trabalhoso e complicado a medida que
o algoritmo cresce
UDESC - Prof. Juliano Maia
25
Exercício Exemplo

Faça um algoritmo que escreva 100
vezes o texto “Não vou fazer mais
bagunça”, utilizando um comando de
repetição.
UDESC - Prof. Juliano Maia
26
Exercício Exemplo

Faça um algoritmo (representação
fluxograma) que leia uma lista de
números inteiros positivos terminada
pelo número 0 (zero). Ao final, o
algoritmo deve mostrar a média
aritmética de todos os números lidos
(excluindo o zero).
UDESC - Prof. Juliano Maia
27
Pseudocódigo

Representação de algoritmos através de
uma pseudolinguagem de programação,
cujos comandos são em português.
UDESC - Prof. Juliano Maia
28
Exemplo

Algoritmo Media-Aluno
Início
Var nota1, nota2, media
Leia nota1 e nota2
media = (nota1 + nota2) / 2
Se media >= 7 Então
Escreva “APROVADO”
Senão
Escreva “REPROVADO”
Fim_Se
Fim
UDESC - Prof. Juliano Maia
29
Variáveis e Comandos
Comandos:
Início, Var, Leia, Se ... Então ... Senão ... Fim_se,
Escreva, Fim.
 Variáveis:
nota1, nota2, media

UDESC - Prof. Juliano Maia
30
Operadores

Operadores aritméticos


Operadores relacionais



+, -, *, /, %, **
>, >=, <, <=, ==, !=
Atenção: = representa uma atribuição e não uma
comparação.
Operadores lógicos

|| (OU), && (E), ! (NÃO)
UDESC - Prof. Juliano Maia
31
Vantagens e Desvantagens

Usa o português como base
Pode-se definir quais e como os dados
serão estruturados
Rápida codificação do algoritmo

Não padronizado


UDESC - Prof. Juliano Maia
32
Exercício

Num frigorífico existem 90 bois. Cada
boi traz preso em seu pescoço um
cartão contendo seu número de
identificação e seu peso. Faça um
algoritmo (representação
pseudocódigo) que escreva o número e
o peso do boi mais gordo e do boi mais
magro (supondo que não haja
empates).
UDESC - Prof. Juliano Maia
33
Exercício Proposto

Faça um algoritmo que calcule a
multiplicação de dois números inteiros
sem utilizar o operador “*”. Utilize
apenas o operador “+”
UDESC - Prof. Juliano Maia
34
Download