01 conceitos

Preview:

Citation preview

Técnicas de Programação

Prof. Thiago Nelson

Definições Básicas

2

Lógica – raciocínio capaz de conduzir a umadeterminada conclusão ou uma particular tomada dedecisão.

Algoritmo – Seqüência de instruções cuja execuçãoresulta na realização de uma determinada tarefa. Aordem das instruções e as tomadas de decisõesobedecem a uma particular lógica.

Programa – Conjunto de instruções legíveis para ocomputador 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 d0

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