• Nenhum resultado encontrado

Algoritmos e Técnicas - Lógica -

N/A
N/A
Protected

Academic year: 2021

Share "Algoritmos e Técnicas - Lógica -"

Copied!
27
0
0

Texto

(1)

Algoritmos e T

écnicas

- L

ógica

-Algoritmo

textual informal

Modo de preparo:

Bata a margarina, as gemas e o a

çúcar até ficar

cremoso

Junte o leite, o coco e a farinha e continue

batendo

Acrescente o fermento e, por

último, as claras em

neve

Unte uma forma com manteiga e leve ao forno

Quão cremoso?!?

De uma vez só?!? Quanto tempo?!?

Quanto tempo?!?

(2)

Modo de preparo (refinado):

Bata a margarina, as gemas e o a

çúcar

por 15

minutos

Junte o leite, o coco e a farinha e continue

batendo

por mais 15 minutos

Acrescente 20 g de fermento

e, por último

, as

claras em neve

Unte uma forma com manteiga e leve ao forno

para assar

por 30 minutos

Algoritmo

textual informal

Problema da Torre de Han

ói

Seja a seguinte situa

ção:

 deve-se mover todos os discos do primeiro eixo para o terceiro mantendo-se a ordem original

 em cada movimento, pode-se mover apenas um disco  um disco nunca poderá ser sobreposto por outro maior

(3)

Passo 1:

mova disco menor para terceiro eixo

Algoritmo: Problemas Complexos

Passo 2:

mova disco médio para segundo eixo

(4)

Passo 3:

mova disco menor para segundo eixo

Algoritmo: Problemas Complexos

Passo 4:

mova disco maior para terceiro eixo

(5)

Passo 5:

mova disco menor para primeiro eixo

Algoritmo: Problemas Complexos

Passo 6:

mova disco médio para terceiro eixo

(6)

Passo 7:

mova disco menor para terceiro eixo

Algoritmo: Problemas Complexos

Seq

üência de passos completa:

Passo 1: mova disco menor para terceiro eixo Passo 2: mova disco médio para segundo eixo Passo 3: mova disco menor para segundo eixo Passo 4: mova disco maior para terceiro eixo Passo 5: mova disco menor para primeiro eixo Passo 6: mova disco médio para terceiro eixo Passo 7: mova disco menor para terceiro eixo

(7)

Lembre-se

N

ão existe um algoritmo para

construir algoritmos

a cria

ção de um algoritmo é um exercício de

criatividade (conhecimento)

e

experi

ência (técnica

e pr

ática)

O que

é Programação?

=

ABSTRAÇÃO

!

A realidade é complexa

e rica em detalhes!

(8)

Abstração

Realidade

Realidade

O que você

O que você

abstrai

abstrai

dessa realidade?

dessa realidade?

Abstra

ção

(9)

Abstra

ção

Abstração

=

Operação mental que

observa a realidade e

captura apenas os

aspectos relevantes

(10)
(11)

Abstra

ção

Realidade Realidade

Sistema de Locadora de Veículo

Sistema de Locadora de Veículo

Abstração Abstração + + Programação Programação

A tarefa de

programar sistemas

computacionais

envolve o exerc

ício

constante da

abstra

ção da

realidade e sua

codifica

ção em uma

linguagem de

programa

ção

Sistema Computacional

O que é um

(12)

Sistema

Computacional

Software Hardware Peopleware

Sistema Computacional

A programa

ção de um sistema computacional

pode ser resumida em

3 passos básicos

Processamento

Entrada Saída

Dispositivo

de Entrada Dispositivode Saída

Memória

UCP

(13)

Exemplo 1

Exibir a m

édia de dois números

Processamento

Entrada Saída

Dispositivo

de Entrada Dispositivode Saída

Memória

UCP

6 , 8

(6 + 8) / 2

7

Sistema Computacional

Exemplo 2

Exibir se o aluno est

á aprovado ou

reprovado

Processamento

Entrada Saída

Dispositivo

de Entrada Dispositivode Saída

Memória

UCP

(14)

Sistema Computacional

Arquitetura de um computador hipotético –Modelo de Von Neuman

Unidade Central de Processamento

(1) Dispositivo de Entrada (3) Unidade de Controle (2) Unidade Lógica e Aritmética (4) Memória Principal

(5) Dispositivo

de Saída

Trajeto de dados Trajeto de sinais de controle

Programa

ção de Sistema Computacional

 Tipos de Linguagens de Programação

– 1 -Totalmente codificadas em binário (0´s e 1´s)

– 2 -Usa instruções simbólicas para representar os 0´s e 1´s – 3 -Voltadas para facilitar o raciocínio humano

Linguagem

Assembly

(

Mnem

ô

nica

)

LOAD R1, val1

Linguagem

de

M

á

quina

0010 0001 1110

Linguagem

de

Alto N

í

vel

val2 = val1+val2

(15)

No

ções de Lógica

A l

ógica é o ramo da filosofia que cuida das

regras do bem pensar, ou do pensar correto,

sendo, portanto, um

instrumento do pensar

.

 É também a designação para o estudo de

sistemas prescritivos de

racioc

ínio

, ou seja,

sistemas que definem como se "deveria"

realmente pensar para n

ão errar, usando a

raz

ão,

dedutivamente

e

indutivamente

.

No

ções de Lógica

 Exemplos de aplicação da lógica

– O quarto está fechado e meu livro está no quarto. Então, preciso primeiro abrir o quarto para pegar o livro

– Rosa é mãe de Ana, Paula é filha de Rosa, Júlia é filha de Ana. Então, Júlia éneta de Rosa e sobrinha de Paula

– Todo mamífero é animal e todo cavalo é mamífero. Então, todo cavalo éanimal

(16)

Atividade 1 (10min)

Resolva os seguintes problemas de l

ó

gica

– P1

Uma lesma deve subir um poste de 10m de

altura. De dia sobe 2m e

à

noite desce 1m. Em

quantos dias atingir

á

o topo do poste?

– P2

- Tr

ês gatos comem três ratos em três minutos.

Cem gatos comem cem ratos em quantos

minutos?

– P3

- O pai do padre

é

filho do meu pai. O que eu

sou do Padre?

– P4

- Se um bezerro pesa 75 kg mais meio bezerro,

quanto pesa um bezerro inteiro?

Atividade 1 (10min)

– P5

Qual o pr

ó

ximo n

ú

mero da seq

üência

7,8,10,13,17,?

– P6

Um pai de 80kg e suas 2 filhas (40kg cada),

precisam sair de uma ilha com um barco. Por

é

m a

capacidade do barco

é

de 80kg. Como far

ão para

sair da ilha?

– P7

Usando uma jangada, um campon

ês precisa

atravessar uma cabra, um le

ão e um fardo de

capim para a outra margem do rio. A jangada s

ó

tem lugar para ele e mais outra coisa. O que ele

(17)

RESPOSTAS

- Atividade 1

– R1 - 9(nove) dias. No nono dia a lesma sobe 2(dois) metros, atinge o topo e evidentemente não desce 1 metro

– R2 –3 (três) minutos – R3 –Tio

– R4 –150 (cento e cinqüenta) kg – R5 –22

– R6 –Vão as duas filhas. Uma delas volta. O pai sai. A outra filha volta. As duas filhas saem juntas.

– R7 - Primeiro leve a cabra, volte e pegue o capim; deixe o capim e leve a cabra de volta; deixe a cabra e leve o leão, depois ésó voltar e pegar a cabra.

No

ções de Lógica

Em L

ó

gica um conceito importante

é

o de

Proposição

Você sabe o que é uma

(18)

No

ções de Lógica

Proposição: é um enunciado verbal, ao qual deve ser atribuído, sem ambigüidade, um valor lógico verdadeiro (V) ou falso (F).

– Exemplos de proposições:

 Robson Fidalgo éProfessor (V)  3 + 5 = 10 (F)

 5 < 8 (V)

– Contra-exemplos de Proposições:  Onde você vai ?

 3 + 5

 Os estudantes jogam vôlei. (quais ?)

No

ções de Lógica

Operações Lógicas: são usadas para formar novas proposições a partir de proposições existentes.

– Considerando p e q duas proposições genéricas, pode-se aplicar as seguintes operações lógicas básicas sobre elas

– Definindo a prioridade:

Operação Símbolo Significado Negação ~ Não Conjunção ^ E

(19)

No

ções de Lógica

F v F = F

F ^ F = F

F v V = V

F ^ V = F

~ F = V

V v F = V

V ^ F = F

~ V = F

V v V = V

V ^ V = V

Tabela

~

(Não)

Tabela v (ou)

Tabela ^ (e)

Tabela Verdade

Exemplos de aplica

ção das operações ló

gica

Considere:

 p = 7 é primo = (V)

 q = 4 é impar = (F)

Ent

ão:

 4

N

ÃO é impar = ~q = (~F) = (V)

 7

N

ÃO é primo = ~p = (~V) = (F)

 7 é primo

E

4

N

ÃO é impar = p ^ ~q = (V ^ (~F)) =

(V ^ V) = (V)

(20)

 Exemplos de aplicação das operações lógica (Cont.) – Considere:

 p = 7 é primo = (V)  q = 4 é impar = (F) – Então:

 7 é primo OU4 NÃO é impar = p v ~q = (V v (~F)) =

(V v V) = (V)

 7 é primo OU4 é impar = p v q = (V v F) = (V)  4 é impar OU7 é primo = q v p = (F v V) = (V)  4 é impar OU7 NÃO é primo = q v ~p = (F v (~V)) =

(F v F ) = (F)

No

ções de Lógica

 Exemplos de aplicação das operações lógica – Resumindo:

– Ou seja:

 Não (~) troca o valor lógico. Se éF passa a ser V e vice-versa

 E (^) só tem valor V quando as duas proposições forem V, basta uma proposição ser F para o resultado ser F

p q p ^ q p v q V V V V V F F V F V F V F F F F ~p F F V V pp qq p ^ qp ^ q p v qp v q V V VV VV VV V V FF FF VV F F VV FF VV F F FF FF FF ~p ~p F F F F V V V V

No

ções de Lógica

(21)

Atividade 2

 Considerando p = V e q = F, resolva as seguintes expressões lógicas

– ~p – ~q – p ^ q – p v q – (~p) ^ q – (~p) v q – p ^ (~q) – p v (~q) – (~p) ^ (~q) – (~p) v (~q)

RESPOSTAS

- Atividade 2

 Considerando p = V e q = F, resolva as seguintes expressões lógicas – ~p = F – ~q = V – p ^ q = F – p v q = V – (~p) ^ q = F – (~p) v q = F – p ^ (~q) = V –

(22)

L

ógica de Programação &

Algoritmo

O que é

Programação

de computadores

?

 INSTRUÇÕES

Instruções

Delimitadoras

Servem para especificar o in

ício e o fim

do algoritmo.

in

ício

...

fim

(23)

Declaração

de Vari

áveis

Utilizado para especificar os nomes e os

respectivos tipos das vari

áveis

necess

árias no algoritmo

declare <vari

áveis>: <tipo>;

onde:

<vari

áveis>

- lista de nomes de vari

áveis

separados por v

írgula

<tipo> - inteiro, real, caracter, string, l

ógico

Declara

ção de

Variáveis

Exemplos:

declare a,b,c: real;

declare nome: string;

declare sexo: caracter;

(24)

Bloco de

Comentário

Serve para explicar um determinado

trecho do algoritmo, para torna-lo mais

claro, facilitando seu entendimento por

outras pessoas ou posteriormente.

{ <coment

ário> }

Exemplo:

{ Isto

é um exemplo de comentário }

Instrução de Entrada

Usada para ler dados de entrada do

algoritmo.

leia(<vari

áveis>);

onde:

(25)

Instrução de Entrada

Exemplos:

leia(a,b,c);

leia(nome);

leia(sexo);

leia(pratica_esporte);

Instrução de Saída

Usada para mostrar os resultados do

processamento dos dados de entrada.

escreva(<resultados>);

onde:

(26)

Instrução de Saída

Exemplos:

escreva(

“O valor de D é: ”, D);

escreva(nome, sexo);

escreva(

“Pratica esporte.”);

Instrução de Atribuição

Utilizado para atribuir um determinado

valor a uma vari

ável.

<vari

ável> <expressão>;

onde:

<vari

ável>

- nome de uma vari

ável

(27)

Instrução de Atribuição

Exemplos

D B^2-4*A*C;

nome

“Paulo”;

Pratica_Esporte TRUE;

Sexo

‘M’;

Referências

Documentos relacionados

a) conforme estabelecido pela Portaria Conjunta Nº 1 Capes/CNPq, de 12/12/2007, os bolsistas CAPES, matriculados em programas de pós-graduação no país, poderão receber

§ 1º As reuniões ordinárias do Conselho Técnico da DRI, previstas no calendário, deverão ser convocadas por seu Presidente, mediante comunicação escrita aos demais membros e

Remoto – Quando este LED estiver aceso, indica que o painel MBDCI-Local esta em modo REMOTO, ou seja, os comandos de partida e/ou parada do motor diesel serão executados pelo

Além disso, por meio das funções impulso-resposta, observou-se que um choque de política monetária, representado por um aumento da Selic, causa um impacto negativo sobre a economia

Foram incluídos pa- cientes de ambos os gêneros, com ida- de ≥18 anos, que utilizaram ventilação mecânica não invasiva devido ao quadro de insuficiência respiratória secundária

Resumo da análise de variância efetuada para Densidade básica (DB), comprimento de fibra (CF), espessura da parede da fibra (EPF), comprimento de vaso (CV), diâmetro de vaso

Portanto, partindo dessa necessidade e ainda buscando aprofundar a reflexão acerca das interfaces e da condição atual da memória social, utilizaremos como estudo de caso a pesquisa

Dessa distância, é impossível errar, e a criatura tomba sobre a mesa. Um burburinho junto à porta indica que você foi observado, e o que quer que estivesse espiando você,