lógica de programação aula anterior a lógica se relaciona com a ordem da razão, com a...

23
Lógica de Programação Aula anterior A lógica se relaciona com a “ordem da razão”, com a “correção do pensamento” É necessário utilizar processos lógicos de programação para construir algoritmos Um algoritmo é uma sequência de passos bem definidos Tem por objetivo solucionar um determinado problema Através do exemplo de lâmpadas Fluxo de execução Estrutura sequencial Estrutura de seleção Estrutura de repetição

Upload: internet

Post on 18-Apr-2015

112 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Lógica de Programação Aula anterior A lógica se relaciona com a ordem da razão, com a correção do pensamento É necessário utilizar processos lógicos de

Lógica de ProgramaçãoAula anterior

A lógica se relaciona com a “ordem da razão”, com a “correção do pensamento”

É necessário utilizar processos lógicos de programação para construir algoritmos

Um algoritmo é uma sequência de passos bem definidos

Tem por objetivo solucionar um determinado problema

Através do exemplo de lâmpadasFluxo de execução

Estrutura sequencial

Estrutura de seleção

Estrutura de repetição

Page 2: Lógica de Programação Aula anterior A lógica se relaciona com a ordem da razão, com a correção do pensamento É necessário utilizar processos lógicos de

Lógica de ProgramaçãoNesta aula

Tipos PrimitivosVariáveisExpressões Aritméticas, Lógicas e RelacionaisComandos de Entrada e SaídaBlocos

ObjetivosApresentar os tipos básicos de dados a serem adotadosDefinir constantes e variáveis, explicando sua utilizaçãoExplicar expressões aritméticasConceituar o processo de atribuiçãoApresentar a importância e a aplicação dos comandos de I/OConceituar blocos lógicos

Page 3: Lógica de Programação Aula anterior A lógica se relaciona com a ordem da razão, com a correção do pensamento É necessário utilizar processos lógicos de

Tópicos PreliminaresTipos Primitivos

São os tipos básicos de informação dos algoritmos

Inteiro: informação pertencente ao conjunto dos números inteiros relativos (positiva ou negativa)

- Ele tem 15 irmãos

Real: informação pertencente ao conjunto dos números reais

- Meu saldo bancário é de $ 215,20

Caracter: informação alfanumérica (caracteres alfabéticos, numéricos e especiais)

- Constava na prova: “Use somente caneta!”

Lógico: informação biestável (admite apenas 2 valores)

- A porta pode estar aberta ou fechada

Page 4: Lógica de Programação Aula anterior A lógica se relaciona com a ordem da razão, com a correção do pensamento É necessário utilizar processos lógicos de

Tipos PrimitivosDetermine qual é o tipo de informação presente nas sentenças

A placa “Pare!” tinha 2 furos de bala

Josefina subiu 5 degraus para pegar uma maçã boa

Alberta levou 3,5 horas para chegar ao hospital

Astrogilda pintou em sua camisa: “Preserve o meio ambiente”, e

ficou devendo $ 100,59 ao vendedor de tintas

Page 5: Lógica de Programação Aula anterior A lógica se relaciona com a ordem da razão, com a correção do pensamento É necessário utilizar processos lógicos de

Tópicos PreliminaresConstantes

São valores que não sofrem nenhuma variação no decorrer do tempo

Exemplos:o valor de PI

a velocidade da luz

5

“Não fume”

Page 6: Lógica de Programação Aula anterior A lógica se relaciona com a ordem da razão, com a correção do pensamento É necessário utilizar processos lógicos de

VariáveisSão valores que podem sofrer alteração no decorrer do tempo

ExemplosCotação do dólar

Peso de uma pessoa

Preço da gasolina

Page 7: Lógica de Programação Aula anterior A lógica se relaciona com a ordem da razão, com a correção do pensamento É necessário utilizar processos lógicos de

VariáveisSão como gavetas que podem receber diversos tipos de objetos

Identificadores: São os nomes escolhidos para as informações variáveis

Deve iniciar por caracter alfabético

Pode ser seguido por mais caracteres alfabéticos ou numéricos

Não devem ser usados caracteres especiais

Declaração: processo de reservar e etiquetar gavetas

Page 8: Lógica de Programação Aula anterior A lógica se relaciona com a ordem da razão, com a correção do pensamento É necessário utilizar processos lógicos de

Identificador

letra

letra

dígito

identificador

Identificadore válidos: Alpha, X, BJ153, K7, ABCIdentificadores inválidos: 5X, E(13), A:B, X-Y, P&AA

Page 9: Lógica de Programação Aula anterior A lógica se relaciona com a ordem da razão, com a correção do pensamento É necessário utilizar processos lógicos de

Declaração de Variáveis

tipo identificadorDeclaração de

variáveis: ;

,

tipo inteiro

real

caracter

lógico

Exemplos

inteiro: X;caracter: Nome;real: Peso, Dólar;lógico: Resposta;

Page 10: Lógica de Programação Aula anterior A lógica se relaciona com a ordem da razão, com a correção do pensamento É necessário utilizar processos lógicos de

Exercício 1. Supondo que as variáveis NB, NA, NMat e SX sejam

utilizadas para armazenar a nota do(a) aluno(a), o nome do(a) aluno(a), o número de matrícula e o sexo, declare-as corretamente, associando o tipo primitivo adequado ao dado que será armazenado

Page 11: Lógica de Programação Aula anterior A lógica se relaciona com a ordem da razão, com a correção do pensamento É necessário utilizar processos lógicos de

Exercício 1. Supondo que as variáveis NB, NA, NMat e SX sejam

utilizadas para armazenar a nota do(a) aluno(a), o nome do(a) aluno(a), o número de matrícula e o sexo, declare-as corretamente, associando o tipo primitivo adequado ao dado que será armazenado

real: NB; caracter: NA; inteiro: Nmat; lógico: SX;

Page 12: Lógica de Programação Aula anterior A lógica se relaciona com a ordem da razão, com a correção do pensamento É necessário utilizar processos lógicos de

ExpressõesExpressões Aritméticas

Operadores aritméticos: utilizados para a realização de cálculos matemáticos

Operador Função Exemplos

+ Adição 2 + 3, X + Y

- Subtração 4 - 2, N – M

* Multiplicação 3 * 4, A * B

/ Divisão 10 / 2, C / D

pot(x,y) Potenciação (x elevado a y) pot(2, 3)

rad(x) Raiz quadrada (de x) rad(9)

Mod Resto da divisão 9 mod 4 resulta 1

Div Quociente da divisão inteira 9 div 4 resulta 2

Page 13: Lógica de Programação Aula anterior A lógica se relaciona com a ordem da razão, com a correção do pensamento É necessário utilizar processos lógicos de

ExpressõesExpressões Lógicas

Operadores relacionais: utilizados para a estabelecer relação de comparação entre valores

Operador Função Exemplos

= Igual a 3 = 3, X = Y

> Maior que 5 > 4, X > Y

< Menor que 3 < 6, X < Y

>= Maior ou igual a 5 >= 3, X >= Y

<= Menor ou igual a 3 <= 5, X <= Y

<> Diferente de 8 <> 9, X <> Y

Page 14: Lógica de Programação Aula anterior A lógica se relaciona com a ordem da razão, com a correção do pensamento É necessário utilizar processos lógicos de

ExpressõesExpressões Lógicas

Operadores lógicos: utilizados para a efetuar avaliações lógicas entre valores

Tabelas Verdade: Conjunto de todas as possibilidades de cada operador lógico

Operador Função Exemplos

Não Negação não V, não X

e Conjugação V e V, X e Y

ou Disjunção V ou V, X ou Y

A B A e B

F F F

F V F

V F F

V V V

A B A ou B

F F F

F V V

V F V

V V V

A não A

F V

V F

Page 15: Lógica de Programação Aula anterior A lógica se relaciona com a ordem da razão, com a correção do pensamento É necessário utilizar processos lógicos de

Exercício2. Sejam A, B e C variáveis de tipo inteiro, com valores iguais a 5, 10 e –8, respectivamente, e uma variável real D, com valor de 1,5, quais os resultados das expressões aritméticas a seguir?

(a) 2 * A mod 3 – C

(b) rad(-2 * C) div 4

(c) ((20 div 3) div 3) + pot(8,2)/2

(d) (30 mod 4 * pot(3,3)) * -1

(e) rad(pot(A,B/A)) + C * D

Page 16: Lógica de Programação Aula anterior A lógica se relaciona com a ordem da razão, com a correção do pensamento É necessário utilizar processos lógicos de

AtribuiçãoProcesso de associar um valor a uma variável (guardar um objeto na gaveta)

O tipo de dado deve ser compatível com a variável (objeto precisa caber na gaveta)

Cada variável pode receber apenas um valor. O segundo valor sobrepõe-se ao anterior

Podem ser atribuídos:

Constantes

Variáveis

Expressões (aritméticas, relacionais ou lógicas)

Comando de atribuição :

Page 17: Lógica de Programação Aula anterior A lógica se relaciona com a ordem da razão, com a correção do pensamento É necessário utilizar processos lógicos de

Atribuição

Ex.: B 7; A B; X B + 13 div 5;

atribuição identificador expressão ;

expressão expressão aritmética

expressão lógica

expressão literal

Page 18: Lógica de Programação Aula anterior A lógica se relaciona com a ordem da razão, com a correção do pensamento É necessário utilizar processos lógicos de

Entrada e SaídaAlgoritmos objetivam transformar informações

Algoritmo = Entrada + Processamento + Saída

Entrada: obtenção de dados provenientes do meio externo

Comando: leia

Exemplos:

leia (X);

leia (A, NOTA);

entrada dedados

leia ( identificador ) ;

,

Page 19: Lógica de Programação Aula anterior A lógica se relaciona com a ordem da razão, com a correção do pensamento É necessário utilizar processos lógicos de

Entrada e SaídaSaída: entrega dos resultados ao meio externo

Comando: escreva

Exemplos:

escreva (X);

escreva (B, MEDIA, 2+2);

escreva (“Você pesa”, P, “quilos”);

saída dedados

escreva ( identificador

expressão

) ;

,

Page 20: Lógica de Programação Aula anterior A lógica se relaciona com a ordem da razão, com a correção do pensamento É necessário utilizar processos lógicos de

BlocosUm Bloco é um conjunto de ações com uma função definida

O algoritmo pode ser visto como um Bloco

O algoritmo pode conter vários Blocos

Exemplo:início // início do bloco (algoritmo)

// declaração de variáveis

// sequência de ações (eventualmente mais blocos)

fim. // fim do bloco (algoritmo)

blocos início identificador ;

;

fim

Page 21: Lógica de Programação Aula anterior A lógica se relaciona com a ordem da razão, com a correção do pensamento É necessário utilizar processos lógicos de

Exercícios3. Utilizando o seguinte trecho de algoritmo

.

.

inteiro: X, Y;

real: Z;

leia (X);

escreva (X, “elevado ao cubo = ”, pot(X,3));

leia (Y);

escreva (X + Y);

Z X/Y;

escreva (Z);

Z Z + 1;

X (Y + X) mod 2;

escreva (X);

.

.

explique o que está acontecendo em cada linha e qual é o resultado de cada ação

Page 22: Lógica de Programação Aula anterior A lógica se relaciona com a ordem da razão, com a correção do pensamento É necessário utilizar processos lógicos de

Exercíciosinteiro: X, Y; // declaração de duas variáveis inteiras identificadas por X e Yreal: Z; // declaração de uma variável real identificada por Zleia (X); // entrada de dados de um valor inteiro em X // supondo que seja fornecido 3, X valerá 3 escreva (X, “elevado ao cubo = ”, pot(X,3)); // saída de dados: // valor de X, seqüência de caracteres, resultado da função pot // resultado do escreva: 3 elevado ao cubo = 27leia (Y); // entrada de dados de um valor inteiro em Y // supondo que seja fornecido 2, Y valerá 2 escreva (X + Y); // saída de dados: 5Z X/Y; // comando de atribuição, Z 3/2; ou seja, Z valerá 1,5escreva (Z); // saída de dados: 1,5

Page 23: Lógica de Programação Aula anterior A lógica se relaciona com a ordem da razão, com a correção do pensamento É necessário utilizar processos lógicos de

ExercíciosZ Z + 1;

// comando de atribuição incrementando o atual valor de Z de 1

// Z 1,5 + 1; ou seja, Z valerá 2,5

X (Y + X) mod 2;

// comando de atribuição com uma expressão aritmética

// X (Y + X) mod 2;

// X (2 + 3) mod 2;

// X (5) mod 2; ou seja, X valerá 1

escreva (X);

// saída de dados: 1