Lógica de Programação Módulo II

18
Lógica de Programação Módulo II 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 Prof. Tiago Semprebom [email protected] www.sj.ifsc.edu.br/~tisemp

description

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. - PowerPoint PPT Presentation

Transcript of Lógica de Programação Módulo II

Page 1: Lógica de Programação Módulo II

Lógica de ProgramaçãoMódulo II

MINISTÉRIO DA EDUCAÇÃOSECRETARIA DE EDUCAÇÃO PROFISSIONAL E TECNOLÓGICAINSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIACAMPUS SÃO JOSÉ – SANTA CATARINA

Prof. Tiago Semprebom

[email protected]/~tisemp

Page 2: Lógica de Programação Módulo II

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)

Page 3: Lógica de Programação Módulo II

Lógica de Programação

Etapas para a resolução de problemas:

i) Entendimento do problemaii) Modelagem do problema em uma sequência de operações

que, quando executadas, fornecem sua soluçãoiii) Execução desta sequência de operaçõesiv) Verificação da adequação da solução

Obs:etapas i), ii) e iv) feitas por pessoas, e etapa iii) feita por computadores.

Page 4: Lógica de Programação Módulo II

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.

Page 5: Lógica de Programação Módulo II

Lógica de Programação

Programação:Dividindo a programação em fases distintas:

Page 6: Lógica de Programação Módulo II

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.

Page 7: Lógica de Programação Módulo II

Lógica de Programação

Algoritmos computacionais:

De forma geral, as diretrizes para sua construção são:

1. Identificação do problema: o que se quer resolver e o objetivo a ser atingido

2. Identificação das entradas de dados3. Identificação das saídas de dados (resultados)4. Identificação das regras e limitações do problema (requisitos funcionas).5. Determinação de como transformar as entradas em saídas:

5.1 Sequência de ações6. Construção do algoritmo7. Teste da solução

Page 8: Lógica de Programação Módulo II

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?

Page 9: Lógica de Programação Módulo II

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. Receba a nota da prova 12. Receba a nota da prova 23. Receba a nota da prova 34. Receba a nota da prova 45. Some todas as notas e divida por 46. Mostre o resultado da divisão

Page 10: Lógica de Programação Módulo II

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

Page 11: Lógica de Programação Módulo II

Lógica de Programação

• Descrição de diagrama de blocos – Símbolos elementares usados em fluxogramas:

Page 12: Lógica de Programação Módulo II

Lógica de Programação

Descrição com diagrama de blocos

Exemplo do cálculo da média final:

Page 13: Lógica de Programação Módulo II

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: “;”)

Page 14: Lógica de Programação Módulo II

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.

Page 15: Lógica de Programação Módulo II

Lógica de Programação

• Teste de Mesa– Exemplo da média final;

Page 16: Lógica de Programação Módulo II

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 umarquivo (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.

Page 17: Lógica de Programação Módulo II

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 oquadrado 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 dapeça e quantidade de peças vendidas.

Faça um teste de mesa de seu algoritmo.

Page 18: Lógica de Programação Módulo II

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.