Técnicas de Programação
Prof. Thiago Nelson
Definições Básicas
2
 Lógica – raciocínio capaz de conduzir a uma
determinada conclusão ou uma particular tomada de
decisão.
 Algoritmo – Seqüência de instruções cuja execução
resulta na realização de uma determinada tarefa. A
ordem das instruções e as tomadas de decisões
obedecem a uma particular lógica.
 Programa – Conjunto de instruções legíveis para o
computador tornar possível a realização de tarefas.
PROGRAMA = LÓGICA + ALGORITMO
Lógica
3
 Lógica depende do conhecimento e domínio sobre o
pensamento. Lógica é a ciência que estuda as leis e
critérios de validade que regem o pensamento e as
decisões, ou seja, ciência dos princípios formais do
raciocínio
Uso da Lógica Aplicada à Informática
4
 É através do raciocínio lógico que o homem constrói
algoritmos que podem ser transformados em programas
de computador capazes de solucionar problemas cada vez
mais complexos. É justamente esse assunto que será
tratado na disciplina.
Algoritmos
5
 Executamos diversos algoritmos em nosso dia-a-dia:
 Receita de Bolo;
 Leve ao forno previamente aquecido
 Bata as claras até ficarem em ponto de neve, etc.
 Banho;
 Troca de uma lâmpada;
 Ida ao trabalho;
 etc.
Algoritmos
6
 Exemplo de um algoritmo para a troca de uma lâmpada.
Início
- pegue uma escada;
- coloque-a embaixo da lâmpada;
- busque uma lâmpada nova;
- suba na escada com a lâmpada nova;
- retire a lâmpada velha;
- coloque a lâmpada nova;
- desça da escada.
Fim
Algoritmos
7
 Exercício:
 Descreva um algoritmo para a troca de pneu de um carro
A execução de um algoritmo
8
 O conjunto de elementos que interagem para a execução
de um algoritmo é chamado de processador, enquanto
que o algoritmo em execução é chamado de processo.
No exemplo da receita de bolo o processador seria o
conjunto constituído das panelas, do forno e da
cozinheira. Naturalmente, o resultado do processo
depende dos elementos que compõem o processador.
A execução de um algoritmo
9
 Evidentemente, o processador deve ser capaz de executar
as instruções do algoritmo e o processo deverá parar em
algum instante para que se tenha a realização da tarefa
pretendida. Para que estas duas condições sejam
satisfeitas é necessário que um algoritmo satisfaça às
seguintes exigências:
A execução de um algoritmo
10
1. As instruções devem ser claras e não devem conter
ambigüidades (várias interpretações), nem qualquer coisa
que impeça sua execução pelo processador.
2. Não pode haver dubiedade (incerteza) em relação à
próxima ação a ser realizada após a execução de uma
determinada instrução.
3. Todas as instruções devem ser executadas num tempo
finito.
Lógica de Programação
11
• Na disciplina de lógica de programação estamos interessados em
desenvolver algoritmos para resolver problemas. Queremos
aprender a, dado um problema, desenvolver uma sequência de
instruções para um processador tal que, fornecidos os dados de
entrada, a execução da seqüência de instruções redunde como
saída a solução do problema. O raciocínio que visa o
desenvolvimento de algoritmos é chamado lógica de programação.
Lógica de Programação
12
• Por exemplo, imagine o seguinte problema. Um senhor,
bastante gordo, está numa das margens de um rio com uma
raposa, uma dúzia de galinhas e um saco de milho. O senhor
pretende atravessar o rio com suas cargas, num barco que,
infelizmente, só comporta o senhor e uma das cargas.
Evidentemente, o senhor não pode deixar em uma das
margem, sozinhos, a raposa e a galinha, nem a galinha e o
milho.A questão é escrever um algoritmo que oriente o
senhor a realizar o seu intento. Naturalmente, na primeira
viagem ele não pode levar a raposa (neste caso, as galinhas
comeriam o milho), nem o milho (caso em que, a raposa
devoraria as galinhas).
Lógica de Programação
13
 Resposta.
1. Atravessar as galinhas
2. Retornar sozinho
3. Atravessar a raposa
4. Retornar com as galinhas
5. Atravessar o milho
6. Retornar sozinho
7. Atravessar as galinhas.
Lógica de Programação
14
 Exemplo 2. Algoritmo para calcular a média aritmética de
vários números dados. Resposta.
1. Determinar a quantidade de números.
2. Some os números dados.
3. Divida esta soma pela quantidade de
números.
Lógica de Programação
15
– Exemplo 3. Algoritmo para calcular as raízes de uma
equação do segundo grau.
1. Digite e leia os coeficientes da equação a, b e c.
2. Calcule d=b2 – 4ac.
3. Se d<0 forneça como resposta a mensagem: A equação não
possui raízes reais.
4. Se d0
1. Calcule x’ = (-b + raiz (d)) /2a
2. Calcule x’’ = (b + raiz (d)) /2a
3. Forneça x’ e x’’ como raízes da equação.
Lógica de Programação
16
• Exemplo 4.Analise e descreva uma maneira de mover os
discos do pino A para o pino C, mantendo a mesma
ordem. Em hipótese nenhuma um disco maior poderá
ficar sobre um menor. Para que um disco seja movido de
A para C, deve-se passar pelo pino B e vice-versa.
Gráfico Comparativo
17

01 conceitos

  • 1.
  • 2.
    Definições Básicas 2  Lógica– raciocínio capaz de conduzir a uma determinada conclusão ou uma particular tomada de decisão.  Algoritmo – Seqüência de instruções cuja execução resulta na realização de uma determinada tarefa. A ordem das instruções e as tomadas de decisões obedecem a uma particular lógica.  Programa – Conjunto de instruções legíveis para o computador tornar possível a realização de tarefas. PROGRAMA = LÓGICA + ALGORITMO
  • 3.
    Lógica 3  Lógica dependedo conhecimento e domínio sobre o pensamento. Lógica é a ciência que estuda as leis e critérios de validade que regem o pensamento e as decisões, ou seja, ciência dos princípios formais do raciocínio
  • 4.
    Uso da LógicaAplicada à Informática 4  É através do raciocínio lógico que o homem constrói algoritmos que podem ser transformados em programas de computador capazes de solucionar problemas cada vez mais complexos. É justamente esse assunto que será tratado na disciplina.
  • 5.
    Algoritmos 5  Executamos diversosalgoritmos em nosso dia-a-dia:  Receita de Bolo;  Leve ao forno previamente aquecido  Bata as claras até ficarem em ponto de neve, etc.  Banho;  Troca de uma lâmpada;  Ida ao trabalho;  etc.
  • 6.
    Algoritmos 6  Exemplo deum algoritmo para a troca de uma lâmpada. Início - pegue uma escada; - coloque-a embaixo da lâmpada; - busque uma lâmpada nova; - suba na escada com a lâmpada nova; - retire a lâmpada velha; - coloque a lâmpada nova; - desça da escada. Fim
  • 7.
    Algoritmos 7  Exercício:  Descrevaum algoritmo para a troca de pneu de um carro
  • 8.
    A execução deum algoritmo 8  O conjunto de elementos que interagem para a execução de um algoritmo é chamado de processador, enquanto que o algoritmo em execução é chamado de processo. No exemplo da receita de bolo o processador seria o conjunto constituído das panelas, do forno e da cozinheira. Naturalmente, o resultado do processo depende dos elementos que compõem o processador.
  • 9.
    A execução deum algoritmo 9  Evidentemente, o processador deve ser capaz de executar as instruções do algoritmo e o processo deverá parar em algum instante para que se tenha a realização da tarefa pretendida. Para que estas duas condições sejam satisfeitas é necessário que um algoritmo satisfaça às seguintes exigências:
  • 10.
    A execução deum algoritmo 10 1. As instruções devem ser claras e não devem conter ambigüidades (várias interpretações), nem qualquer coisa que impeça sua execução pelo processador. 2. Não pode haver dubiedade (incerteza) em relação à próxima ação a ser realizada após a execução de uma determinada instrução. 3. Todas as instruções devem ser executadas num tempo finito.
  • 11.
    Lógica de Programação 11 •Na disciplina de lógica de programação estamos interessados em desenvolver algoritmos para resolver problemas. Queremos aprender a, dado um problema, desenvolver uma sequência de instruções para um processador tal que, fornecidos os dados de entrada, a execução da seqüência de instruções redunde como saída a solução do problema. O raciocínio que visa o desenvolvimento de algoritmos é chamado lógica de programação.
  • 12.
    Lógica de Programação 12 •Por exemplo, imagine o seguinte problema. Um senhor, bastante gordo, está numa das margens de um rio com uma raposa, uma dúzia de galinhas e um saco de milho. O senhor pretende atravessar o rio com suas cargas, num barco que, infelizmente, só comporta o senhor e uma das cargas. Evidentemente, o senhor não pode deixar em uma das margem, sozinhos, a raposa e a galinha, nem a galinha e o milho.A questão é escrever um algoritmo que oriente o senhor a realizar o seu intento. Naturalmente, na primeira viagem ele não pode levar a raposa (neste caso, as galinhas comeriam o milho), nem o milho (caso em que, a raposa devoraria as galinhas).
  • 13.
    Lógica de Programação 13 Resposta. 1. Atravessar as galinhas 2. Retornar sozinho 3. Atravessar a raposa 4. Retornar com as galinhas 5. Atravessar o milho 6. Retornar sozinho 7. Atravessar as galinhas.
  • 14.
    Lógica de Programação 14 Exemplo 2. Algoritmo para calcular a média aritmética de vários números dados. Resposta. 1. Determinar a quantidade de números. 2. Some os números dados. 3. Divida esta soma pela quantidade de números.
  • 15.
    Lógica de Programação 15 –Exemplo 3. Algoritmo para calcular as raízes de uma equação do segundo grau. 1. Digite e leia os coeficientes da equação a, b e c. 2. Calcule d=b2 – 4ac. 3. Se d<0 forneça como resposta a mensagem: A equação não possui raízes reais. 4. Se d0 1. Calcule x’ = (-b + raiz (d)) /2a 2. Calcule x’’ = (b + raiz (d)) /2a 3. Forneça x’ e x’’ como raízes da equação.
  • 16.
    Lógica de Programação 16 •Exemplo 4.Analise e descreva uma maneira de mover os discos do pino A para o pino C, mantendo a mesma ordem. Em hipótese nenhuma um disco maior poderá ficar sobre um menor. Para que um disco seja movido de A para C, deve-se passar pelo pino B e vice-versa.
  • 17.