Anda di halaman 1dari 22

CHICO GAMA

Programming Logic
Introduo a Algoritmos

CHICO GAMA

Objetivo {slides 01_01;01_02;02_01;02_02}


Abordar o conceito de lgica como cincia; destacar o uso da lgica de maneira muitas vezes incondicional, nas tarefas do dia-a-dia; usar o raciocnio lgico para a tomada de decises e para a resoluo de problemas Mostrar as aplicaes dos algoritmos para resoluo de diferentes problemas; especificar a importncia dos algoritmos para a resoluo de problemas computacionais; abordar os conceitos de entrada, processamento e sada do ponto de vista computacional; definir os tipos de algoritmos a serem utilizados: pseudocdigo e fluxograma.. Abordar os principais paradigmas da programao.; Estabelecer um comparativo entre a programao estruturada e a orientada a objetos; Abordar alguns aspectos da programao orientada a objetos. Abordar os tipos de dados; Definir variveis e constantes e exemplificar a sua utilizao; Abordar os operadores aritmticos, lgicos e relacionais e a sua aplicao.

Programming Logic

Variveis

Utilizadas para armazenar temporariamente valores necessrios a resoluo de um problema Devem ser declaradas de acordo com as regras bsicas:

O seu identificador (nome) no deve comear com nmeros; No pode conter caracteres especiais; No deve conter espaos em branco;

As regras podem variar de acordo com a linguagem de programao, mas para todas no permitido que o nome de uma varivel seja igual ao de uma palavra reservada.

Exemplos de nomes vlidos para variveis


Aluno Nome nOme Nome_aluno nome123

Identificando variveis

Supondo a construo de um algoritmo para calcular a mdia entre as 2 notas das provas realizadas por um aluno:
Anlise

do problema

Para calcular a mdia so necessrias as duas notas O clculo do resultado precisa ser armazenado em algum lugar Poderamos querer saber o nome do aluno Poderamos querer saber o nome da disciplina

Tipos de dados

A escolha adequada do tipo de dado que uma varivel poder armazenar muito importante para a resoluo do problema. Quando o algoritmo for implementado isso poder minimizar a possibilidade de erros e garantir a integridade das operaes!

Tipos de dados primitivos

So os tipos de dados bsicos utilizados em algoritmos.

Literal representa valores alfanumricos (Sandra, algoritmo) Lgico ou booleano representam valores lgicos (.v. ou .f.) Real representa valores numricos reais (3.234) Inteiro representa valores numricos inteiros (198)
Nas

linguagens de programao esses tipos de dados so estendidos dando origem a outros tipos de dados.

Tipos de dados construdos


Os tipo de dado construdo mais comum o registro. Um registro contm um conjunto de campos, que podem ser de tipos de dados diferentes.
Exemplo:
Algoritmo Exemplo_Registro Tipo Reg_paciente = registro Nome: literal Idade: inteiro Peso: real fim_registro Var Paciente: Reg_paciente ...

Constantes

Assim como as variveis so utilizados para armazenar valores, entretanto esses valores no so modificados ao longo do processamento das instrues como pode ocorrer com as variveis. Devem ser declarados de acordo com as mesmas regras aplicadas s variveis; Devem ser inicializadas no incio do algoritmos ou programa.
Isso

pode ser feito na declarao da constantes

Operadores

So utilizados para representar expresses de clculo, comparao, condio ou atribuio.

Tipos de operadores
Atribuio Aritmticos Relacionais Lgicos

Operadores de atribuio

So utilizados para expressar o armazenamento de um valor em uma varivel.


Notao algortmica Ex: nome Chico num 3 Em Java = Ex: nome = Chico num = 3

Operadores aritmticos

Operador * / div + Mod

exemplo(A10; B2) A*B A/B A div B A+B A-B A mod B 20 5.0 5 12 8 0

Operadores relacionais

Operador Maior Maior ou igual Menor Menor ou igual Igual a Diferente de > >= < <= = <>

Retornando booleano True/false True/false True/false True/false True/false True/false

Operadores Lgicos

Operador e ou no

Retornando booleano True/false True/false True/false

Precedncia de Operadores
Operador ( ), [ ] pow(x,y) *, /, Div,Mod +, =,<, >, <=, >=, <> no e ou

Exemplo do uso de operadores e precedncia


Expresso: K A + B * 16 10mod3

Considere: B 5 e A 2

Substituindo as variveis pelos valores que lhe foram atribudos temos: K 2 5 * 16 10mod3

Exemplo resp

Temos as expresses 16 e 10mod3 com a mesma precedncia, sendo assim, vamos seguir a ordem das expresses, considerando-as da esquerda para a direita, ento Calcula-se 16, obtm-se o valor 4 e em seguida 10mod3 e obtm-se o valor 1. Reconstruindo a expresso com os valores obtidos: K

2+5*4-1

Exemplo resp

Calcula-se 5 * 4 = 20, reconstruindo a expresso temos K

2 + 20 1

Todas as operaes resultantes tem a mesma precedncia, desta maneira seguimos calculando da esquerda para a direita: K 2 + 20 1 temos

K 22 1

Resultado final: K

21

A mesma expresso utilizando-se parnteses para impor precedncia

Expresso: K (A + B) * 16 10mod3

Considere: B 5 e A 2

Substituindo as variveis pelos valores que lhe foram atribudos temos:

K (2 5) * 16 10mod3

Exemplo continuao

Calcula-se a expresso entre parnteses (2 4), temos o resultado 2

K -2 * 16 10mod3

As operaes entre parnteses so realizadas primeiro!

Exemplo continuao

Temos as expresses 16 e 10mod3 com a mesma precedncia, sendo assim, vamos seguir a ordem das expresses, considerando-as da esquerda para a direita, ento Calcula-se 16, obtm-se o valor 4 e em seguida 10mod3 e obtm-se o valor 1, reconstruindo a expresso com os valores obtidos:

K -2 * 4 1

Exemplo continuao

Calcula-se -2 * 4, obtm-se -8;

K -8 1

Resultado final

K -9!

Anda mungkin juga menyukai