Lgica de Programao Significa o uso correto das

  • Slides: 24
Download presentation
Lógica de Programação Significa o uso correto das leis do pensamento e de processos

Lógica de Programação Significa o uso correto das leis do pensamento e de processos de raciocínio para a produção de soluções logicamente válidas e coerentes, que resolvam com qualidade os problemas que se deseja programar. Pode ser representada em qualquer uma das linguagens de programação algoritmos. ICC - 2ª Aula – LÓGICA PROGRAMAÇÃO 1

PROBLEMA Foram compradas 30 canetas iguais, e pagas com uma nota de R$ 100,

PROBLEMA Foram compradas 30 canetas iguais, e pagas com uma nota de R$ 100, obtendo-se R$ 67, 00 como troco. Quanto custou cada caneta? Supondo: X custo de cada caneta gastei: 30 X gastei + troco = 100 30 X + 67 = 100 30 X = 100 – 67 30 X = 33 / 30 = 1, 10 R$ 1, 10 Em termos de variáveis: N = número de canetas Z = nota (valor) utilizado para pagar Y = troco X = (Z – Y) / N 2

Ø Algoritmo: é uma sequência ordenada e sem ambiguidade de passos que visam atingir

Ø Algoritmo: é uma sequência ordenada e sem ambiguidade de passos que visam atingir um objetivo bem definido e, consequentemente levam à solução de um problema. Ø Programação: é responsável pela instrução do computador, do que e de como um problema deve ser resolvido. 3

Por que construir um algoritmo? Representar mais fielmente o raciocínio envolvido na Lógicas de

Por que construir um algoritmo? Representar mais fielmente o raciocínio envolvido na Lógicas de Programação. Não leva em consideração detalhes da ling. de programação. TRADUÇÃO PARA QUALQUER LING. PROGR.

Em um algoritmo é importante salientarmos: Ø Deve descrever exatamente quais são e em

Em um algoritmo é importante salientarmos: Ø Deve descrever exatamente quais são e em que sequência as instruções devem ser executadas; Ø A ordem dos passos deve ser precisamente determinada; Ø Eficiente: resolve o problema com o mínimo de recursos; Ø Eficaz: consegue resolver o problema em qualquer situação. Todas as situações de exceção que possam alterar o comportamento do algoritmo devem ser especificadas e tratadas. 5 5

Existem várias formas para representar os algoritmos, como por exemplo: descrição narrativa, fluxograma ou

Existem várias formas para representar os algoritmos, como por exemplo: descrição narrativa, fluxograma ou diagrama de blocos, pseudocódigo etc. 6

Como Construir um Algoritmo 7

Como Construir um Algoritmo 7

DICAS: 1) Não decorar as soluções. 2) ENTENDER o problema. 3) Utilizar: analogia, generalização

DICAS: 1) Não decorar as soluções. 2) ENTENDER o problema. 3) Utilizar: analogia, generalização ou especialização. 4) Aproveitar partes dos problemas. 5) Não existe “FÓRMULA MÁGICA”.

Treinando seu Cérebro 1) O painel do meio no centro do alvo não tem

Treinando seu Cérebro 1) O painel do meio no centro do alvo não tem número. O que o X representa? 12 10 7 21 X 10 30 22 13 12 10 7 21 16 10 30 22 13 9

Treinando seu Cérebro 2) Ao contrário Para a direita sou a espada que fere;

Treinando seu Cérebro 2) Ao contrário Para a direita sou a espada que fere; para a esquerda sou a fera que é ferida. Que palavra sou eu? Ao contrário Lâmina/Animal 10

Treinando seu Cérebro 1) Que nº dá o mesmo resultado quando dividido por -6

Treinando seu Cérebro 1) Que nº dá o mesmo resultado quando dividido por -6 ou subtraído de -6? Temos: x / (-6) = (-6) – x x = 36 + 6 x Assim: -5 x = 36, logo x = -7, 2 2) Que dois símbolos matemáticos (+, -, *, /) você deve colocar nesta conta para obter 57? 76 ? 15 ? 20 = 57 76 * 15 / 20 = 57 11

Treinando seu Cérebro 3) A soma do quadrado de dois números consecutivos é 1861.

Treinando seu Cérebro 3) A soma do quadrado de dois números consecutivos é 1861. Quais são os dois números? x 2 + (x + 1)2 = 1861 resposta: 30 e 31 12

Exemplos: a) algoritmo do tipo descrição narrativa para somar 3 números. b) algoritmo do

Exemplos: a) algoritmo do tipo descrição narrativa para somar 3 números. b) algoritmo do tipo descrição narrativa para sacar dinheiro em um Banco 24 h.

Exemplo: algoritmo do tipo descrição narrativa para trocar uma lâmpada queimada. 1 – Remova

Exemplo: algoritmo do tipo descrição narrativa para trocar uma lâmpada queimada. 1 – Remova a lâmpada queimada. 2 – Coloque uma nova lâmpada. 14

Detalhando ou refinando os passos: 1. 1 – Coloque uma escada embaixo da lâmpada

Detalhando ou refinando os passos: 1. 1 – Coloque uma escada embaixo da lâmpada queimada. 1. 2 – Suba na escada até alcançar a lâmpada queimada. 1. 3 – Gire a lâmpada queimada no sentido antihorário até que ela se solte. 2. 1 – Escolha uma lâmpada nova de mesma potência/voltagem da queimada. 2. 2 – Posicione a lâmpada nova no soquete. 2. 3 – Gire a lâmpada no sentido horário, até que ela se firme. 2. 4 – Desça da escada. 2. 5 – Guarde a escada. 15

Ordenando os passos, temos: 1 - Coloque uma escada embaixo da lâmpada queimada. 2

Ordenando os passos, temos: 1 - Coloque uma escada embaixo da lâmpada queimada. 2 - Escolha uma lâmpada nova de mesma potência/voltagem da queimada. 3 - Suba na escada até alcançar a lâmpada queimada. 4 - Gire a lâmpada queimada no sentido anti-horário até que ela se solte. 5 - Posicione a lâmpada nova no soquete. 6 - Gire a lâmpada no sentido horário, até que ela se firme. 7 - Desça da escada. 8 - Guarde a escada. 16

Vamos agora, fazer uma suposição: e se a lâmpada não estiver queimada? Estrutura Condicional

Vamos agora, fazer uma suposição: e se a lâmpada não estiver queimada? Estrutura Condicional ou de Decisão (seleção) SE condição ENTÃO comando 1 comando 2 comandon SENÃO comando 3 comando 4 comandon 17

1 – Acionar o interruptor. 2 – SE a lâmpada NÃO acender 3 -

1 – Acionar o interruptor. 2 – SE a lâmpada NÃO acender 3 - ENTÃO Acionar o interruptor 18

Estrutura de Repetição ENQUANTO condição FAÇA comando 1 comando 2 comandon 19

Estrutura de Repetição ENQUANTO condição FAÇA comando 1 comando 2 comandon 19

1 – Acionar o interruptor. 2 – SE a lâmpada NÃO acender 3 -

1 – Acionar o interruptor. 2 – SE a lâmpada NÃO acender 3 - ENTÃO Acionar o interruptor 4 Coloque uma escada embaixo da lâmpada queimada. 5 Escolha uma lâmpada nova. 6 ENQUANTO a potência/volt. não for a mesma da queimada FAÇA 7 Descarte a lâmpada escolhida 8 Escolha outra lâmpada 9 Suba um degrau da escada 20

10 11 12 13 14 15 16 17 18 19 20 - ENQUANTO não

10 11 12 13 14 15 16 17 18 19 20 - ENQUANTO não possa alcançar a lâmpada queimada FAÇA Suba um degrau da escada. Gire a lâmpada queimada no sentido antihorário. ENQUANTO a lâmpada não estiver livre do soquete FAÇA Gire a lâmpada queimada no sentido anti-horário. Posicione a lâmpada nova no soquete. Gire a lâmpada no sentido horário. ENQUANTO a lâmpada não estiver firme no soquete FAÇA Gire a lâmpada no sentido horário. Desça da escada. Guarde a escada. 21

Exercícios 1 - Faça um algoritmo (Descrição Narrativa) para realizar a troca de um

Exercícios 1 - Faça um algoritmo (Descrição Narrativa) para realizar a troca de um pneu furado. Utilizar estrutura de decisão e de repetição. Considere as seguintes situações: Ø qualquer pneu; Ø qualquer pneu, porém verificar se o pneu reserva está em condições de uso; Ø verificar se tem algum pneu furado; se houver, verificar o pneu reserva e então, trocar o pneu. 22

2 - Faça um algoritmo (Descrição Narrativa) para fazer uma ligação telefônica de um

2 - Faça um algoritmo (Descrição Narrativa) para fazer uma ligação telefônica de um telefone público a cartão. Utilizar estrutura de decisão e de repetição. Verificar se o cartão tem unidades disponíveis. ü ligação local ü ligação a cobrar ü verificar se o telefone está funcionando e depois fazer a ligação local. 23

3 - Elabore um algoritmo (Descrição Narrativa) que mova três discos de uma Torre

3 - Elabore um algoritmo (Descrição Narrativa) que mova três discos de uma Torre de Hanói, que consiste em três hastes (a, b, c), uma das quais serve de suporte para três discos de tamanhos diferentes (1 - 2 - 3), os menores sobre os maiores. Pode-se mover um disco de cada vez para qualquer haste, contanto que nunca seja colocado um disco maior sobre um menor. O objetivo é transferir os três discos para outra haste. 24