MINISTÉRIO DA EDUCAÇÃO
SECRETARIA DE EDUCAÇÃO PROFISSIONAL E TECNOLÓGICA
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
CAMPUS SÃO JOSÉ – SANTA CATARINA
Lógica de Programação
Módulo II
Prof. Tiago Semprebom
[email protected]
www.sj.ifsc.edu.br/~tisemp
Lógica de Programação
Resolução de problemas utilizando computador
• Computador: ferramenta para processamento automático de
dados
• Processamento de dados: atividade que transforme dados
de entrada em dados de saída (resultados)
Lógica de Programação
Etapas para a resolução de problemas:
i)
ii)
iii)
iv)
Entendimento do problema
Modelagem do problema em uma sequência de operações
que, quando executadas, fornecem sua solução
Execução desta sequência de operações
Verificação da adequação da solução
Obs:
etapas i), ii) e iv) feitas por pessoas, e etapa iii) feita por
computadores.
Lógica de Programação
Programação:
•
Planejamento, projeto, escrita e testes de instruções a serem
executadas por computadores.
•
Há formas diferentes de modelar um problema:
–
–
Modelagem: representação do problema, a qual captura seus
aspectos essenciais.
Um programa é um modelo do problema, porém de tratamento
usualmente complexo.
Há diferentes métodos para se chegar a um programa, usando-se
modelos intermediários.
Abordagem elementar: decompor o problema em partes menores.
Lógica de Programação
Programação:
Dividindo a programação em fases distintas:
Lógica de Programação
Algoritmos computacionais:
•
Algoritmo é uma sequência de instruções, que devem ser
entendidas e realizadas:
•
Computador oferece um conjunto limitado de instruções
•
Algoritmo deve usá-las para modelar e resolver o problema.
Ou seja, algoritmo deve ser expresso usando essas
instruções.
Dois conceitos básicos são usados para construir algoritmos:
–
–
Estruturas de dados: para manipular os dados.
Estruturas de controle: para manipular as ações.
Lógica de Programação
Algoritmos computacionais:
De forma geral, as diretrizes para sua construção são:
1.
2.
3.
4.
5.
6.
7.
Identificação do problema: o que se quer resolver e o objetivo a ser
atingido
Identificação das entradas de dados
Identificação das saídas de dados (resultados)
Identificação das regras e limitações do problema (requisitos funcionas).
Determinação de como transformar as entradas em saídas:
5.1 Sequência de ações
Construção do algoritmo
Teste da solução
Lógica de Programação
Algoritmos computacionais: exemplo
• Deve-se calcular a média final de alunos. Estes realizarão 4
provas: P1, P2, P3 e P4. A média final é calculada por:
(P1 + P2 + P3 + P4) / 4
a) Quais são os dados de entrada?
b) Quais são os dados de saída?
c) Qual é o processamento a ser utilizado?
Lógica de Programação
Descrição do algoritmo:
Descrição narrativa: especificação dos passos em linguagem natural
–
–
Linguagem natural comumente se mostra imprecisa e redundante
Utilização mais adequada para inserir comentários que expliquem
detalhes do algoritmo
1.
2.
3.
4.
5.
6.
Receba a nota da prova 1
Receba a nota da prova 2
Receba a nota da prova 3
Receba a nota da prova 4
Some todas as notas e divida por 4
Mostre o resultado da divisão
Lógica de Programação
Descrição de algoritmos
• Descrição com diagrama de blocos (ex: fluxograma)
– Uso de instruções gráficas para representar as ações.
– Útil para mostrar o fluxo de execução e a sequência de passos
Porém problemas complexos podem gerar diagramas poluídos
Lógica de Programação
• Descrição de diagrama de blocos
– Símbolos elementares usados em fluxogramas:
Lógica de Programação
Descrição com diagrama de blocos
Exemplo do cálculo da média final:
Lógica de Programação
Pseudo-linguagem:
– Linguagem simplificada de programação (ex, Portugol)
– Usa regras claras para as sentenças, com palavras-chaves,
indentação, apenas uma instrução por linha, e símbolo para
representar final de um passo (ex: “;”)
Lógica de Programação
Teste de mesa:
• Um algoritmo deve poder ser testado
• O teste deve verificar o resultado do algoritmo para
determinados dados de entrada representativos
• No teste se executam as instruções do algoritmo
No exemplo da média final, podem-se fornecer
notas de provas e verificar as médias resultantes.
Lógica de Programação
• Teste de Mesa
– Exemplo da média final;
Lógica de Programação
• Exercícios:
• 1) Faça um algoritmo para calcular o estoque médio de uma peça,
sendo que EstoqueMédio = (QuantidadeMínima +
QuantidadeMáxima) / 2. Aponte os dados de entrada e de saída.
• 2) Teste o algoritmo anterior com dados por você fornecidos.
• 3) Faça um algoritmo que verifique se uma operação sobre um
arquivo (leitura, escrita, ou execução) pode ser realizada. Considere
o sistema de permissões do Linux. Quais são os dados de entrada
e de saída ?
• 4) Teste o algoritmo anterior com dados por você fornecidos.
Lógica de Programação
•
Exercícios:
•
5. Faça um algoritmo que leia a cotação do dólar, leia um valor em
dólares e mostra o valor correspondente em reais.
•
6. Faça um algoritmo que leia quatro números, calcule o
quadrado de cada um deles, some-os e mostre o resultado.
•
7. Construa um algoritmo para calcular a comissão de 5%
dada a vendedores de peças, usando os seguintes dados:
identificação do vendedor,
código da peça,
preço unitário da
peça e quantidade de peças vendidas.
Faça um teste de mesa de seu algoritmo.
Lógica de Programação
• Exercícios:
• 8. Calcular a quantidade dinheiro gasta por um fumante. Dados: o
número de anos que ele fuma, o nº de cigarros fumados por dia e o
preço de uma carteira.
• 9. Ler dois números inteiros, x e y, e imprimir o quociente e o resto
da divisão inteira entre eles.
• 10. Calcular a média final dadas as notas das 3 provas e produzir
uma saída com a média.
Download

logica2 - Campus São José