O documento apresenta os fundamentos da construção de algoritmos e programas, incluindo a lógica, lógica de programação e algoritmos. Discute a arquitetura básica do computador, memória, dispositivos de entrada e saída. Explica o que é lógica, lógica de programação e como algoritmos representam o raciocínio lógico de forma estruturada através de uma sequência de passos.
Aula 01.3 - Fundamentos da Construção de Algoritmos e Programas
1. Fundamentos da
Construção de
Algoritmos e programas
Algoritmos e Lógica de Programação
Prof. Messias R. Batista - @mrafaelbatista
professor@mrafaelbatista.com.br - www.mrafaelbatista.com.br
2. Agenda
❏ Arquitetura básica do
computador
❏ Lógica
❏ Lógica de Programação
❏ Algoritmos
❏ Exercícios (homework)
❏ Lógica
❏ Lógica de Programação
❏ Algoritmos
❏ Exercícios (homework)
5. “A UCP (ou CPU da sigla em inglês, Central Processing Unit)
é um conjunto de dispositivos eletrônicos responsável pelas
operações de processamento referentes aos cálculos
lógicos e matemáticos”
Unidade Central de Processamento (UCP)
6. ❏ Unidade Aritmética e Lógica (UAL) responsável por realizar cálculos
matemáticos mais complexos de maneira mais rápida.
❏ Registradores Memória temporária para armazenar dados a serem
processados
❏ Unidade de Controle (UC) Controla o fluxo de dados na UCP: busca na
memória, chamadas da UAL, controle geral das tarefas da UCP.
❏ Relógio Gerador de pulsos que determinam um ciclo de tarefas da UCP. Em
cada ciclo (ou pulso) a UCP realiza uma tarefa, assim quanto maior a
frequência do relógio da UCP, mais tarefas esta pode realizar num mesmo
intervalo de tempo.
UCP | Composição
7. Memória
“A memória é o dispositivo responsável por armazenar
dados. Os vários tipos de memória no computador são
classificadas de maneira geral de acordo com a sua
capacidade de leitura, escrita e volatilidade”
8. Memória | RAM
“RAM sigla para memória de acesso aleatório, é uma
memória em que se pode ler e escrever, mas cujo conteúdo
é perdido uma vez que o computador é desligado. É a
memória principal do computador e a mais usada pelos
aplicativos e sistema operacional”
10. Memória | ROM
“ROM sigla para memória somente-leitura, como o nome diz
só é possível ler seu conteúdo, mas não alterá-lo. Não se
altera se o computador é desligado”
12. Memória | Secundária
“Secundária são dispositivos usados para armazenar
grandes quantidades de informação em caráter não volátil.
Na maioria das vezes é muito mais lenta que a RAM.
Exemplo são os discos rígidos”
14. Dispositivos de E/S (I/O)
“Os dispositivos de entrada e saída de dados (E/S) são de
suma importância pois qualquer informação que deva entrar
ou sair do computador será feita através deles. Dentre os
dispositivos de entrada podemos citar: teclado, mouse,
câmera, digitalizador”
19. Toda ave é um animal
Todo pássaro é uma ave
Portanto, todo pássaro é um animal
20. Todo nordestino é brasileiro
João é nordestino
Portanto, João é brasileiro
21. Lógica
A lógica objetiva “o estudo de técnica de
formalização, dedução e análise que permitam
verificar a validade de argumentos”
Mas, o encadeamento lógico pode desenvolver
uma sentença válida ou não.
27. Conceito
[Lógica de Programação] “significa o uso correto
das leis do pensamento, da ‘ordem da razão’ e de
processos de raciocínio e simbolização formais na
programação de computadores…”
28. Características
❏ Raciocínio abstrato e intangível
❏ Seres humanos são capazes de expressá-lo
❏ Utilizam-se das várias linguagens e suas convenções
❏ Uma mente treinada desenvolve lógica de programação
❏ É possível representar o pensamento em linguagens de
programação
30. “O objetivo principal
do estudo da lógica de
programação é a
construção de
algoritmos coerentes
e válidos”
31. “Um algoritmo pode
ser definido como
uma sequência de
passos que visam a
atingir um objetivo
bem definido”
32. Algoritmos
❏ Pensar especificando uma sequência de passos
❏ Utiliza-se uma ordem de passos, lógica
❏ Exemplo comum: uma receita de bolo
❏ Algoritmos devem apresentar ações claras e precisas
❏ Algoritmos fixam um padrão de comportamento
33. Algoritmos Eficientes | Características
❏ Definir ações simples e sem ambiguidade;
❏ Organizar as ações de forma ordenada;
❏ Estabelecer as ações dentro de uma sequência finita de
passos.
34. O que faz um Algoritmo?
❏ Ler e escrever dados;
❏ Avaliar expressões algébricas, relacionais e lógicas;
❏ Tomar decisões com base nos resultados das
expressões avaliadas;
❏ Repetir um conjunto de ações de acordo com uma
condição;
35. Exemplo
Algoritmo 1 Troca de pneu do carro.
1. desligar o carro
2. pegar as ferramentas (chave e macaco)
3. pegar o estepe
4. suspender o carro com o macaco
5. desenroscar os 4 parafusos do pneu furado
6. colocar o estepe
7. enroscar os 4 parafusos
8. baixar o carro com o macaco
9. guardar as ferramentas
37. “Um algoritmo tem por objetivo representar
mais fielmente o raciocínio envolvido na
Lógica de Programação e, dessa forma,
permite-nos abstrair de uma série de
detalhes computacionais, que podem ser
acrescentados mais tarde”
38. Trocar a
lâmpada
1. Pegar uma escada;
2. Posicionar a escada
embaixo da lâmpada;
3. Buscar uma lâmpada nova;
4. Subir na escada;
5. Retirar a lâmpada velha;
6. Colocar a lâmpada nova.
39. Trocar a lâmpada de forma robusta
1. Acionar o interruptor;
2. Se a lâmpada não acender, então:
a. Pegar uma escada;
b. Posicionar a escada embaixo da lâmpada;
c. Buscar uma lâmpada nova;
d. Subir na escada;
e. Retirar a lâmpada velha;
f. Colocar a lâmpada nova.
40. Não podemos esquecer...
❏ Passos sequenciais bem definidos;
❏ Pode haver estruturas de controle ou repetição;
❏ Pode haver estruturas de limitação ou stop da execução;
43. Fundamentos da
Construção de
Algoritmos e programas
Algoritmos e Lógica de Programação
Prof. Messias R. Batista - @mrafaelbatista
professor@mrafaelbatista.com.br - www.mrafaelbatista.com.br