Você está na página 1de 43

Lógica

de
Programação

elvis@mageddo.com www.mageddo.com
Introdução á lógica

elvis@mageddo.com www.mageddo.com
Introdução á lógica
• A lógica é a matemática
• Significa sequência
• Descreve as ações desejadas na forma da informática
• É detalhista
• É simples

http://pt.wikipedia.org/wiki/Programa%C3%A7%C3%A3o_l%C3%B3gica

elvis@mageddo.com www.mageddo.com
Tipos de lógica
• Lógica Humana
• Lógica matemática
• Logica de programação

elvis@mageddo.com www.mageddo.com
Lógica na prática
• Somar dois números

• Comprar pão na venda

• Ir pra escola

elvis@mageddo.com www.mageddo.com
Lógica de programação

elvis@mageddo.com www.mageddo.com
É entender como o computador funciona
e
saber como falar com ele

elvis@mageddo.com www.mageddo.com
Ser humano

Idiomas (Português, inglês, chinês) Matemática

Linguagem de programação

Linguagem Octal Linguagem Hexadecimal

Linguagem binária

Computador

elvis@mageddo.com www.mageddo.com
Criaram a lógica de programação
Porque criaram
• Binária /Hexadecimal/Octal
• Muito difícil de ser compreendida pelo homem
• Difícil manutenção
• Trazia sistemas legado

Como se baseia
• Basicamente a mesma lógica comum

elvis@mageddo.com www.mageddo.com
Tipos de dados

elvis@mageddo.com www.mageddo.com
Dados binários
• Dados binários são true/false
• Logo são base 2
• É a verdadeira linguagem da máquina
• Elas até hoje falam essa linguagem

elvis@mageddo.com www.mageddo.com
Dados octais
• Vão de 0 a 7
• Portanto são de base 8
• Foi criada para também simplificar a programação binária

elvis@mageddo.com www.mageddo.com
Dados hexadecimais
• Vão de 0 a F (0,1,2,3,4,5,6,7,8,9,0,A,B,C,D,E,F)
• Portanto são de base 16
• Foi criada para simplificar a programação binária

elvis@mageddo.com www.mageddo.com
Tipos de dados primitivos

elvis@mageddo.com www.mageddo.com
Evoluíram a lógica de programação
• Criaram outros tipos de dados:

• Inteiros
• Flutuantes
• Booleanos
• Caracteres

elvis@mageddo.com www.mageddo.com
Conversão de bases

• Inteiros
• Flutuantes
• Booleanos
• Caracteres

elvis@mageddo.com www.mageddo.com
O que você precisa saber
• Hoje tudo foi facilitado

• A lógica de programação se baseia em:

• Detalhe passo a passo


• Tipo de dados
• Sim/Não - Booleano

elvis@mageddo.com www.mageddo.com
Você deve estar se perguntando
• Se um programa é escrito como texto hoje em dia como ele volta a ser binário para o computador
entende-lo?

elvis@mageddo.com www.mageddo.com
Algoritmos

elvis@mageddo.com www.mageddo.com
Sintaxe
• Armazenamento
• Ação
• Decisão
• Repetição

elvis@mageddo.com www.mageddo.com
Armazenamento
Simplesmente guardam dados
As variáveis o representam
São divididas por tipos de dados
Em principio são divididas por dados primitivos
Float
Integer
Boolean
String
Só isso

elvis@mageddo.com www.mageddo.com
Ação
É a execução de um programa
Ex:
Somar dois números
Imprimir uma frase
etc.

elvis@mageddo.com www.mageddo.com
Decisão
Faz uma escolha baseado em true/false

Ex:
Entre na casa se a porta estiver aberta

elvis@mageddo.com www.mageddo.com
Repetição
Faz instruções repetitivas seguindo uma decisão.

Ex:
imprima de 1 até 10

elvis@mageddo.com www.mageddo.com
Comparadores

elvis@mageddo.com www.mageddo.com
Teoria
Os operadores sempre retornam true ou false

== traz false se o valor é idêntico


!= traz true se o valor é diferente
|| traz true sempre
>= traz true se x for maior que y
<= Traz true se x for menor que y

elvis@mageddo.com www.mageddo.com
Tabela de exemplo

X Y == != >= <= === > <


3 5 false true false True False false True
3 3.0 True False True True False false false
2 2 true false true true true false False
5 3 false true true false false true false

elvis@mageddo.com www.mageddo.com
Outros operadores de
comparação

elvis@mageddo.com www.mageddo.com
Teoria
Existem outros operadores que naturalmente são utilizados para agrupar outras
comparações:

|| - retorna true se um dos dois for true


&& - retornar true apenas se os dois forem true
! - Retorna true se a verificação for false

elvis@mageddo.com www.mageddo.com
Tabela de exemplo

X Y == >= && ||
3 5 false false true True
3 3 true true True True
8 2 false true false True

elvis@mageddo.com www.mageddo.com
Na Prática

elvis@mageddo.com www.mageddo.com
Armazenamento
Se armazena dados com a seguinte sintaxe
“Tipo” “nome_da_variavel” = “conteudo”;

Ex:
String nome = “João”;
int idade = 32;
float altura = 1.78;
boolean casado = true;

elvis@mageddo.com www.mageddo.com
Ação
Ex:

1+2;

1*2-(2+2);

elvis@mageddo.com www.mageddo.com
Decisão
If(true){
1+2;
}

If(1>2){
2+2;
}

elvis@mageddo.com www.mageddo.com
Repetição
For(int i=0; i<10; i++){
System.ou.println(i);
}

elvis@mageddo.com www.mageddo.com
Concatenação
String a = “Menu nome é:”;

a = “joão e maria” ;

System.out.println(a);

elvis@mageddo.com www.mageddo.com
Constantes
• Variáveis que não podem ter seu valor modificado

elvis@mageddo.com www.mageddo.com
Matrizes
• Um conjunto de variáveis de um mesmo tipo

[1][2][3][4][5]
[1][2][3][4][5]
[1][2][3][4][5]

elvis@mageddo.com www.mageddo.com
Funções
• Simplesmente a reunião de um conjunto de ações

elvis@mageddo.com www.mageddo.com
Fluxogramas

elvis@mageddo.com www.mageddo.com
Fluxogramas
• É a forma didática de explicar os casos , a forma de fotografa-los

Vantagens
• Facilita o desenvolvimento
• Facilita o entendimento de um todo
• Aumenta a produtividade

elvis@mageddo.com www.mageddo.com
Sintaxe
• São muito simples / Feito por softwares como Power Point ou á mão

Processo

Decisão

Fluxo da informação

Entrada de dados

Início ou termino de um processo

Exibição de dados

Armazenamento

elvis@mageddo.com www.mageddo.com
Modelagem de dados
• Faz um mapeamento da estrutura dos dados
• Monta o banco de dados
• Monta relacionamentos
• São utilizados softwares DBDesign/PowerDesign

elvis@mageddo.com www.mageddo.com