programação de computadores

14
Programação I Programação de Computadores e Algoritmos 18/08/2011

Upload: carlos-wagner-costa

Post on 10-Jul-2015

189 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Programação de computadores

Programação I

Programação de Computadores e Algoritmos18/08/2011

Page 2: Programação de computadores

Programação de Computadores

● Métodos, técnicas e procedimentos em computação para elaboração de programas de computador;

● É considerado arte por necessitar de profundo conhecimento dos equipamentos a serem programados;

● A Programação estruturada foi disseminada ajudando a criar bons programas, fáceis de serem entendidos por outros programadores.

Page 3: Programação de computadores

Programação de Computadores

● As modernas linguagens de programação “escondem” os detalhes do equipamento para facilitar o acesso aos recursos computacionais;

● Programar computadores requer muito mais conhecimento do problema a ser resolvido do que necessariamente da linguagem a ser usada pelo programador.

Page 4: Programação de computadores

Algoritmos e Programação

● “Algoritmo é uma sequência ordenada e finita de etapas, cuja execução passo a passo resolve um determinado problema”

Vilarin, Gilvan

● “... pode ser entendido como uma descrição textual de uma solução para um determinado problema. Ele descreve um processo em termos de outros processos básicos previamente definidos.”

Alves, Willian Pereira

Page 5: Programação de computadores

Lógica

● Surgiu na Grécia antiga;● Baseada em Matemática e Filosofia● Aristóteles é considerador o pai da lógica

clássica:● Lei da não contradição: uma afirmação

não pode ser falsa e verdadeira ao mesmo tempo;

● Lei do terceiro excluído: “P” ou “não-P” é verdadeira

Page 6: Programação de computadores

Lógica

Baseado em premissas e conclusão:● Premissas:

● Todos os homens são mortais● Sócrates é homem

● Conclusão● Logo, Sócrates é mortal

Page 7: Programação de computadores

Lógica (ou álgebra) Booleana

● Definida por George Boole, matemático inglês. Tem as seguintes propriedades:

● Seja um conjunto A, as operações E (∧), OU (∨) , NÃO (¬) e um elemento a de A, só pode ter os seguintes valores:

● Falso ou 0● Verdadeiro ou 1

Page 8: Programação de computadores

Lógica (ou álgebra) Booleana

● Limitado inferiormente: Existe um elemento 0, tal que a ∨ 0 = a;

● Limitado superiormente: Existe um elemento 1, tal que a ∧ 1 = 1;

● Lei Distributiva: Para quaisquer a, b, c ⊂ A ,

(a ∨ b) ∧ c = (a ∧ c) ∨ (b ∧ c)

● Lei do Complemento: Para qualquer a ⊂ A existe ¬a em A, tal que:

a ∨ ¬a = 1 e a ∧ ¬ a = 0

Page 9: Programação de computadores

Tabelas da verdade

a b a ∨ b0 0 0

0 1 1

1 0 1

1 1 1

a b a ∧ b0 0 0

0 1 0

1 0 0

1 1 1

a ¬a0 0

0 1

Page 10: Programação de computadores

Escrito ou Gráfico

● Em forma de texto:

Abrir os olhos

Levantar da cama

Escovar os dentes

…● Em forma de Gráfico:

Início

Abrir os olhos

Levantar da cama

Escovar os dentes

Fim

Page 11: Programação de computadores

Fluxograma (Diagrama de Blocos)

● Representação gráfica de algoritmos;● Cada símbolo tem um significado;

Terminador Definiçãode dados

Entradade dadosmanual

Processamentoou cálculos

Impressão Fitaperfurada

Dadosarmazenados

Tomadade

decisão

sub-rotina Exibição

Page 12: Programação de computadores

Dia – www.dia.org

Page 13: Programação de computadores

Mais Álgebra de Boole

● A álgebra booleana é a base teórica para a construção da lógica computacional pois sua definição é muito similar ao funcionamento dos circuitos eletrônicos:

● Falso = 0 = desligado● Verdadeiro = 1 = ligado

● As operações da lógica/álgebra booleana são “implementadas” em circuitos lógicos, construídos à base de semicondutores.

Page 14: Programação de computadores

Mais Álgebra de Boole

● Os circuitos lógicos têm como partes integrantes “portas” lógicas, conjuntos de transístores e diodos, construídos sobre bases de silício