Anda di halaman 1dari 31

Programação

Lógica e Sequência Lógica


Problemas e Algoritmos

Módulo 1
Programação e Sistemas de Informação Aulas 3 e 4
Lógica de Programação

• A lógica de programação é necessária para


pessoas que desejem trabalhar com o
desenvolvimento de programas.
• É a técnica de encadear pensamentos,
raciocinar com a finalidade de atingir
determinado objectivo.
Lógica de Programação
Sequência Lógica

• A sequência lógica pode ser descrita como


uma sequência de instruções, que devem ser
seguidas para se cumprir uma determinada
tarefa.
• São passos executados até se atingir um
objectivo ou solução de um problema
Sequência Lógica
Programar

• Programar consiste em…


Programar

programar
v. tr.
• 1. Dividir o problema entregue ao computador
ou ao calculador em instruções codificadas e
aceitáveis pela máquina.
• 2. Estabelecer o programa dum cinema, da
rádio, etc.
Fases da Programação
Definição do Problema

Planificação da Resolução • Programar não é um processo


& Estratégia de Abordagem
simples;
Implementação / • Envolve vários passos e fases,
Codificação
tendo que por vezes voltar a
Teste e depuração qualquer uma das anteriores
com vista a uma
Documentação implementação correcta de
uma aplicação.
Manutenção
Definição do Problema
Definição do Problema

Planificação da Resolução • O que se pretende resolver?


& Estratégia de Abordagem
• Tenho um enunciado
Implementação / completo?
Codificação
• Esclarecer todas as duvidas
Teste e depuração antes de passar para a fase
seguinte!
Documentação

Manutenção
Planificação da Resolução
Definição do Problema

Planificação da Resolução • Estrategicamente, pensar num


& Estratégia de Abordagem
meio de chegar à solução;
Implementação / • Encadear procedimentos e
Codificação
métodos, tendo em vista o
Teste e depuração objectivo final;
• Criar um plano de execução;
Documentação
• Surge aqui o conceito de
Algoritmo.
Manutenção
Codificação
Definição do Problema

Planificação da Resolução
• Um algoritmo completo e
& Estratégia de Abordagem adequado é a base para este
Implementação /
procedimento;
Codificação • Sem um algoritmo definido,
não vale a pena pensar em
Teste e depuração
realizar esta fase;
• Transposição do algoritmo
Documentação
para uma língua de
programação.
Manutenção
Teste
Definição do Problema

Planificação da Resolução • Após a obtenção do código do


& Estratégia de Abordagem
programa devemos testa-lo;
Implementação / • Prevendo a sua utilização e
Codificação
verificando se os resultados
Teste e depuração obtidos são os
adequados/esperados.
Documentação • Os testes deverão ser
intensivos.
Manutenção
Documentação (PAT)
Definição do Problema

Planificação da Resolução • A documentação pode ser


& Estratégia de Abordagem
destinada a:
Implementação / – Outros programadores;
Codificação
– Utilizadores.
Teste e depuração • Deve ser completa e objectiva,
nos dois casos.
Documentação
• É tão importante como o
programa em si!
Manutenção
Manutenção
Definição do Problema

Planificação da Resolução • Alterações;


& Estratégia de Abordagem
• Aperfeiçoamentos;
Implementação /
Codificação
• Cada vez mais, esta é uma das
fases mais importantes da
Teste e depuração programação, levando a um
maior dispêndio de tempo.
Documentação

Manutenção
Concepção Vs Implementação
Fase de Concepção Fase de Implementação

Algoritmo Programa

Sequência finita e ordenada de Conjunto de instruções


acções que conduzem à destinadas a serem
solução do Problema processadas num sistema
informático para realizar
alguma tarefa.

A separação entre algoritmo e programa, é importante tendo


em vista que devemos separar estas duas fases para que seja
possível conceber um algoritmo, deixando de lado os
detalhes relativos à sua implementação e utilização de uma
qualquer linguagem de programação.
Algoritmo

Definição:
• Conjunto finito de regras bem determinadas
para a resolução de um problema, através de
um número finito de operações.
Algoritmo

Trata-se então de:


• Sequencia finita e logicamente ordenada de
acções para se chegar à solução de um
problema;
• Um algoritmo não pode ser ambíguo, isto é,
qualquer que seja a pessoa a ler, a
interpretação terá de ser sempre a mesma.
Programa

Definição:
• Conjunto de instruções destinadas a serem
processadas num sistema informático.
Algoritmo Vs Programa

• O conceito de algoritmo é aplicável às mais


diversas áreas;
• O conceito de programa é aplicável apenas a
sistemas de processamento;
• Enquanto que um algoritmo é aplicável em
cenários práticos e teóricos (Da física,
matemática e quotidiano), um programa é
aplicável a computadores e outras unidades de
processamento, visando a execução dos
algoritmos.
Algoritmia

• Consiste na formulação de algoritmos,


separando-se em duas fases;
– Formulação do algoritmo;
– Implementação numa linguagem de programação
ou não.
• Um mesmo algoritmo pode ser convertido em
diferentes linguagens de programação.
Sequências de Acções

Sequência Linear de Acções. Sequências não Lineares de Acções.


Casos de programas mais Casos de programas com condições que controlam a execução do programa.
simples.
Exemplo de
Algoritmo Linear
• Procedimento de Trocar uma Lâmpada:
– Preparar um lâmpada Nova;
– Retirar a lâmpada Antiga;
– Colocar a Lâmpada Nova.

Exercício 1: Desenhar o esquema Linear no teu


caderno.
Exemplo de
Algoritmo Não Linear
• Procedimento de Trocar uma Lâmpada:
– Preparar um lâmpada Nova;
– Retirar a lâmpada Antiga;
– Colocar a Lâmpada Nova,
– Ligar o Interruptor para verificar se a lâmpada
acende;
– Se a lâmpada acender, podemos dizer que o
processo está concluído;
– Se não acender repetimos todos os passos acima.
Exercício 2: Desenhar o esquema Não Linear
Abordagem Top-Down
Exercício 1

• Relembrar e representar o diagrama que


representa as fases de execução de um
programa;
Exercício 2

• Nesse diagrama por vezes fará sentido voltar


atrás em algumas das fases.
• Acrescenta ao teu esquema, as setas que
representariam os pontos e para onde
deverias voltar atrás.
Exercício 3

• O que entendes por algoritmo?


Exercício 4

• Quais as diferenças entre algoritmo e


programa?
Exercício 5

• Formula um algoritmo que permita clarificar a


execução de cada um dos seguintes pontos:
– Mudar o pneu de um carro;
– Assistir um canal específico de televisão (SIC por
exemplo);
– Calcular a área de um quadrado.
Exercício 6

• Formula um problema complicado e explica


porque é útil a abordagem Top-Down nesse
tipo de problema.
– Fazer um curso;
– Construir uma casa;
– Construir um manual escolar;
– Entre outros…
Próxima Aula:

• Algoritmos em:
– Linguagem Informal e Formal;
– Fluxogramas.