Introdução

Propaganda
Linguagens
g g
de Programação
g
CET DPM – Algo
oritmos e Program
mação 2010-11 C
Celestino Gonçalves
CET DPM – Algo
oritmos e Program
mação 2010-11 C
Celestino Gonçalves
Linguagens
g g
de Programação
g
• Processador (CPU): executa tarefas
Programa em Linguagem máquina
INTRODUÇÃO AOS ALGORITMOS
• Linguagem
g g de pprogramação
g
ç de alto nível
(mais abstractas)
Exemplos:
p
C,, Pascal,, Ada,, C++,, Java,, Lisp,
p, Fortran,, …
Os programas nestas linguagens não são
reconhecidos directamente pelo processador
INTRODUÇÃO AOS ALGORITMOS
2
INTRODUÇÃO AOS ALGORITMOS
4
Algoritmia
g
- Introdução
Código
Fonte
Linguagem de programação de alto nível
Compilação
Compiladores: são programas especiais
que executam a compilação (tradução do
código fonte para a linguagem máquina)
Linguagem
Máquina
Sequência de números que significam
uma sequência de instruções a serem
executadas
t d
3
CET DPM – Algo
oritmos e Program
mação 2010-11 C
Celestino Gonçalves
CET DPM – Algo
oritmos e Program
mação 2010-11 C
Celestino Gonçalves
Exemplos: Assembler, …
1
Linguagens
de Programação
g g
g
INTRODUÇÃO AOS ALGORITMOS
• Linguagem de programação de baixo nível
(baixo nível de abstracção)
• Noção de Algoritmo
• Resolução de problemas
Conceitos Introdutórios
• É uma sequência de passos finitos com o
objectivo
de solucionar um dado problema
j
p
Problema
Solução
O algoritmo não é a solução,
sol ção é
o caminho que leva à solução!
INTRODUÇÃO AOS ALGORITMOS
CET DPM – Algo
oritmos e Program
mação 2010-11 C
Celestino Gonçalves
CET DPM – Algo
oritmos e Program
mação 2010-11 C
Celestino Gonçalves
Algoritmo
g
5
INTRODUÇÃO AOS ALGORITMOS
6
INTRODUÇÃO AOS ALGORITMOS
8
Algoritmo
g
- Exemplos
• No dia-a-dia cruzamo-nos com algoritmos
sem dar conta:
Num telefone público costuma estar escrito:
1. Retirar o telefone do descanso
2. Esperar o sinal
3. Colocar o cartão
4 Marcar o número
4.
5. Falar ao telefone
6. Colocar o telefone no descanso
INTRODUÇÃO AOS ALGORITMOS
7
CET DPM – Algo
oritmos e Program
mação 2010-11 C
Celestino Gonçalves
Algoritmo
g
- Exemplos
CET DPM – Algo
oritmos e Program
mação 2010-11 C
Celestino Gonçalves
• A Algoritmia e a escrita de
pprogramas/resolução
g
ç de problemas
p
• Definição e Estrutura Global de um
Algoritmo
• Etapas-tipo
• Refinamentos
R fi
sucessivos
i
• Entrada-Processamento-Saída
• Outros exemplos:
U receita
Uma
it de
d culinária:
li á i
- Para fritar um ovo
- Para cozer batatas
- Para fazer um bolo de chocolate
-…
CET DPM – Algo
oritmos e Program
mação 2010-11 C
Celestino Gonçalves
Algoritmo
g
- Exemplos
CET DPM – Algo
oritmos e Program
mação 2010-11 C
Celestino Gonçalves
Algoritmo
g
- Exemplos
INTRODUÇÃO AOS ALGORITMOS
- Algoritmo para o fim-de-semana
- Algoritmo para descascar batatas
- Algoritmo para fazer uma prova escrita
-…
9
INTRODUÇÃO AOS ALGORITMOS
10
Programa
g
CET DPM – Algo
oritmos e Program
mação 2010-11 C
Celestino Gonçalves
Algoritmo
g
- Exemplos
CET DPM – Algo
oritmos e Program
mação 2010-11 C
Celestino Gonçalves
• Outros exemplos:
• Outros exemplos:
- Esquemas
E
de
d montagem
t
de
d aparelhos
lh
- Fórmulas resolventes
- Métodos numéricos
-…
INTRODUÇÃO AOS ALGORITMOS
11
• É um algoritmo escrito numa linguagem de
p
computador.
• É a tradução do algoritmo para a linguagem
do computador
O mais importante de um programa é a sua lógica,
lógica o
raciocínio utilizado para resolver o problema, ou seja, o
algoritmo
INTRODUÇÃO AOS ALGORITMOS
12
Algoritmia
g
e Programação
g
4 Etapas:
Resolver um problema usando o computador
INTRODUÇÃO AOS ALGORITMOS
CET DPM – Algo
oritmos e Program
mação 2010-11 C
Celestino Gonçalves
CET DPM – Algo
oritmos e Program
mação 2010-11 C
Celestino Gonçalves
Algoritmia
g
e Programação
g
Problema
Especificação
Identificar os dados,
resultados e relações
Problema
13
Algoritmo
Programa
Passos a seguir para
obter a solução
????
Computador
(Ferramentas)
INTRODUÇÃO AOS ALGORITMOS
14
Especificação
Especificação
EXCEL
BASIC
C
SCA MAPLE
SCA-MAPLE
Outra(s)
INTRODUÇÃO AOS ALGORITMOS
15
CET DPM – Algo
oritmos e Program
mação 2010-11 C
Celestino Gonçalves
CET DPM – Algo
oritmos e Program
mação 2010-11 C
Celestino Gonçalves
Problema
• Adaptação do problema à capacidade
p
ppara a sua resolução...
ç
disponível
• É necessário conhecer a “capacidade
capacidade
disponível”...
• Técnicas: decomposição e abstracção
INTRODUÇÃO AOS ALGORITMOS
16
Decomposição
CET DPM – Algo
oritmos e Program
mação 2010-11 C
Celestino Gonçalves
CET DPM – Algo
oritmos e Program
mação 2010-11 C
Celestino Gonçalves
Decomposição
• Identificação de “componentes”
independentes,
p
,p
partes do p
problema,, de
solução conhecida ou de tratamento mais
simples
p
• Se assim for,
for posso solucionar as
componentes, e pela resolução conjunta
solucionar o problema
INTRODUÇÃO AOS ALGORITMOS
Parte 1
Parte 2
Parte 3
Sol. 1
Sol. 2
Sol. 3
Solução
17
INTRODUÇÃO AOS ALGORITMOS
18
Problema - Exemplo
• Identificação das características-chave entre
problema e outro(s)
( ) jjá conhecido(s)
()
o novo p
ou já resolvido(s)
INTRODUÇÃO AOS ALGORITMOS
19
CET DPM – Algo
oritmos e Program
mação 2010-11 C
Celestino Gonçalves
Abstracção
CET DPM – Algo
oritmos e Program
mação 2010-11 C
Celestino Gonçalves
Problema
• Determine as raízes do seguinte Polinómio:
P2 ( x) = ax 2 + bx + c
• Seja P2=ax2+bx+c. Dados os valores de P2,
a,b e c, determine o valor de x
INTRODUÇÃO AOS ALGORITMOS
20
Conceitos...
Algoritmo, algoritmia
• Qualquer conjunto de símbolos e processos
de cálculo matemático
(Enciclopédia Luso-Brasileira)
• (...) operação ou processo de cálculo
INTRODUÇÃO AOS ALGORITMOS
CET DPM – Algo
oritmos e Program
mação 2010-11 C
Celestino Gonçalves
CET DPM – Algo
oritmos e Program
mação 2010-11 C
Celestino Gonçalves
Conceitos...
21
INTRODUÇÃO AOS ALGORITMOS
22
INTRODUÇÃO AOS ALGORITMOS
24
Propriedades
Processo Matemático
Processo Numérico
Processo Mecanizável
INTRODUÇÃO AOS ALGORITMOS
23
CET DPM – Algo
oritmos e Program
mação 2010-11 C
Celestino Gonçalves
CET DPM – Algo
oritmos e Program
mação 2010-11 C
Celestino Gonçalves
Conceitos...
Algoritmo
Algoritmo, algoritmia
• Conjunto de operações matemáticas
simples que, no seu todo, pela ordem
correcta constituem uma operação
correcta,
matemática complexa
• Conjunto de passos que é necessário
executar para chegar à solução de um dado
problema
• Passos realizáveis
• N.
N º finito de passos
• Eficiência
Download