segunda-feira, 26 de fevereiro de 2018

Aprenda a programar - 2

Resultado de imagem para algoritmo
Galera, boa noite.

Vamos continuar falando sobre programação, como já abordamos qual linguagem selecionar, como ler os códigos, vamos começar a trabalhar a ideia de logica para programação. Ela é de suma importância para quem quer programar independente da linguagem selecionada.



                                       
Algoritmo.
Bem, o que é algoritmo? Basicamente é um conjunto de instruções bem definidas, finitas e que geram um resultado.
O que!? Como?
Bem, se você for pensar, fazemos isso todos os dias, a todo momento. Por exemplo, quando saímos de casa para ir ao trabalho. Neste caso, precisamos identificar como fazer isso: de carro, de ônibus, a pé, enfim… Quanto tempo vou demorar com cada uma dessas alternativas.
Pensando no mundo da TI agora, imagina um aplicativo famoso, o Waze ou o google maps, por exemplo. Dentro destes aplicativos, existem complexos algoritmos, com conjuntos de instruções e variáveis (rotas, tempo estimado, cálculo de velocidade média etc) que geram resultados (chegar até o seu trabalho da melhor forma possível), conforme a interação do usuário.
Outro exemplo, agora mais clássico: o simples ato de tomar um banho ou ir ao supermercado.
(Escrevendo em formato de listas para organizar o pensamento)

Resultado de imagem para algoritmo

Tomar Banho

Início
  • Pegar a toalha e roupas;
  • Entrar no banheiro e fechar a porta;
  • Tirar a roupa que está usando;
  • Ligar o chuveiro e esperar a água ficar na temperatura certa;
  • Entrar no box (ou espaço destinado para o banho);
  • Se molhar, ensaboar, enxaguar = banho;
  • Fechar o chuveiro;
  • Pegar a toalha e se secar;
  • Sair do box;
  • Se vestir com a roupa limpa;
  • Sair do banheiro.
Fim
Digamos que esse seja o banho padrão (standard), mas você pode variá-lo conforme as suas preferências.
O mesmo ocorre para softwares e funcionalidades dentro de um sistema. Você escreve algoritmos, como o escrito acima, para chegar a um resultado esperado com as instruções definidas.
A diferença entre o algoritmo acima e os algoritmos de sistemas é a linguagem utilizada. Pense da seguinte forma, o algoritmo acima foi escrito de uma forma que você, humano racional,  consiga compreender. Agora, o que precisamos fazer para que um computador entenda?
Para que um computador entenda o seu algoritmo, basicamente,  você precisará usar uma linguagem de programação, ou seja, você estará escrevendo uma sequência de passos que um computador (que não possui habilidades de interpretação subjetiva) deverá executar sem ficar com dúvidas, utilizando uma linguagem que é conhecida e facilmente interpretada pelo computador.
Resultado de imagem para algoritmo

Conceitos e regras básicas de programação

Mesmo para nós, seres humanos autodenominados como os seres mais inteligentes do planeta, há uma série de regras pré-estabelecidas para que a listinha com as instruções de como tomar banho seja compreendida, executada e gere um resultado. E acredite, os humanos são seres muito mais complexos do que computadores (talvez daqui uns 20 anos alguém virá me dizer que estou errado, mas por enquanto, sim, somos muito mais complexos).
OK, mas e no caso de computadores, quais regras e conceitos eu preciso saber para otimizar e melhorar meus algoritmos, de uma maneira que o computador compreenda e execute, atingido o resultado esperado.

Variáveis e constantes

Em termos simples, são nomes que inventamos para representar um valor, para que assim, seja possível usar este mesmo valor diversas vezes naquela lista de tarefas, sem precisar reescrevê-lo todas as vezes que ele for necessário. Com o uso de variáveis, utilizamos apenas o nome de referência.

Tipos de dados

Basicamente, desenvolvemos softwares, sistemas e apps para receber informações:
  • Nome
  • Idade
  • Salário
  • Sexo
  • E por aí vai…
Para o computador, tais informações são dados. E dados podem assumir diversos formatos. Pense da seguinte forma, nome é diferente de idade que, por sua vez, é diferente de salário. Isso em lógica de programação pode ser definido como tipos de dados primitivos. Estes tipos existem para otimizar a memória do computador, assim, o computador consegue identificar qual é o tipo de dado que ele irá receber/interpretar.
Tratando-se de tipos de dados primitivos, são constatados quatro formatos:

Tipo 1: Texto

Os dados do tipo texto representam uma sequência de um ou mais caracteres. Normalmente são colocados entre aspas duplas.
Um exemplo de dado do tipo texto: Nome (Becoder Jr.)
Obs: espaços também contam como caracteres.

Tipo 2: Inteiro

São representados por valores numéricos, tanto negativos, quando positivos (sem casas decimais).
Um exemplo de dado do tipo inteiro: Idade (18).

Tipo 3: Real

Os dados do tipo real são valores numéricos, tanto positivos, quanto negativos que utilizam casas decimais,
Como exemplo, podemos citar: Salário (R$3.434,52).

Tipo 4: Lógico

Por último, mas não menos importante, o tipo lógico. Este tipo de dado normalmente é representado por alternativas: SIM ou NÃO, VERDADEIRO ou FALSO. Dados do tipo lógico também podem são chamados de Booleano.
Um exemplo de dado lógico que é frequentemente utilizado em programação é: Sexo (Masculino ou Feminino).
Sendo assim, ficou:
  • Nome: TEXTO
  • Idade: INTEIRO
  • Salário: REAL
  • Sexo: BOOLEANO

Estrutura de seleção e repetição

Formas e estruturas organizadas de fazer com que um computador consiga tomar decisões ou executar diversas vezes uma instrução até que um limite pré-estabelecido seja atingido, ou uma condição seja satisfeita, ou o usuário intervenha. Sim, pois o computador, diferente dos humanos ainda não consegue pensar por conta própria, sendo assim, ele precisa de regras bem definidas para o seu correto funcionamento. Isto se alcance através de muito treinamento e prática com lógica de programação.

Matemática

Matemática - A melhor forma de aprender lógica de programação | Becode

Aqui, não irei me estender muito no assunto, contudo, vale a lembrança que a matemática é um recurso extremamente forte dentro da programação, afinal você vai criar softwares que possuirão forte vínculo com a matemática. Então, se você não se sente seguro com essa área do conhecimento ainda, talvez seja interessante revisar alguns conceitos, como: operadores lógicos, aritméticos, ordens de precedência e a teoria dos conjuntos.
Tendo estes conhecimentos sólidos, sim, aprender lógica de programação será algo muito mais natural.

Nenhum comentário:

Postar um comentário