INTRODUÇÃO A
ALGORITMOS
UNIVERSIDADE ESTADUAL DA PARAÍBA – UEPB
DEPARTAMENTO DE ESTATÍSTICA
CURSO DE ESTATÍSTICA
COMPONENTE CURRICULAR INTRODUÇÃO À CIÊNCIA DA
COMPUTAÇÃO
ALGORITMOS
Algoritmo é um conjunto finito de regras, bem
definidas, para a solução de um problema em
um tempo finito e com um número finito de
passos
ALGORITMOS
Exemplo: Algoritmo para trocar uma lâmpada
- pegar uma escada;
- posicionar a escada embaixo da lâmpada;
- buscar uma lâmpada nova;
- subir na escada;
- retirar a lâmpada velha;
- colocar a lâmpada nova
ALGORITMOS
Melhorando o algoritmo...
- pegar uma escada;
- posicionar embaixo da lâmpada;
- buscar uma lâmpada nova;
- ligar o interruptor;
- se a lâmpada não acender, então:
- subir na escada;
- retirar a lâmpada velha;
- colocar a lâmpada nova.
ALGORITMOS
Otimizando o algoritmo...
- ligar o interruptor;
- se a lâmpada não acender, então:
- pegar uma escada;
- posicionar a escada embaixo da lâmpada;
- buscar uma lâmpada nova;
- subir na escada;
- retirar a lâmpada velha;
- colocar a lâmpada nova;
- enquanto a lâmpada não acender, faça:
- retirar a lâmpada;
- colocar outra lâmpada.
FATORES RELEVANTES PARA CONSTRUÇÃO DE
UM ALGORITMO
 Complexidade
 Quantidade de situações que um problema pode apresentar
 Legibilidade
 Capacidade de compreender um algoritmo por qualquer
observador
 Portabilidade
 Utilização de pseudo-linguagem, podendo ser convertido para
qualquer linguagem de programação
 Técnica de Resolução por Método Cartesiano
 Dividir para conquistar
 Planejamento Reverso
 A partir da saída determinar os dados de entradas
REPRESENTAÇÃO DE ALGORITMOS
 Formas de Representar Algoritmos:
• Descrição Narrativa;
• Fluxograma;
• Diagrama de Chapin;
• Pseudocódigo.
REPRESENTAÇÃO DE ALGORITMOS
 Descrição Narrativa:
• Algoritmos escritos em linguagem natural
Ex: Cálculo da média de um aluno
- Obter as notas da primeira e da segunda
prova;
- Calcular a média aritmética entre as duas
- Se a média for maior ou igual a 7, o aluno
foi aprovado, senão ele foi reprovado
REPRESENTAÇÃO DE ALGORITMOS
 Fluxograma
• Formas geométricas diferentes representando
ações distintas
= Início e final do fluxograma
= Operação de entrada de dados
= Operação de saída de dados
= Operações de atribuição e chamada ou retorno
de subalgoritmo
= Decisão
REPRESENTAÇÃO DE ALGORITMOS
Fluxograma
Ex: Cálculo da média de um aluno
Início
N1, N2
Média 
(N1+N2)/2
Média
>=7
“Aprovado”
“Reprovado” Fim
REPRESENTAÇÃO DE ALGORITMOS
Diagrama de Chapin
• Representação das estruturas de um algoritmo que tem
um ponto de entrada e um ponto de saída e são
compostas pelas estruturas básicas de controle de
seqüência, seleção e repartição
REPRESENTAÇÃO DE ALGORITMOS
Diagrama de Chapin
Ex: Cálculo da média de um aluno
Leia N1, N2
Início
Média  (N1+N2)/2
Sim Não
Média >= 7
Escreva “Reprovado”Escreva “Aprovado”
Fim
REPRESENTAÇÃO DE ALGORITMOS
Pseudocódigo
• Semelhante a linguagem de programação;
• Rica em detalhes.
REPRESENTAÇÃO DE ALGORITMOS
Pseudocódigo
• Representação em Pseudocódigo
Algoritmo <nome_do_algoritmo>
<declaração_de_variáveis>
<subalgoritmos>
Início
<corpo_do_algoritmo>
Fim.
REPRESENTAÇÃO DE ALGORITMOS
Pseudocódigo
• Algoritmo é uma palavra que indica o início da
definição de um algoritmo em forma de pseudocódigo.
• <nome_do_algoritmo> é um nome simbólico dado ao
algoritmo com a finalidade de diferenciar dos demais.
• <declaração_de_variáveis> consiste em uma porção
opcional onde são declaradas as variáveis globais
usadas no algoritmo principal e, eventualmente, nos
subalgoritmos.
REPRESENTAÇÃO DE ALGORITMOS
Pseudocódigo
• <subalgoritmos> consiste de uma porção opcional do
pseudocódigo onde são definidos os subalgoritmos.
• Início e Fim são respectivamente as palavras que
delimitam o início e o término do conjunto de instruções
do corpo do algoritmo
REPRESENTAÇÃO DE ALGORITMOS
Pseudocódigo
Ex: Cálculo da média de um aluno
Algoritmo Média
Var N1, N2, Média
Início
Leia N1, N2
Média := (N1+N2)/2
Se Média >= 7 Então
Escreva “Aprovado”
Senão
Escreva “Reprovado”
Fim.

Aula 1 introdução a algoritmos

  • 1.
    INTRODUÇÃO A ALGORITMOS UNIVERSIDADE ESTADUALDA PARAÍBA – UEPB DEPARTAMENTO DE ESTATÍSTICA CURSO DE ESTATÍSTICA COMPONENTE CURRICULAR INTRODUÇÃO À CIÊNCIA DA COMPUTAÇÃO
  • 2.
    ALGORITMOS Algoritmo é umconjunto finito de regras, bem definidas, para a solução de um problema em um tempo finito e com um número finito de passos
  • 3.
    ALGORITMOS Exemplo: Algoritmo paratrocar uma lâmpada - pegar uma escada; - posicionar a escada embaixo da lâmpada; - buscar uma lâmpada nova; - subir na escada; - retirar a lâmpada velha; - colocar a lâmpada nova
  • 4.
    ALGORITMOS Melhorando o algoritmo... -pegar uma escada; - posicionar embaixo da lâmpada; - buscar uma lâmpada nova; - ligar o interruptor; - se a lâmpada não acender, então: - subir na escada; - retirar a lâmpada velha; - colocar a lâmpada nova.
  • 5.
    ALGORITMOS Otimizando o algoritmo... -ligar o interruptor; - se a lâmpada não acender, então: - pegar uma escada; - posicionar a escada embaixo da lâmpada; - buscar uma lâmpada nova; - subir na escada; - retirar a lâmpada velha; - colocar a lâmpada nova; - enquanto a lâmpada não acender, faça: - retirar a lâmpada; - colocar outra lâmpada.
  • 6.
    FATORES RELEVANTES PARACONSTRUÇÃO DE UM ALGORITMO  Complexidade  Quantidade de situações que um problema pode apresentar  Legibilidade  Capacidade de compreender um algoritmo por qualquer observador  Portabilidade  Utilização de pseudo-linguagem, podendo ser convertido para qualquer linguagem de programação  Técnica de Resolução por Método Cartesiano  Dividir para conquistar  Planejamento Reverso  A partir da saída determinar os dados de entradas
  • 7.
    REPRESENTAÇÃO DE ALGORITMOS Formas de Representar Algoritmos: • Descrição Narrativa; • Fluxograma; • Diagrama de Chapin; • Pseudocódigo.
  • 8.
    REPRESENTAÇÃO DE ALGORITMOS Descrição Narrativa: • Algoritmos escritos em linguagem natural Ex: Cálculo da média de um aluno - Obter as notas da primeira e da segunda prova; - Calcular a média aritmética entre as duas - Se a média for maior ou igual a 7, o aluno foi aprovado, senão ele foi reprovado
  • 9.
    REPRESENTAÇÃO DE ALGORITMOS Fluxograma • Formas geométricas diferentes representando ações distintas = Início e final do fluxograma = Operação de entrada de dados = Operação de saída de dados = Operações de atribuição e chamada ou retorno de subalgoritmo = Decisão
  • 10.
    REPRESENTAÇÃO DE ALGORITMOS Fluxograma Ex:Cálculo da média de um aluno Início N1, N2 Média  (N1+N2)/2 Média >=7 “Aprovado” “Reprovado” Fim
  • 11.
    REPRESENTAÇÃO DE ALGORITMOS Diagramade Chapin • Representação das estruturas de um algoritmo que tem um ponto de entrada e um ponto de saída e são compostas pelas estruturas básicas de controle de seqüência, seleção e repartição
  • 12.
    REPRESENTAÇÃO DE ALGORITMOS Diagramade Chapin Ex: Cálculo da média de um aluno Leia N1, N2 Início Média  (N1+N2)/2 Sim Não Média >= 7 Escreva “Reprovado”Escreva “Aprovado” Fim
  • 13.
    REPRESENTAÇÃO DE ALGORITMOS Pseudocódigo •Semelhante a linguagem de programação; • Rica em detalhes.
  • 14.
    REPRESENTAÇÃO DE ALGORITMOS Pseudocódigo •Representação em Pseudocódigo Algoritmo <nome_do_algoritmo> <declaração_de_variáveis> <subalgoritmos> Início <corpo_do_algoritmo> Fim.
  • 15.
    REPRESENTAÇÃO DE ALGORITMOS Pseudocódigo •Algoritmo é uma palavra que indica o início da definição de um algoritmo em forma de pseudocódigo. • <nome_do_algoritmo> é um nome simbólico dado ao algoritmo com a finalidade de diferenciar dos demais. • <declaração_de_variáveis> consiste em uma porção opcional onde são declaradas as variáveis globais usadas no algoritmo principal e, eventualmente, nos subalgoritmos.
  • 16.
    REPRESENTAÇÃO DE ALGORITMOS Pseudocódigo •<subalgoritmos> consiste de uma porção opcional do pseudocódigo onde são definidos os subalgoritmos. • Início e Fim são respectivamente as palavras que delimitam o início e o término do conjunto de instruções do corpo do algoritmo
  • 17.
    REPRESENTAÇÃO DE ALGORITMOS Pseudocódigo Ex:Cálculo da média de um aluno Algoritmo Média Var N1, N2, Média Início Leia N1, N2 Média := (N1+N2)/2 Se Média >= 7 Então Escreva “Aprovado” Senão Escreva “Reprovado” Fim.