17
Técnicas de Programação Prof. Thiago Nelson

01 conceitos

Embed Size (px)

Citation preview

Page 1: 01 conceitos

Técnicas de Programação

Prof. Thiago Nelson

Page 2: 01 conceitos

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

Page 3: 01 conceitos

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

Page 4: 01 conceitos

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.

Page 5: 01 conceitos

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.

Page 6: 01 conceitos

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

Page 7: 01 conceitos

Algoritmos

7

Exercício:

Descreva um algoritmo para a troca de pneu de um carro

Page 8: 01 conceitos

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.

Page 9: 01 conceitos

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:

Page 10: 01 conceitos

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.

Page 11: 01 conceitos

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.

Page 12: 01 conceitos

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

Page 13: 01 conceitos

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.

Page 14: 01 conceitos

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.

Page 15: 01 conceitos

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.

Page 16: 01 conceitos

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.

Page 17: 01 conceitos

Gráfico Comparativo

17