Lógica da programação

5
Lógica da Programação. 1. Algoritmos Sempre que vamos escrever um programa de computador estaremos tentando resolver um problema. Um problema pode ser definido como qualquer tipo de questão levantada para se chegar a uma decisão ou solução. Mas por onde começar? Existe um conceito matemático que ajuda a definir soluções de problemas: o algoritmo. Um Algoritmo é uma sequência ordenada e finita de etapas, cuja execução passo a passo resolve um determinado problema. Dessa forma, um algoritmo pode tanto definir uma solução para um problema computacional quanto um problema do cotidiano. Vejamos um problema do cotidiano: Realizar um depósito no caixa eletrônico: digamos que você pede para alguém realizar um depósito em dinheiro na sua conta no caixa eletrônico. Você entrega o dinheiro à pessoa mas ela nunca realizou esta tarefa antes. Você precisa explicar passo a passo todos os procedimentos para ela realizar o depósito. Tá vendo como o cara tá constrangido? Ele é gente boa, mas nunca fez um depósito antes. Vamos ajudá-lo.

Transcript of Lógica da programação

Page 1: Lógica da programação

Lógica da Programação.

1. AlgoritmosSempre que vamos escrever um programa de computador estaremos tentando resolver um problema.

Um problema pode ser definido como qualquer tipo de questão levantada para se chegar a uma decisão

ou solução.

Mas por onde começar? Existe um conceito matemático que ajuda a definir soluções de problemas: o

algoritmo.

Um Algoritmo é uma sequência ordenada e finita de etapas, cuja execução passo a passo resolve um

determinado problema. Dessa forma, um algoritmo pode tanto definir uma solução para um problema

computacional quanto um problema do cotidiano.

Vejamos um problema do cotidiano:

Realizar um depósito no caixa eletrônico: digamos que você pede para alguém realizar um depósito em

dinheiro na sua conta no caixa eletrônico. Você entrega o dinheiro à pessoa mas ela nunca realizou esta

tarefa antes. Você precisa explicar passo a passo todos os procedimentos para ela realizar o depósito.

Tá vendo como o cara tá constrangido? Ele é gente boa, mas nunca fez um depósito antes. Vamos

ajudá-lo.

Vejamos como ficaria uma sequência de instruções que poderia gerar um algoritmo para resolver esse

problema:

1. Ao chegar na agência, pegue um envelope próprio para depósito em dinheiro.

2. Escreva o número da agência, da conta e o valor do depósito.

3. Coloque o dinheiro dentro do envelope e feche o mesmo.

4. Dirija-se a um caixa eletrônico, procure a tecla para "depósito sem cartão".

5. Siga as instruções da tela do caixa, inserindo os números de acordo com as solicitações.

6. Verifique se os dados estão corretos.

Page 2: Lógica da programação

7. Após confirmar os dados, coloque o envelope no local indicado.

8. Aguarde a impressão do recibo.

Para alguém que esteja acostumado a realizar esta tarefa, a mesma é automática, mas para quem nunca

a realizou antes, o roteiro pode resolver o problema.

Esse é um bom conceito para algoritmo: "dar um roteiro passo a passo para a execução de determinada

tarefa".

O interessante é que existem diversas maneiras de escrever um algoritmo, portanto não existe somente

uma solução possível.

2. Lógica da Programação

Lógica é o estudo das leis do pensamento, no sentido de verificar se algo é ou não verdadeiro.

A Lógica da Programação consiste em planejar e definir corretamente os comandos a serem inseridos

em um algoritmo, visando a resolução de problemas.

Nem sempre os problemas são computacionais, mas podem surgir em qualquer âmbito. E já dissemos

que algoritmos podem definir um roteiro passo a passo para a resolução de um problema. Para fazer

uma analogia, digamos que eu precise escrever um algoritmo para resolver o problema de fritar um

ovo.

Primeiro, fazemos uma análise mental genérica sobre o problema:

Em seguida, podemos escrever um roteiro passo a passo para a resolução do problema:

1. Pegue uma frigideira e coloque sobre o fogão;

2. Pegue o óleo ou manteiga e coloque na frigideira;

3. Pegue um ovo e quebre sobre a frigideira, sem deixar cair a casca.

4. Espere o ovo fritar, retire com a escumadeira em um prato.

Aí você analisaria o algoritmo e poderia dizer:

Page 3: Lógica da programação

" Ei! Seu algoritmo tem um erro de lógica! Seu ovo nunca vai fritar, pois você não acendeu a chama

do fogão para aquecer a frigideira!"

Neste caso, a solução poderia ser inserir um ou dois passos a mais, ficando dessa forma:

1. Pegue uma frigideira e coloque sobre o fogão;

2. Pegue o óleo ou manteiga e coloque na frigideira;

3. Ligue a chama do fogão abaixo da frigideira.

4. Pegue um ovo e quebre sobre a frigideira, sem deixar cair a casca.

5. Espere o ovo fritar, retire com a escumadeira em um prato.

6. Desligue a chama do fogão abaixo da frigideira.

Veja que adicionando esses passos o algoritmo ficou mais completo e detalhado, além do fato que

passos imprescindíveis estão presentes.

Este exemplo ilustra a importância do estudo da Lógica da Programação e da construção de

Algoritmos. Imagine se ao invés de escrever primeiro o algoritmo eu tivesse decidido escrever

diretamente o programa "fritar_ovo.exe". Não funcionaria e o programa teria que ser escrito

novamente. Essa é a importância dos algoritmos: planejar a execução do programa antes de escrevê-lo.

O interessante é que normalmente não existe somente uma única solução para os problemas. Por essa

razão, um algoritmo escrito por uma pessoa pode ser muito diferente da solução encontrada por outra,

mas geralmente o que importa é a resolução do problema. Hum, mais ou menos. Há controvérsias. Às

vezes uma proposta pode levar à solução de um problema mas, digamos assim..., através de "caminhos

tortuosos".

Em certas situações a simplicidade é mais importante, em outras, a especificidade. Mas teremos muitas

oportunidades de verificar essas questões quando estivermos desenvolvendo nossos programas durante

o curso!

3. Português Estruturado

Para estudar a construção de algoritmos e a lógica da programação geralmente utilizamos um código

que não pode ser executado pelos computadores.

Utilizaremos o que é chamado de pseudocódigo, também conhecido como Português Estruturado ou

Portugol.

Page 4: Lógica da programação

Vamos escrever sequências de instruções que possam ser entendidas por qualquer programador,

independente da linguagem de programação utilizada. Com essas instruções (algoritmo em português

estruturado), o programador terá um roteiro para a codificação do programa.

Simultaneamente, vamos testar na prática os conceitos aprendidos, criando pequenos programas nas

linguagens de programação C++ e Java.

Todas são linguagens de programação orientadas a objetos e não estruturadas. Mas servem

perfeitamente para o estudo da lógica e dos algoritmos por sua flexibilidade e sintaxe simples.

Vejamos um exemplo de algoritmo em português estruturado: