SlideShare uma empresa Scribd logo
Aula 01
Introdução a Algoritmos
Ênio Prates Vasconcelos Filho
Faculdades Alfa
I
n
t
r
o
d
u
ç
ã
o
a
A
l
g
o
r
i
t
m
o
s ALGORITMOS - 02/2015 – ÊNIO FILHO
Tópicos
Δ O que é um Algoritmo;
Δ Por que criamos algoritmos?
Δ Tipos de Algoritmos;
Δ Linguagens de Baixo x Alto nível;
Δ Exemplos;
I
n
t
r
o
d
u
ç
ã
o
a
A
l
g
o
r
i
t
m
o
s ALGORITMOS - 02/2015 – ÊNIO FILHO
O que é um Algoritmo?
I
n
t
r
o
d
u
ç
ã
o
a
A
l
g
o
r
i
t
m
o
s ALGORITMOS - 02/2015 – ÊNIO FILHO
O que é um algoritmo?
Δ Sequência finita de instruções, ordenadas de forma lógica para a resolução
de uma determinada tarefa ou problema;
Δ Não necessariamente envolve aspectos computacionais. Ex.:
• Uma receita de bolo,
• Trocar um pneu de carro,
• Trocar uma lâmpada...;
Δ Um algoritmo também não representa, necessariamente, um programa
de computador e sim os passos necessários para realizar uma tarefa ou
solucionar um problema, seja de que área for.
I
n
t
r
o
d
u
ç
ã
o
a
A
l
g
o
r
i
t
m
o
s ALGORITMOS - 02/2015 – ÊNIO FILHO
O que é um algoritmo?
Δ Exemplo: Sequência para fritar um ovo:
1. Retirar o ovo da geladeira;
2. Colocar a frigideira no fogo;
3. Colocar óleo;
4. Esperar até o óleo ficar quente;
5. Quebrar o ovo separando a casca;
6. Colocar o conteúdo do ovo na frigideira;
7. Esperar um minuto;
8. Retirar o ovo da frigideira;
9. Apagar o fogo;
I
n
t
r
o
d
u
ç
ã
o
a
A
l
g
o
r
i
t
m
o
s ALGORITMOS - 02/2015 – ÊNIO FILHO
O que é um algoritmo?
Δ Tal sequência é um algoritmo? Vejamos...
• A sequência anterior possui instruções finitas e ordenadas?
o SIM. 9 instruções ordenadas;
o O início de uma instrução depende da conclusão de uma instrução anterior;
Δ O objetivo da sequência foi atingido?
• SIM. O ovo foi frito;
Δ Logo, a sequência anterior é um algoritmo!
I
n
t
r
o
d
u
ç
ã
o
a
A
l
g
o
r
i
t
m
o
s ALGORITMOS - 02/2015 – ÊNIO FILHO
O que é um Algoritmo?
Δ Todo algoritmo precisa possuir as seguintes características:
• Entrada: zero ou mais valores de entrada;
• Saída: pelo menos um valor é produzido;
• Clareza ou Definição: cada passo/instrução/etapa de um algoritmo
deve ser claro e não ambíguo;
• Efetividade: cada passo/instrução/etapa de um algoritmo deve ser
executável;
• Finitude: o algoritmo deve ter um conjunto finito de passos.
I
n
t
r
o
d
u
ç
ã
o
a
A
l
g
o
r
i
t
m
o
s ALGORITMOS - 02/2015 – ÊNIO FILHO
O que é um algoritmo?
⚫ Exercício
– Ordene e estruture uma sequência para a realização de uma
ligação telefônica em um orelhão.
I
n
t
r
o
d
u
ç
ã
o
a
A
l
g
o
r
i
t
m
o
s ALGORITMOS - 02/2015 – ÊNIO FILHO
O que é um algoritmo?
Δ Uma possível solução:
1. Tirar o telefone do gancho;
2. Ouvir o sinal de linha;
3. Introduzir o cartão no orelhão;
4. Teclar o número desejado;
5. Conversar;
6. Desligar;
7. Tirar o cartão;
I
n
t
r
o
d
u
ç
ã
o
a
A
l
g
o
r
i
t
m
o
s ALGORITMOS - 02/2015 – ÊNIO FILHO
O que é um algoritmo?
Δ A solução anterior... mais robusta:
1. Tirar o telefone do gancho;
2. Ouvir o sinal de linha;
3. Introduzir o cartão no orelhão;
4. Teclar o número desejado;
5. Se chamar e alguém atender...
1. Conversar;
2. Desligar;
3. Retirar o cartão;
6. Senão...
1. Desligar;
2. Voltar para a instrução 1;
I
n
t
r
o
d
u
ç
ã
o
a
A
l
g
o
r
i
t
m
o
s ALGORITMOS - 02/2015 – ÊNIO FILHO
Desafio
Δ Escreva um algoritmo que ajude o homem do barco a levar o lobo, a ovelha
e a caixa de verduras para o outro lado do lago. Utilize a descrição narrativa
para representar o algoritmo. Lembre-se:
• Lobos comem ovelhas e ovelhas comem as verduras quando o homem está na
outra margem!
• O Barco tem apenas dois lugares;
I
n
t
r
o
d
u
ç
ã
o
a
A
l
g
o
r
i
t
m
o
s ALGORITMOS - 02/2015 – ÊNIO FILHO
Desafio
Δ Solução:
1. Pega a ovelha
2. Vai para a outra margem
3. Deixa a ovelha
4. Volta a margem inicial
5. Pega a caixa de verduras
6. Vai para a outra margem
7. Deixa a caixa de verduras e pega a ovelha
8. Volta a margem inicial
9. Deixa a ovelha e pega o lobo
10. Vai para a outra margem
11. Deixa o lobo
12. Volta a margem inicial
13. Pega a ovelha
14. Vai para a outra margem
15. Deixa a ovelha
I
n
t
r
o
d
u
ç
ã
o
a
A
l
g
o
r
i
t
m
o
s ALGORITMOS - 02/2015 – ÊNIO FILHO
Por que criamos algoritmos?
Δ A linguagem natural não pode ser
interpretada por computadores;
Δ Computadores são projetados para
executar tarefas bem definidas a partir
de instruções;
Δ Para desenvolver software, utilizamos
linguagens de programação...
Δ A linguagem algorítmica é similar a
uma linguagem de programação;
Δ Logo, aprendendo a criar algoritmos,
estamos aptos a programar em
qualquer linguagem de programação;
I
n
t
r
o
d
u
ç
ã
o
a
A
l
g
o
r
i
t
m
o
s ALGORITMOS - 02/2015 – ÊNIO FILHO
Por que programar?
Δ No fundo, programar é ensinar um computador a resolver problemas!
Δ Mesmo que você não seja um programador no futuro, programar ajuda a
despertar as seguintes habilidades:
• Ajuda a encontrar a solução para problemas;
• Ensina a persistir;
• Desperta para o mundo;
• Estimula a criatividade;
• Desperta a paixão em aprender;
• Ensina a trabalhar coletivamente;
I
n
t
r
o
d
u
ç
ã
o
a
A
l
g
o
r
i
t
m
o
s ALGORITMOS - 02/2015 – ÊNIO FILHO
Tipos de algoritmos
⚫ Descrição Narrativa;
⚫ Fluxograma;
⚫ Pseudocódigo, Português Estruturado
ou Portugol;
SUBJETIVIDADE
PRECISÃO
I
n
t
r
o
d
u
ç
ã
o
a
A
l
g
o
r
i
t
m
o
s ALGORITMOS - 02/2015 – ÊNIO FILHO
Tipos de algoritmos
Δ Descrição Narrativa
• Utiliza-se preferencialmente um verbo por frase;
• Formada por frases curtas e simples;
• É objetiva;
• Evita palavras com sentido dúbio;
I
n
t
r
o
d
u
ç
ã
o
a
A
l
g
o
r
i
t
m
o
s ALGORITMOS - 02/2015 – ÊNIO FILHO
Tipos de algoritmos
Δ Descrição Narrativa – Exemplo:
• Dobro de um número (dobro = número x 2)
oDigitar um número;
oGravar em uma variável;
oMultiplicar o número digitado por 2;
oGravar o resultado em outra variável;
oMostrar o resultado da operação;
I
n
t
r
o
d
u
ç
ã
o
a
A
l
g
o
r
i
t
m
o
s ALGORITMOS - 02/2015 – ÊNIO FILHO
Tipos de algoritmos
Δ Fluxograma
• Descrevem o fluxo de ação de um determinado trabalho lógico;
• Usa símbolos convencionais, permitindo poucas variações;
• Representados por símbolos geométricos;
I
n
t
r
o
d
u
ç
ã
o
a
A
l
g
o
r
i
t
m
o
s ALGORITMOS - 02/2015 – ÊNIO FILHO
Tipos de algoritmos
Δ Fluxograma – Conjunto de Símbolos:
INÍCIO OU FIM DE
ALGORITMO
CÁLCULO OU
ATRIBUIÇÃO DE VALOR
ENTRADA DE
DADOS
SAÍDA DE DADOS
DECISÃO
FLUXO DE DADOS
I
n
t
r
o
d
u
ç
ã
o
a
A
l
g
o
r
i
t
m
o
s ALGORITMOS - 02/2015 – ÊNIO FILHO
Tipos de algoritmos
Δ Exemplo:
I
n
t
r
o
d
u
ç
ã
o
a
A
l
g
o
r
i
t
m
o
s ALGORITMOS - 02/2015 – ÊNIO FILHO
Tipos de algoritmos
Δ Exemplo: Faça um algoritmo que calcula e apresenta a multiplicação entre
dois números.
INÍCIO
Calcule a Multiplicação
M = N1 * N2
Leia Notas
N1, N2
Apresente Resultado:
M FIM
I
n
t
r
o
d
u
ç
ã
o
a
A
l
g
o
r
i
t
m
o
s ALGORITMOS - 02/2015 – ÊNIO FILHO
Tipos de algoritmos
Δ Exercício: Faça um algoritmo (narrativa) que calcula a média de três notas
de um determinado aluno e informa se o aluno está aprovado ou
reprovado.
• O aluno estará aprovado se sua média for maior ou igual a 6;
Δ Solução:
• Lê as Notas N1, N2 e N3;
• Calcula a MÉDIA entre N1, N2 e N3;
• Se MÉDIA é maior que 6,
oO Aluno está aprovado;
• Senão,
oO Aluno está Reprovado;
I
n
t
r
o
d
u
ç
ã
o
a
A
l
g
o
r
i
t
m
o
s ALGORITMOS - 02/2015 – ÊNIO FILHO
Tipos de algoritmos
Δ Exercício: Faça um algoritmo (fluxograma) que calcula a média de três notas
de um determinado aluno e informa se o aluno está aprovado ou
reprovado.
• O aluno estará aprovado se sua média for maior ou igual a 6;
INÍCIO
CALCULE A MÉDIA
MEDIA = (N1 + N2 + N3) / 3
LEIA NOTAS:
N1, N2, N3
APROVADO
FIM
MEDIA
>= 6
SIM NÃO
REPROVADO
I
n
t
r
o
d
u
ç
ã
o
a
A
l
g
o
r
i
t
m
o
s ALGORITMOS - 02/2015 – ÊNIO FILHO
Tipos de algoritmos
Δ Português Estruturado (Portugol)
• Linguagem mais restrita que o português em linguagem natural;
• Simplificação extrema do português;
• Significados bem definidos para todos os termos utilizados nas instruções;
• Possui um conjunto de palavras e regras específicas (sintaxe da linguagem);
• Normalmente as implementações são feitas em papel, escritas a mão;
I
n
t
r
o
d
u
ç
ã
o
a
A
l
g
o
r
i
t
m
o
s ALGORITMOS - 02/2015 – ÊNIO FILHO
Tipos de algoritmos
Δ Forma básica de um algoritmo em portugol:
• ALGORITMO
oDECLARE/DEFINA
• FIM_ALGORITMO
VARIÁVEIS
INSTRUÇÕES
TIPOS DE DADOS
I
n
t
r
o
d
u
ç
ã
o
a
A
l
g
o
r
i
t
m
o
s ALGORITMOS - 02/2015 – ÊNIO FILHO
Tipos de algoritmos
Δ Macarrão Instantâneo:
I
n
t
r
o
d
u
ç
ã
o
a
A
l
g
o
r
i
t
m
o
s ALGORITMOS - 02/2015 – ÊNIO FILHO
Tipos de algoritmos
I
n
t
r
o
d
u
ç
ã
o
a
A
l
g
o
r
i
t
m
o
s ALGORITMOS - 02/2015 – ÊNIO FILHO
Tipos de algoritmos
Δ Exemplo: Faça um algoritmo que calcula e apresenta a multiplicação entre
dois números.
ALGORITMO
DECLARE N1, N2, M NUMÉRICO
ESCREVA “Digite dois números”
LEIA N1, N2
M <- N1 * N2
ESCREVA “MULTIPLICAÇÃO = ” , M
FIM_ALGORITMO
I
n
t
r
o
d
u
ç
ã
o
a
A
l
g
o
r
i
t
m
o
s ALGORITMOS - 02/2015 – ÊNIO FILHO
Tipos de Algoritmos
Δ Exemplo: Faça um algoritmo que calcula e apresenta a média entre quatro
números.
I
n
t
r
o
d
u
ç
ã
o
a
A
l
g
o
r
i
t
m
o
s ALGORITMOS - 02/2015 – ÊNIO FILHO
O computador não nos entende ...
Δ O computador não entende linguagem natural, pseudocódigo ou
fluxograma.
Δ Problema de comunicação !
Fala alguma coisa
!
011011011
I
n
t
r
o
d
u
ç
ã
o
a
A
l
g
o
r
i
t
m
o
s ALGORITMOS - 02/2015 – ÊNIO FILHO
O computador não nos entende ...
PROBLEMA
SOLUÇÃO
ALGORITMO
Linguagens de Programação:
JAVA, PHP, C, C++, C#, RUBY, COBOL, DELPHI .....
I
n
t
r
o
d
u
ç
ã
o
a
A
l
g
o
r
i
t
m
o
s ALGORITMOS - 02/2015 – ÊNIO FILHO
Computadores conversam ... ?
• Qual linguagem os computadores entendem ?
• Qual o problema com a linguagem de máquina ?
• Palavras são mais fáceis de lembrar do que sequencias de zeros e uns.
• Qual instrução é mais fácil de ler:
AL=1;
mov $1, AL
10110000
01100001
I
n
t
r
o
d
u
ç
ã
o
a
A
l
g
o
r
i
t
m
o
s ALGORITMOS - 02/2015 – ÊNIO FILHO
Linguagens de baixo nível
movl $5, %eax
movl $1, %edx
.L4:
imull %eax, %edx
decl %eax
testl %eax, $0
jg .L4
Coloque 5 em eax
Coloque 1 em edx
Multiplique eax por edx e coloque o
resultado em edx
Subtraia 1 de eax
Teste se eax é 0
I
n
t
r
o
d
u
ç
ã
o
a
A
l
g
o
r
i
t
m
o
s ALGORITMOS - 02/2015 – ÊNIO FILHO
Linguagens de Alto nível
Δ Utiliza uma linguagem cuja sintaxe é mais próxima da linguagem natural;
Δ Principais características:
• Alta legibilidade;
• Independente da arquitetura do computador (alta portabilidade);
• Fácil manipulação (uso de abstrações);
• Maior confiabilidade;
• Maior produtividade do programador;
• Usada por não-especialistas.
I
n
t
r
o
d
u
ç
ã
o
a
A
l
g
o
r
i
t
m
o
s ALGORITMOS - 02/2015 – ÊNIO FILHO
Linguagens de Alto nível - C
#include<stdio.h>
int main()
{
int n1, n2, p3; //n1 = numero 1 n2 = numero 2 p3 = produto
printf("Sejam Bem Vindos!!n");
printf("Digite o primeiro Numeron");
scanf("%d",&n1);
printf("Digite o Segundo Numeron");
scanf("%d",&n2);
p3=n2*n1 ;
printf("O Resultado eh: %dn",p3);
}
I
n
t
r
o
d
u
ç
ã
o
a
A
l
g
o
r
i
t
m
o
s ALGORITMOS - 02/2015 – ÊNIO FILHO
Mas o computador não entende só zeros e uns ... ?
Δ Linguagem de alto nível permite uma maior produtividade ao programador
e uma maior legibilidade, confiabilidade e portabilidade aos programas
desenvolvidos.
Δ Linguagem de máquina é a linguagem que o computador entende e
consegue executar.
Δ Linguagem de montagem usa mnemônicos para facilitar um pouco o
trabalho do programador, mas apresentam os mesmos fundamentos da
linguagem de máquina.
TRADUÇÃO
I
n
t
r
o
d
u
ç
ã
o
a
A
l
g
o
r
i
t
m
o
s ALGORITMOS - 02/2015 – ÊNIO FILHO
Resumindo
HARDWARE
SISTEMA OPERACIONAL
Compilador ou
Interpretador
Linguagem
de máquina
Linguagem
de alto nível
DÚVIDAS?
Contatos:
E-mail: enio.filho@alfa.br
Skype: eniopvf
Twitter: eniopvf
Bibliografia:
• MANZANO, José Augusto N. G.; OLIVEIRA, Jayr Figueiredo de. Algoritmos: lógica para
desenvolvimento de programação de computadores. 18ª. ed. São Paulo: Érica, 2006. 236 p. ISBN
857194718;
• FORBELLONE, André Luiz Villar; EBERSPACHER, Henri Frederico. Lógica de programação: a construção
de algoritmos e estruturas de dados. 3ª. ed. São Paulo (SP): Pearson Prentice Hall, 2005. 195 p. ISBN
9788576050247;

Mais conteúdo relacionado

Semelhante a Algoritmos e LP - Aula 01 - Introdução a Algoritmos.pdf

Algoritmos e LP - Aula 03 - Expressões Aritméticas.pdf
Algoritmos e LP - Aula 03 - Expressões Aritméticas.pdfAlgoritmos e LP - Aula 03 - Expressões Aritméticas.pdf
Algoritmos e LP - Aula 03 - Expressões Aritméticas.pdf
Enio Filho
 
Lógica de Programação
Lógica de ProgramaçãoLógica de Programação
Lógica de Programação
Claudio Stein Junior
 
Aula02_Vars_Ident_Ent_Saida_Algoritmos.pptx
Aula02_Vars_Ident_Ent_Saida_Algoritmos.pptxAula02_Vars_Ident_Ent_Saida_Algoritmos.pptx
Aula02_Vars_Ident_Ent_Saida_Algoritmos.pptx
aronoliveira3
 
Aula 2 - Lógica de Programação
Aula 2 - Lógica de ProgramaçãoAula 2 - Lógica de Programação
Aula 2 - Lógica de Programação
Instituto CENTEC
 
Algoritimo - Raul
Algoritimo - RaulAlgoritimo - Raul
Algoritimo - Raul
Raul Oliveira
 
Lógica parte 1 - Introdução
Lógica   parte 1 - IntroduçãoLógica   parte 1 - Introdução
Lógica parte 1 - Introdução
Wallison Parreira
 
Lógica de programação { para iniciantes }
Lógica de programação { para iniciantes }Lógica de programação { para iniciantes }
Lógica de programação { para iniciantes }
Mariana Camargo
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos - Formas de Representação de Algoritmos
Algoritmos - Formas de Representação de AlgoritmosAlgoritmos - Formas de Representação de Algoritmos
Algoritmos - Formas de Representação de Algoritmos
Elaine Cecília Gatto
 
Algoritmos - Pascal
Algoritmos - PascalAlgoritmos - Pascal
Algoritmos - Pascal
Elaine Cecília Gatto
 
LP1 P01 - Python.pdf
LP1 P01 - Python.pdfLP1 P01 - Python.pdf
LP1 P01 - Python.pdf
Silvano Oliveira
 
Algoritmos
AlgoritmosAlgoritmos
Conceito de algoritmo
Conceito de algoritmoConceito de algoritmo
Conceito de algoritmo
Gisele Zomer Rossi
 
Algoritmo aula 01-f
Algoritmo   aula 01-fAlgoritmo   aula 01-f
Algoritmo aula 01-f
Professor Samuel Ribeiro
 
Módulo1 aula4
Módulo1 aula4Módulo1 aula4
Módulo1 aula4
Eb 2,3 de beiriz
 
oficina de robótica educativa plano de curso
oficina de robótica educativa plano de cursooficina de robótica educativa plano de curso
oficina de robótica educativa plano de curso
Rodrigo Moraes Barbosa
 
Aula02
Aula02Aula02
2.0_Programacao_PRG29002_-_Pseudocódigo.pdf
2.0_Programacao_PRG29002_-_Pseudocódigo.pdf2.0_Programacao_PRG29002_-_Pseudocódigo.pdf
2.0_Programacao_PRG29002_-_Pseudocódigo.pdf
JustinoFontes
 
Aula 1 - Lógica de Programação.pptx
Aula 1 - Lógica de Programação.pptxAula 1 - Lógica de Programação.pptx
Aula 1 - Lógica de Programação.pptx
AnalderMagalhaes
 
Logica de Programacao
Logica de ProgramacaoLogica de Programacao
Logica de Programacao
Rogério Fernandes da Costa
 

Semelhante a Algoritmos e LP - Aula 01 - Introdução a Algoritmos.pdf (20)

Algoritmos e LP - Aula 03 - Expressões Aritméticas.pdf
Algoritmos e LP - Aula 03 - Expressões Aritméticas.pdfAlgoritmos e LP - Aula 03 - Expressões Aritméticas.pdf
Algoritmos e LP - Aula 03 - Expressões Aritméticas.pdf
 
Lógica de Programação
Lógica de ProgramaçãoLógica de Programação
Lógica de Programação
 
Aula02_Vars_Ident_Ent_Saida_Algoritmos.pptx
Aula02_Vars_Ident_Ent_Saida_Algoritmos.pptxAula02_Vars_Ident_Ent_Saida_Algoritmos.pptx
Aula02_Vars_Ident_Ent_Saida_Algoritmos.pptx
 
Aula 2 - Lógica de Programação
Aula 2 - Lógica de ProgramaçãoAula 2 - Lógica de Programação
Aula 2 - Lógica de Programação
 
Algoritimo - Raul
Algoritimo - RaulAlgoritimo - Raul
Algoritimo - Raul
 
Lógica parte 1 - Introdução
Lógica   parte 1 - IntroduçãoLógica   parte 1 - Introdução
Lógica parte 1 - Introdução
 
Lógica de programação { para iniciantes }
Lógica de programação { para iniciantes }Lógica de programação { para iniciantes }
Lógica de programação { para iniciantes }
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Algoritmos - Formas de Representação de Algoritmos
Algoritmos - Formas de Representação de AlgoritmosAlgoritmos - Formas de Representação de Algoritmos
Algoritmos - Formas de Representação de Algoritmos
 
Algoritmos - Pascal
Algoritmos - PascalAlgoritmos - Pascal
Algoritmos - Pascal
 
LP1 P01 - Python.pdf
LP1 P01 - Python.pdfLP1 P01 - Python.pdf
LP1 P01 - Python.pdf
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Conceito de algoritmo
Conceito de algoritmoConceito de algoritmo
Conceito de algoritmo
 
Algoritmo aula 01-f
Algoritmo   aula 01-fAlgoritmo   aula 01-f
Algoritmo aula 01-f
 
Módulo1 aula4
Módulo1 aula4Módulo1 aula4
Módulo1 aula4
 
oficina de robótica educativa plano de curso
oficina de robótica educativa plano de cursooficina de robótica educativa plano de curso
oficina de robótica educativa plano de curso
 
Aula02
Aula02Aula02
Aula02
 
2.0_Programacao_PRG29002_-_Pseudocódigo.pdf
2.0_Programacao_PRG29002_-_Pseudocódigo.pdf2.0_Programacao_PRG29002_-_Pseudocódigo.pdf
2.0_Programacao_PRG29002_-_Pseudocódigo.pdf
 
Aula 1 - Lógica de Programação.pptx
Aula 1 - Lógica de Programação.pptxAula 1 - Lógica de Programação.pptx
Aula 1 - Lógica de Programação.pptx
 
Logica de Programacao
Logica de ProgramacaoLogica de Programacao
Logica de Programacao
 

Mais de Enio Filho

Algoritmos e LP - Aula 07 - Vetores e Introdução ao C.pdf
Algoritmos e LP - Aula 07 - Vetores e Introdução ao C.pdfAlgoritmos e LP - Aula 07 - Vetores e Introdução ao C.pdf
Algoritmos e LP - Aula 07 - Vetores e Introdução ao C.pdf
Enio Filho
 
Algoritmos e LP - Aula 08 - Linguagem C - p1.pdf
Algoritmos e LP - Aula 08 - Linguagem C - p1.pdfAlgoritmos e LP - Aula 08 - Linguagem C - p1.pdf
Algoritmos e LP - Aula 08 - Linguagem C - p1.pdf
Enio Filho
 
Algoritmos e LP - Aula 04 - Estruturas de Repeticao - p1.pdf
Algoritmos e LP - Aula 04 - Estruturas de Repeticao - p1.pdfAlgoritmos e LP - Aula 04 - Estruturas de Repeticao - p1.pdf
Algoritmos e LP - Aula 04 - Estruturas de Repeticao - p1.pdf
Enio Filho
 
Algoritmos e LP - Aula 09 - Linguagem C - p2.pdf
Algoritmos e LP - Aula 09 - Linguagem C - p2.pdfAlgoritmos e LP - Aula 09 - Linguagem C - p2.pdf
Algoritmos e LP - Aula 09 - Linguagem C - p2.pdf
Enio Filho
 
Algoritmos e LP - Aula 05 - Estruturas de Repeticao - p2.pdf
Algoritmos e LP - Aula 05 - Estruturas de Repeticao - p2.pdfAlgoritmos e LP - Aula 05 - Estruturas de Repeticao - p2.pdf
Algoritmos e LP - Aula 05 - Estruturas de Repeticao - p2.pdf
Enio Filho
 
Algoritmos e LP - Aula 06 - Estruturas de Repeticao p3 e Vetores.pdf
Algoritmos e LP - Aula 06 - Estruturas de Repeticao p3 e Vetores.pdfAlgoritmos e LP - Aula 06 - Estruturas de Repeticao p3 e Vetores.pdf
Algoritmos e LP - Aula 06 - Estruturas de Repeticao p3 e Vetores.pdf
Enio Filho
 
Algoritmos e LP - Aula 00 - Introdução e Apresentação.pdf
Algoritmos e LP - Aula 00 - Introdução e Apresentação.pdfAlgoritmos e LP - Aula 00 - Introdução e Apresentação.pdf
Algoritmos e LP - Aula 00 - Introdução e Apresentação.pdf
Enio Filho
 
Eica 2016.1 - Identificando e rastreando itens na era do IOT
Eica 2016.1 - Identificando e rastreando itens na era do IOTEica 2016.1 - Identificando e rastreando itens na era do IOT
Eica 2016.1 - Identificando e rastreando itens na era do IOT
Enio Filho
 
Eica 2015.2 - Introdução ao IOT
Eica 2015.2 - Introdução ao IOTEica 2015.2 - Introdução ao IOT
Eica 2015.2 - Introdução ao IOT
Enio Filho
 
Eica 2016.2 - Industria 4.0
Eica 2016.2 - Industria 4.0Eica 2016.2 - Industria 4.0
Eica 2016.2 - Industria 4.0
Enio Filho
 
Iot - identificando e rastreando - PUC
Iot  - identificando e rastreando - PUCIot  - identificando e rastreando - PUC
Iot - identificando e rastreando - PUC
Enio Filho
 

Mais de Enio Filho (11)

Algoritmos e LP - Aula 07 - Vetores e Introdução ao C.pdf
Algoritmos e LP - Aula 07 - Vetores e Introdução ao C.pdfAlgoritmos e LP - Aula 07 - Vetores e Introdução ao C.pdf
Algoritmos e LP - Aula 07 - Vetores e Introdução ao C.pdf
 
Algoritmos e LP - Aula 08 - Linguagem C - p1.pdf
Algoritmos e LP - Aula 08 - Linguagem C - p1.pdfAlgoritmos e LP - Aula 08 - Linguagem C - p1.pdf
Algoritmos e LP - Aula 08 - Linguagem C - p1.pdf
 
Algoritmos e LP - Aula 04 - Estruturas de Repeticao - p1.pdf
Algoritmos e LP - Aula 04 - Estruturas de Repeticao - p1.pdfAlgoritmos e LP - Aula 04 - Estruturas de Repeticao - p1.pdf
Algoritmos e LP - Aula 04 - Estruturas de Repeticao - p1.pdf
 
Algoritmos e LP - Aula 09 - Linguagem C - p2.pdf
Algoritmos e LP - Aula 09 - Linguagem C - p2.pdfAlgoritmos e LP - Aula 09 - Linguagem C - p2.pdf
Algoritmos e LP - Aula 09 - Linguagem C - p2.pdf
 
Algoritmos e LP - Aula 05 - Estruturas de Repeticao - p2.pdf
Algoritmos e LP - Aula 05 - Estruturas de Repeticao - p2.pdfAlgoritmos e LP - Aula 05 - Estruturas de Repeticao - p2.pdf
Algoritmos e LP - Aula 05 - Estruturas de Repeticao - p2.pdf
 
Algoritmos e LP - Aula 06 - Estruturas de Repeticao p3 e Vetores.pdf
Algoritmos e LP - Aula 06 - Estruturas de Repeticao p3 e Vetores.pdfAlgoritmos e LP - Aula 06 - Estruturas de Repeticao p3 e Vetores.pdf
Algoritmos e LP - Aula 06 - Estruturas de Repeticao p3 e Vetores.pdf
 
Algoritmos e LP - Aula 00 - Introdução e Apresentação.pdf
Algoritmos e LP - Aula 00 - Introdução e Apresentação.pdfAlgoritmos e LP - Aula 00 - Introdução e Apresentação.pdf
Algoritmos e LP - Aula 00 - Introdução e Apresentação.pdf
 
Eica 2016.1 - Identificando e rastreando itens na era do IOT
Eica 2016.1 - Identificando e rastreando itens na era do IOTEica 2016.1 - Identificando e rastreando itens na era do IOT
Eica 2016.1 - Identificando e rastreando itens na era do IOT
 
Eica 2015.2 - Introdução ao IOT
Eica 2015.2 - Introdução ao IOTEica 2015.2 - Introdução ao IOT
Eica 2015.2 - Introdução ao IOT
 
Eica 2016.2 - Industria 4.0
Eica 2016.2 - Industria 4.0Eica 2016.2 - Industria 4.0
Eica 2016.2 - Industria 4.0
 
Iot - identificando e rastreando - PUC
Iot  - identificando e rastreando - PUCIot  - identificando e rastreando - PUC
Iot - identificando e rastreando - PUC
 

Último

A GEOPOLÍTICA ATUAL E A INTEGRAÇÃO ECONÔMICA E SOCIAL
A GEOPOLÍTICA ATUAL E A INTEGRAÇÃO ECONÔMICA E SOCIALA GEOPOLÍTICA ATUAL E A INTEGRAÇÃO ECONÔMICA E SOCIAL
A GEOPOLÍTICA ATUAL E A INTEGRAÇÃO ECONÔMICA E SOCIAL
ArapiracaNoticiasFat
 
Boletim informativo - Contacto - julho de 2024
Boletim informativo - Contacto - julho de 2024Boletim informativo - Contacto - julho de 2024
Boletim informativo - Contacto - julho de 2024
Bibliotecas Escolares AEIDH
 
Uma Breve História da Origem, Formação e Evolução da Terra
Uma Breve História da Origem, Formação e Evolução da TerraUma Breve História da Origem, Formação e Evolução da Terra
Uma Breve História da Origem, Formação e Evolução da Terra
Luiz C. da Silva
 
Slides Lição 3, CPAD, Rute e Noemi, Entrelaçadas pelo Amor.pptx
Slides Lição 3, CPAD, Rute e Noemi, Entrelaçadas pelo Amor.pptxSlides Lição 3, CPAD, Rute e Noemi, Entrelaçadas pelo Amor.pptx
Slides Lição 3, CPAD, Rute e Noemi, Entrelaçadas pelo Amor.pptx
LuizHenriquedeAlmeid6
 
UFCD_5673_Segurança nos transportes_índice.pdf
UFCD_5673_Segurança nos transportes_índice.pdfUFCD_5673_Segurança nos transportes_índice.pdf
UFCD_5673_Segurança nos transportes_índice.pdf
Manuais Formação
 
Administração Em Enfermagem.pptx caala - Cópia-1.pptx
Administração Em Enfermagem.pptx caala - Cópia-1.pptxAdministração Em Enfermagem.pptx caala - Cópia-1.pptx
Administração Em Enfermagem.pptx caala - Cópia-1.pptx
helenawaya9
 
Intendência da Aeronáutica. Somos um, sou você Intendência!.pdf
Intendência da Aeronáutica. Somos um, sou você Intendência!.pdfIntendência da Aeronáutica. Somos um, sou você Intendência!.pdf
Intendência da Aeronáutica. Somos um, sou você Intendência!.pdf
Falcão Brasil
 
Slides Lição 3, Betel, A relevância da Igreja no cumprimento de sua Missão.pptx
Slides Lição 3, Betel, A relevância da Igreja no cumprimento de sua Missão.pptxSlides Lição 3, Betel, A relevância da Igreja no cumprimento de sua Missão.pptx
Slides Lição 3, Betel, A relevância da Igreja no cumprimento de sua Missão.pptx
LuizHenriquedeAlmeid6
 
Guia Genealógico da Principesca e Ducal Casa de Mesolcina, 2024
Guia Genealógico da Principesca e Ducal Casa de Mesolcina, 2024Guia Genealógico da Principesca e Ducal Casa de Mesolcina, 2024
Guia Genealógico da Principesca e Ducal Casa de Mesolcina, 2024
principeandregalli
 
Portfólio Estratégico da Força Aérea Brasileira (FAB).pdf
Portfólio Estratégico da Força Aérea Brasileira (FAB).pdfPortfólio Estratégico da Força Aérea Brasileira (FAB).pdf
Portfólio Estratégico da Força Aérea Brasileira (FAB).pdf
Falcão Brasil
 
Caça-palavras - multiplicação
Caça-palavras  -  multiplicaçãoCaça-palavras  -  multiplicação
Caça-palavras - multiplicação
Mary Alvarenga
 
Portfólio Estratégico da Marinha do Brasil (MB).pdf
Portfólio Estratégico da Marinha do Brasil (MB).pdfPortfólio Estratégico da Marinha do Brasil (MB).pdf
Portfólio Estratégico da Marinha do Brasil (MB).pdf
Falcão Brasil
 
O que é o programa nacional de alimentação escolar (PNAE)?
O que é  o programa nacional de alimentação escolar (PNAE)?O que é  o programa nacional de alimentação escolar (PNAE)?
O que é o programa nacional de alimentação escolar (PNAE)?
Marcelo Botura
 
Slides Lição 4, CPAD, O Encontro de Rute com Boaz, 3Tr24.pptx
Slides Lição 4, CPAD, O Encontro de Rute com Boaz, 3Tr24.pptxSlides Lição 4, CPAD, O Encontro de Rute com Boaz, 3Tr24.pptx
Slides Lição 4, CPAD, O Encontro de Rute com Boaz, 3Tr24.pptx
LuizHenriquedeAlmeid6
 
Aviação de Asas Rotativas. Aos Rotores, o Sabre!.pdf
Aviação de Asas Rotativas. Aos Rotores, o Sabre!.pdfAviação de Asas Rotativas. Aos Rotores, o Sabre!.pdf
Aviação de Asas Rotativas. Aos Rotores, o Sabre!.pdf
Falcão Brasil
 
O Ministério da Defesa e a Sociedade no Tema de Defesa Nacional.pdf
O Ministério da Defesa e a Sociedade no Tema de Defesa Nacional.pdfO Ministério da Defesa e a Sociedade no Tema de Defesa Nacional.pdf
O Ministério da Defesa e a Sociedade no Tema de Defesa Nacional.pdf
Falcão Brasil
 
UFCD_7224_Prevenção de acidentes em contexto domiciliário e institucional_índ...
UFCD_7224_Prevenção de acidentes em contexto domiciliário e institucional_índ...UFCD_7224_Prevenção de acidentes em contexto domiciliário e institucional_índ...
UFCD_7224_Prevenção de acidentes em contexto domiciliário e institucional_índ...
Manuais Formação
 
Aula 3 CURSO LETRANDO (classes gramaticais).pdf
Aula 3 CURSO LETRANDO (classes gramaticais).pdfAula 3 CURSO LETRANDO (classes gramaticais).pdf
Aula 3 CURSO LETRANDO (classes gramaticais).pdf
ProfessoraSilmaraArg
 
Slide | Eurodeputados Portugueses (2024-2029) - Parlamento Europeu (atualiz. ...
Slide | Eurodeputados Portugueses (2024-2029) - Parlamento Europeu (atualiz. ...Slide | Eurodeputados Portugueses (2024-2029) - Parlamento Europeu (atualiz. ...
Slide | Eurodeputados Portugueses (2024-2029) - Parlamento Europeu (atualiz. ...
Centro Jacques Delors
 

Último (20)

A GEOPOLÍTICA ATUAL E A INTEGRAÇÃO ECONÔMICA E SOCIAL
A GEOPOLÍTICA ATUAL E A INTEGRAÇÃO ECONÔMICA E SOCIALA GEOPOLÍTICA ATUAL E A INTEGRAÇÃO ECONÔMICA E SOCIAL
A GEOPOLÍTICA ATUAL E A INTEGRAÇÃO ECONÔMICA E SOCIAL
 
Boletim informativo - Contacto - julho de 2024
Boletim informativo - Contacto - julho de 2024Boletim informativo - Contacto - julho de 2024
Boletim informativo - Contacto - julho de 2024
 
Uma Breve História da Origem, Formação e Evolução da Terra
Uma Breve História da Origem, Formação e Evolução da TerraUma Breve História da Origem, Formação e Evolução da Terra
Uma Breve História da Origem, Formação e Evolução da Terra
 
Slides Lição 3, CPAD, Rute e Noemi, Entrelaçadas pelo Amor.pptx
Slides Lição 3, CPAD, Rute e Noemi, Entrelaçadas pelo Amor.pptxSlides Lição 3, CPAD, Rute e Noemi, Entrelaçadas pelo Amor.pptx
Slides Lição 3, CPAD, Rute e Noemi, Entrelaçadas pelo Amor.pptx
 
UFCD_5673_Segurança nos transportes_índice.pdf
UFCD_5673_Segurança nos transportes_índice.pdfUFCD_5673_Segurança nos transportes_índice.pdf
UFCD_5673_Segurança nos transportes_índice.pdf
 
Administração Em Enfermagem.pptx caala - Cópia-1.pptx
Administração Em Enfermagem.pptx caala - Cópia-1.pptxAdministração Em Enfermagem.pptx caala - Cópia-1.pptx
Administração Em Enfermagem.pptx caala - Cópia-1.pptx
 
Intendência da Aeronáutica. Somos um, sou você Intendência!.pdf
Intendência da Aeronáutica. Somos um, sou você Intendência!.pdfIntendência da Aeronáutica. Somos um, sou você Intendência!.pdf
Intendência da Aeronáutica. Somos um, sou você Intendência!.pdf
 
Slides Lição 3, Betel, A relevância da Igreja no cumprimento de sua Missão.pptx
Slides Lição 3, Betel, A relevância da Igreja no cumprimento de sua Missão.pptxSlides Lição 3, Betel, A relevância da Igreja no cumprimento de sua Missão.pptx
Slides Lição 3, Betel, A relevância da Igreja no cumprimento de sua Missão.pptx
 
Guia Genealógico da Principesca e Ducal Casa de Mesolcina, 2024
Guia Genealógico da Principesca e Ducal Casa de Mesolcina, 2024Guia Genealógico da Principesca e Ducal Casa de Mesolcina, 2024
Guia Genealógico da Principesca e Ducal Casa de Mesolcina, 2024
 
Festa dos Finalistas .
Festa dos Finalistas                    .Festa dos Finalistas                    .
Festa dos Finalistas .
 
Portfólio Estratégico da Força Aérea Brasileira (FAB).pdf
Portfólio Estratégico da Força Aérea Brasileira (FAB).pdfPortfólio Estratégico da Força Aérea Brasileira (FAB).pdf
Portfólio Estratégico da Força Aérea Brasileira (FAB).pdf
 
Caça-palavras - multiplicação
Caça-palavras  -  multiplicaçãoCaça-palavras  -  multiplicação
Caça-palavras - multiplicação
 
Portfólio Estratégico da Marinha do Brasil (MB).pdf
Portfólio Estratégico da Marinha do Brasil (MB).pdfPortfólio Estratégico da Marinha do Brasil (MB).pdf
Portfólio Estratégico da Marinha do Brasil (MB).pdf
 
O que é o programa nacional de alimentação escolar (PNAE)?
O que é  o programa nacional de alimentação escolar (PNAE)?O que é  o programa nacional de alimentação escolar (PNAE)?
O que é o programa nacional de alimentação escolar (PNAE)?
 
Slides Lição 4, CPAD, O Encontro de Rute com Boaz, 3Tr24.pptx
Slides Lição 4, CPAD, O Encontro de Rute com Boaz, 3Tr24.pptxSlides Lição 4, CPAD, O Encontro de Rute com Boaz, 3Tr24.pptx
Slides Lição 4, CPAD, O Encontro de Rute com Boaz, 3Tr24.pptx
 
Aviação de Asas Rotativas. Aos Rotores, o Sabre!.pdf
Aviação de Asas Rotativas. Aos Rotores, o Sabre!.pdfAviação de Asas Rotativas. Aos Rotores, o Sabre!.pdf
Aviação de Asas Rotativas. Aos Rotores, o Sabre!.pdf
 
O Ministério da Defesa e a Sociedade no Tema de Defesa Nacional.pdf
O Ministério da Defesa e a Sociedade no Tema de Defesa Nacional.pdfO Ministério da Defesa e a Sociedade no Tema de Defesa Nacional.pdf
O Ministério da Defesa e a Sociedade no Tema de Defesa Nacional.pdf
 
UFCD_7224_Prevenção de acidentes em contexto domiciliário e institucional_índ...
UFCD_7224_Prevenção de acidentes em contexto domiciliário e institucional_índ...UFCD_7224_Prevenção de acidentes em contexto domiciliário e institucional_índ...
UFCD_7224_Prevenção de acidentes em contexto domiciliário e institucional_índ...
 
Aula 3 CURSO LETRANDO (classes gramaticais).pdf
Aula 3 CURSO LETRANDO (classes gramaticais).pdfAula 3 CURSO LETRANDO (classes gramaticais).pdf
Aula 3 CURSO LETRANDO (classes gramaticais).pdf
 
Slide | Eurodeputados Portugueses (2024-2029) - Parlamento Europeu (atualiz. ...
Slide | Eurodeputados Portugueses (2024-2029) - Parlamento Europeu (atualiz. ...Slide | Eurodeputados Portugueses (2024-2029) - Parlamento Europeu (atualiz. ...
Slide | Eurodeputados Portugueses (2024-2029) - Parlamento Europeu (atualiz. ...
 

Algoritmos e LP - Aula 01 - Introdução a Algoritmos.pdf

  • 1. Aula 01 Introdução a Algoritmos Ênio Prates Vasconcelos Filho Faculdades Alfa
  • 2. I n t r o d u ç ã o a A l g o r i t m o s ALGORITMOS - 02/2015 – ÊNIO FILHO Tópicos Δ O que é um Algoritmo; Δ Por que criamos algoritmos? Δ Tipos de Algoritmos; Δ Linguagens de Baixo x Alto nível; Δ Exemplos;
  • 3. I n t r o d u ç ã o a A l g o r i t m o s ALGORITMOS - 02/2015 – ÊNIO FILHO O que é um Algoritmo?
  • 4. I n t r o d u ç ã o a A l g o r i t m o s ALGORITMOS - 02/2015 – ÊNIO FILHO O que é um algoritmo? Δ Sequência finita de instruções, ordenadas de forma lógica para a resolução de uma determinada tarefa ou problema; Δ Não necessariamente envolve aspectos computacionais. Ex.: • Uma receita de bolo, • Trocar um pneu de carro, • Trocar uma lâmpada...; Δ Um algoritmo também não representa, necessariamente, um programa de computador e sim os passos necessários para realizar uma tarefa ou solucionar um problema, seja de que área for.
  • 5. I n t r o d u ç ã o a A l g o r i t m o s ALGORITMOS - 02/2015 – ÊNIO FILHO O que é um algoritmo? Δ Exemplo: Sequência para fritar um ovo: 1. Retirar o ovo da geladeira; 2. Colocar a frigideira no fogo; 3. Colocar óleo; 4. Esperar até o óleo ficar quente; 5. Quebrar o ovo separando a casca; 6. Colocar o conteúdo do ovo na frigideira; 7. Esperar um minuto; 8. Retirar o ovo da frigideira; 9. Apagar o fogo;
  • 6. I n t r o d u ç ã o a A l g o r i t m o s ALGORITMOS - 02/2015 – ÊNIO FILHO O que é um algoritmo? Δ Tal sequência é um algoritmo? Vejamos... • A sequência anterior possui instruções finitas e ordenadas? o SIM. 9 instruções ordenadas; o O início de uma instrução depende da conclusão de uma instrução anterior; Δ O objetivo da sequência foi atingido? • SIM. O ovo foi frito; Δ Logo, a sequência anterior é um algoritmo!
  • 7. I n t r o d u ç ã o a A l g o r i t m o s ALGORITMOS - 02/2015 – ÊNIO FILHO O que é um Algoritmo? Δ Todo algoritmo precisa possuir as seguintes características: • Entrada: zero ou mais valores de entrada; • Saída: pelo menos um valor é produzido; • Clareza ou Definição: cada passo/instrução/etapa de um algoritmo deve ser claro e não ambíguo; • Efetividade: cada passo/instrução/etapa de um algoritmo deve ser executável; • Finitude: o algoritmo deve ter um conjunto finito de passos.
  • 8. I n t r o d u ç ã o a A l g o r i t m o s ALGORITMOS - 02/2015 – ÊNIO FILHO O que é um algoritmo? ⚫ Exercício – Ordene e estruture uma sequência para a realização de uma ligação telefônica em um orelhão.
  • 9. I n t r o d u ç ã o a A l g o r i t m o s ALGORITMOS - 02/2015 – ÊNIO FILHO O que é um algoritmo? Δ Uma possível solução: 1. Tirar o telefone do gancho; 2. Ouvir o sinal de linha; 3. Introduzir o cartão no orelhão; 4. Teclar o número desejado; 5. Conversar; 6. Desligar; 7. Tirar o cartão;
  • 10. I n t r o d u ç ã o a A l g o r i t m o s ALGORITMOS - 02/2015 – ÊNIO FILHO O que é um algoritmo? Δ A solução anterior... mais robusta: 1. Tirar o telefone do gancho; 2. Ouvir o sinal de linha; 3. Introduzir o cartão no orelhão; 4. Teclar o número desejado; 5. Se chamar e alguém atender... 1. Conversar; 2. Desligar; 3. Retirar o cartão; 6. Senão... 1. Desligar; 2. Voltar para a instrução 1;
  • 11. I n t r o d u ç ã o a A l g o r i t m o s ALGORITMOS - 02/2015 – ÊNIO FILHO Desafio Δ Escreva um algoritmo que ajude o homem do barco a levar o lobo, a ovelha e a caixa de verduras para o outro lado do lago. Utilize a descrição narrativa para representar o algoritmo. Lembre-se: • Lobos comem ovelhas e ovelhas comem as verduras quando o homem está na outra margem! • O Barco tem apenas dois lugares;
  • 12. I n t r o d u ç ã o a A l g o r i t m o s ALGORITMOS - 02/2015 – ÊNIO FILHO Desafio Δ Solução: 1. Pega a ovelha 2. Vai para a outra margem 3. Deixa a ovelha 4. Volta a margem inicial 5. Pega a caixa de verduras 6. Vai para a outra margem 7. Deixa a caixa de verduras e pega a ovelha 8. Volta a margem inicial 9. Deixa a ovelha e pega o lobo 10. Vai para a outra margem 11. Deixa o lobo 12. Volta a margem inicial 13. Pega a ovelha 14. Vai para a outra margem 15. Deixa a ovelha
  • 13. I n t r o d u ç ã o a A l g o r i t m o s ALGORITMOS - 02/2015 – ÊNIO FILHO Por que criamos algoritmos? Δ A linguagem natural não pode ser interpretada por computadores; Δ Computadores são projetados para executar tarefas bem definidas a partir de instruções; Δ Para desenvolver software, utilizamos linguagens de programação... Δ A linguagem algorítmica é similar a uma linguagem de programação; Δ Logo, aprendendo a criar algoritmos, estamos aptos a programar em qualquer linguagem de programação;
  • 14. I n t r o d u ç ã o a A l g o r i t m o s ALGORITMOS - 02/2015 – ÊNIO FILHO Por que programar? Δ No fundo, programar é ensinar um computador a resolver problemas! Δ Mesmo que você não seja um programador no futuro, programar ajuda a despertar as seguintes habilidades: • Ajuda a encontrar a solução para problemas; • Ensina a persistir; • Desperta para o mundo; • Estimula a criatividade; • Desperta a paixão em aprender; • Ensina a trabalhar coletivamente;
  • 15. I n t r o d u ç ã o a A l g o r i t m o s ALGORITMOS - 02/2015 – ÊNIO FILHO Tipos de algoritmos ⚫ Descrição Narrativa; ⚫ Fluxograma; ⚫ Pseudocódigo, Português Estruturado ou Portugol; SUBJETIVIDADE PRECISÃO
  • 16. I n t r o d u ç ã o a A l g o r i t m o s ALGORITMOS - 02/2015 – ÊNIO FILHO Tipos de algoritmos Δ Descrição Narrativa • Utiliza-se preferencialmente um verbo por frase; • Formada por frases curtas e simples; • É objetiva; • Evita palavras com sentido dúbio;
  • 17. I n t r o d u ç ã o a A l g o r i t m o s ALGORITMOS - 02/2015 – ÊNIO FILHO Tipos de algoritmos Δ Descrição Narrativa – Exemplo: • Dobro de um número (dobro = número x 2) oDigitar um número; oGravar em uma variável; oMultiplicar o número digitado por 2; oGravar o resultado em outra variável; oMostrar o resultado da operação;
  • 18. I n t r o d u ç ã o a A l g o r i t m o s ALGORITMOS - 02/2015 – ÊNIO FILHO Tipos de algoritmos Δ Fluxograma • Descrevem o fluxo de ação de um determinado trabalho lógico; • Usa símbolos convencionais, permitindo poucas variações; • Representados por símbolos geométricos;
  • 19. I n t r o d u ç ã o a A l g o r i t m o s ALGORITMOS - 02/2015 – ÊNIO FILHO Tipos de algoritmos Δ Fluxograma – Conjunto de Símbolos: INÍCIO OU FIM DE ALGORITMO CÁLCULO OU ATRIBUIÇÃO DE VALOR ENTRADA DE DADOS SAÍDA DE DADOS DECISÃO FLUXO DE DADOS
  • 20. I n t r o d u ç ã o a A l g o r i t m o s ALGORITMOS - 02/2015 – ÊNIO FILHO Tipos de algoritmos Δ Exemplo:
  • 21. I n t r o d u ç ã o a A l g o r i t m o s ALGORITMOS - 02/2015 – ÊNIO FILHO Tipos de algoritmos Δ Exemplo: Faça um algoritmo que calcula e apresenta a multiplicação entre dois números. INÍCIO Calcule a Multiplicação M = N1 * N2 Leia Notas N1, N2 Apresente Resultado: M FIM
  • 22. I n t r o d u ç ã o a A l g o r i t m o s ALGORITMOS - 02/2015 – ÊNIO FILHO Tipos de algoritmos Δ Exercício: Faça um algoritmo (narrativa) que calcula a média de três notas de um determinado aluno e informa se o aluno está aprovado ou reprovado. • O aluno estará aprovado se sua média for maior ou igual a 6; Δ Solução: • Lê as Notas N1, N2 e N3; • Calcula a MÉDIA entre N1, N2 e N3; • Se MÉDIA é maior que 6, oO Aluno está aprovado; • Senão, oO Aluno está Reprovado;
  • 23. I n t r o d u ç ã o a A l g o r i t m o s ALGORITMOS - 02/2015 – ÊNIO FILHO Tipos de algoritmos Δ Exercício: Faça um algoritmo (fluxograma) que calcula a média de três notas de um determinado aluno e informa se o aluno está aprovado ou reprovado. • O aluno estará aprovado se sua média for maior ou igual a 6; INÍCIO CALCULE A MÉDIA MEDIA = (N1 + N2 + N3) / 3 LEIA NOTAS: N1, N2, N3 APROVADO FIM MEDIA >= 6 SIM NÃO REPROVADO
  • 24. I n t r o d u ç ã o a A l g o r i t m o s ALGORITMOS - 02/2015 – ÊNIO FILHO Tipos de algoritmos Δ Português Estruturado (Portugol) • Linguagem mais restrita que o português em linguagem natural; • Simplificação extrema do português; • Significados bem definidos para todos os termos utilizados nas instruções; • Possui um conjunto de palavras e regras específicas (sintaxe da linguagem); • Normalmente as implementações são feitas em papel, escritas a mão;
  • 25. I n t r o d u ç ã o a A l g o r i t m o s ALGORITMOS - 02/2015 – ÊNIO FILHO Tipos de algoritmos Δ Forma básica de um algoritmo em portugol: • ALGORITMO oDECLARE/DEFINA • FIM_ALGORITMO VARIÁVEIS INSTRUÇÕES TIPOS DE DADOS
  • 26. I n t r o d u ç ã o a A l g o r i t m o s ALGORITMOS - 02/2015 – ÊNIO FILHO Tipos de algoritmos Δ Macarrão Instantâneo:
  • 27. I n t r o d u ç ã o a A l g o r i t m o s ALGORITMOS - 02/2015 – ÊNIO FILHO Tipos de algoritmos
  • 28. I n t r o d u ç ã o a A l g o r i t m o s ALGORITMOS - 02/2015 – ÊNIO FILHO Tipos de algoritmos Δ Exemplo: Faça um algoritmo que calcula e apresenta a multiplicação entre dois números. ALGORITMO DECLARE N1, N2, M NUMÉRICO ESCREVA “Digite dois números” LEIA N1, N2 M <- N1 * N2 ESCREVA “MULTIPLICAÇÃO = ” , M FIM_ALGORITMO
  • 29. I n t r o d u ç ã o a A l g o r i t m o s ALGORITMOS - 02/2015 – ÊNIO FILHO Tipos de Algoritmos Δ Exemplo: Faça um algoritmo que calcula e apresenta a média entre quatro números.
  • 30. I n t r o d u ç ã o a A l g o r i t m o s ALGORITMOS - 02/2015 – ÊNIO FILHO O computador não nos entende ... Δ O computador não entende linguagem natural, pseudocódigo ou fluxograma. Δ Problema de comunicação ! Fala alguma coisa ! 011011011
  • 31. I n t r o d u ç ã o a A l g o r i t m o s ALGORITMOS - 02/2015 – ÊNIO FILHO O computador não nos entende ... PROBLEMA SOLUÇÃO ALGORITMO Linguagens de Programação: JAVA, PHP, C, C++, C#, RUBY, COBOL, DELPHI .....
  • 32. I n t r o d u ç ã o a A l g o r i t m o s ALGORITMOS - 02/2015 – ÊNIO FILHO Computadores conversam ... ? • Qual linguagem os computadores entendem ? • Qual o problema com a linguagem de máquina ? • Palavras são mais fáceis de lembrar do que sequencias de zeros e uns. • Qual instrução é mais fácil de ler: AL=1; mov $1, AL 10110000 01100001
  • 33. I n t r o d u ç ã o a A l g o r i t m o s ALGORITMOS - 02/2015 – ÊNIO FILHO Linguagens de baixo nível movl $5, %eax movl $1, %edx .L4: imull %eax, %edx decl %eax testl %eax, $0 jg .L4 Coloque 5 em eax Coloque 1 em edx Multiplique eax por edx e coloque o resultado em edx Subtraia 1 de eax Teste se eax é 0
  • 34. I n t r o d u ç ã o a A l g o r i t m o s ALGORITMOS - 02/2015 – ÊNIO FILHO Linguagens de Alto nível Δ Utiliza uma linguagem cuja sintaxe é mais próxima da linguagem natural; Δ Principais características: • Alta legibilidade; • Independente da arquitetura do computador (alta portabilidade); • Fácil manipulação (uso de abstrações); • Maior confiabilidade; • Maior produtividade do programador; • Usada por não-especialistas.
  • 35. I n t r o d u ç ã o a A l g o r i t m o s ALGORITMOS - 02/2015 – ÊNIO FILHO Linguagens de Alto nível - C #include<stdio.h> int main() { int n1, n2, p3; //n1 = numero 1 n2 = numero 2 p3 = produto printf("Sejam Bem Vindos!!n"); printf("Digite o primeiro Numeron"); scanf("%d",&n1); printf("Digite o Segundo Numeron"); scanf("%d",&n2); p3=n2*n1 ; printf("O Resultado eh: %dn",p3); }
  • 36. I n t r o d u ç ã o a A l g o r i t m o s ALGORITMOS - 02/2015 – ÊNIO FILHO Mas o computador não entende só zeros e uns ... ? Δ Linguagem de alto nível permite uma maior produtividade ao programador e uma maior legibilidade, confiabilidade e portabilidade aos programas desenvolvidos. Δ Linguagem de máquina é a linguagem que o computador entende e consegue executar. Δ Linguagem de montagem usa mnemônicos para facilitar um pouco o trabalho do programador, mas apresentam os mesmos fundamentos da linguagem de máquina. TRADUÇÃO
  • 37. I n t r o d u ç ã o a A l g o r i t m o s ALGORITMOS - 02/2015 – ÊNIO FILHO Resumindo HARDWARE SISTEMA OPERACIONAL Compilador ou Interpretador Linguagem de máquina Linguagem de alto nível
  • 38. DÚVIDAS? Contatos: E-mail: enio.filho@alfa.br Skype: eniopvf Twitter: eniopvf Bibliografia: • MANZANO, José Augusto N. G.; OLIVEIRA, Jayr Figueiredo de. Algoritmos: lógica para desenvolvimento de programação de computadores. 18ª. ed. São Paulo: Érica, 2006. 236 p. ISBN 857194718; • FORBELLONE, André Luiz Villar; EBERSPACHER, Henri Frederico. Lógica de programação: a construção de algoritmos e estruturas de dados. 3ª. ed. São Paulo (SP): Pearson Prentice Hall, 2005. 195 p. ISBN 9788576050247;