MINISTRIO DA EDUCAO SECRETARIA DE EDUCAO PROFISSIONAL E

  • Slides: 18
Download presentation
MINISTÉRIO DA EDUCAÇÃO SECRETARIA DE EDUCAÇÃO PROFISSIONAL E TECNOLÓGICA INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA

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 tisemp@sj. ifsc. edu. br www. sj. ifsc. edu. br/~tisemp

Lógica de Programação Resolução de problemas utilizando computador • Computador: ferramenta para processamento automático

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) iii) iv) Entendimento do

Lógica de Programação Etapas para a resolução de problemas: i) 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: • Planejamento, projeto, escrita e testes de instruções a serem executadas

Lógica de 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: Dividindo a programação em fases distintas:

Lógica de 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

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:

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.

Lógica de Programação Algoritmos computacionais: exemplo • Deve-se calcular a média final de alunos. Estes realizarão 4 provas: P 1, P 2, P 3 e P 4. A média final é calculada por: (P 1 + P 2 + P 3 + P 4) / 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

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)

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

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 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

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 •

Lógica de Programação Teste de mesa: • Um algoritmo deve poder ser testado • O teste deve verificar o resultado do algoritmo para determinados 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 • Teste de Mesa – Exemplo da média final;

Lógica de Programação • Exercícios: • 1) Faça um algoritmo para calcular o estoque

Lógica de Programação • Exercícios: • 1) Faça um algoritmo para calcular o estoque médio de uma peça, sendo que Estoque. Médio = (Quantidade. Mínima + Quantidade. Má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 1. Exercícios: 1. 5. Faça um algoritmo que leia a cotação

Lógica de Programação 1. Exercícios: 1. 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. 2. 6. Faça um algoritmo que leia quatro números, calcule o quadrado de cada um deles, some-os e mostre o resultado. 1. 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

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.