Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional...

54
Faculdade de Engenharia da Computação Faculdade de Engenharia da Computação Faculdade de Engenharia da Computação Faculdade de Engenharia da Computação Disciplina: Lógica de Programação Aplicações Práticas de Algoritmos Computacionais 1 Algoritmos Computacionais Lógica e Tipos de Dados Site : http://www1.univap.br/~wagner/ec.html Prof. Responsáveis Wagner Santos C. de Jesus

Transcript of Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional...

Page 1: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Faculdade de Engenharia da ComputaçãoFaculdade de Engenharia da ComputaçãoFaculdade de Engenharia da ComputaçãoFaculdade de Engenharia da ComputaçãoDisciplina: Lógica de Programação

Aplicações Práticas de Algoritmos Computacionais

1

Algoritmos ComputacionaisLógica e Tipos de Dados

Site : http://www1.univap.br/~wagner/ec.htmlProf. Responsáveis

Wagner Santos C. de Jesus

Page 2: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Estrutura de Memória

2

Page 3: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Conceito de Memória

Vem a ser a capacidade

de resgatar lembrançade resgatar lembrança

registradas no passado.

3

Page 4: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Conceito de Variável

Variável vem a ser uma estrutura de dados

que permite que um determinado tipo de

valor seja armazenado na memória.

1 2 3 4 5

4

8 A

4

A

B

C

1 2 3 4 5

Page 5: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Conceito de Tipos de variáveis

Uma variável também é uma forma de

expressar um tipo de dados que será

armazenado na memória, esses dados podem

ser números, símbolos ou datas e horas. Oser números, símbolos ou datas e horas. O

tipo também representa o tamanho reservado

na memória para que se coloque um

determinado dado.

5

Page 6: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Tipos de Variáveis

• Inteiro

• Ponto FlutuantePonto Flutuante

• Caracteres

• Lógico (Booleno)

6

Page 7: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Declaração de variáveis

As declarações de variáveis em um algoritmo sãonormalmente caracterizadas pela declaração(var).

Exemplo:Exemplo:

var

<declaração de variáveis>

7

Page 8: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Estrutura de uma algoritmo

Algoritmo “Finalidade a que se destina”

var

<Declaração da variáveis de memória>

InicioInicio

<Solução do problema>

Fim

8

Page 9: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Declaração de Inteiros

var

x : Inteiro

y : Inteiro

c : Inteiro

InicioInicio

x = 5

y = 2

c = x + y

Escreva(c)

Fim

9

Page 10: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Declaração de ponto flutuante

var

x : flutuante

y : flutuante

c : flutuante

Inicio

10

Inicio

x = 1

y = 2

c = x / y

Escreva(c)

Fim

Page 11: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Declaração Caracteres

var

x : caractere

Inicio

x = “Abacaxi”

Escreva(x)

Fim

11

Page 12: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Declaração Booleano

var

x : logico

a : Inteiro

b : Inteiro

InicioInicio

a = 3

b = 5

x = a > b

Escreva(x)

Fim

12

Page 13: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Exercício Proposto

Pedro precisava saber a medida interna de um

canteiro para colocar flores. Sabendo que as

medidas laterais, do canteiro são equivalentes as

de um triângulo, conforme a figura abaixo, façade um triângulo, conforme a figura abaixo, faça

um o fluxograma para calcular essa medida.

13

a

b

Page 14: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Estruturas de

Controle usando Controle usando

Fluxograma

14

Page 15: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Estruturas

•Condição

•Repetição

15

Page 16: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Estrutura de Condição

16

Condição

Fluxograma

Page 17: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Uma estrutura condicionaldetermina a execução de uma tarefacaso a condição encontrada comoparâmetro em seu interior seja

Estruturas Condicionais

17

parâmetro em seu interior sejaverdadeira. Uma estrutura decondição encontra-se relacionadacom o mecanismo de associação.

Page 18: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Simbologia de teste de condição

<Condição>

Indicadores de fluxo.

S = Caso a condição

seja satisfeita.

18

N = Caso a condição

não seja insatisfeita.

Page 19: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Tipo de estrutura

CondicionalUma estrutura condicional pode ser simples,

composta ou em seqüência:

• Simples quando a condição é satisfeita e o

19

• Simples quando a condição é satisfeita e o

processo é realizado seguindo o fluxo.

• Composta quando a condição não for

satisfeita seguirá para outra fase do processo.

• Quando existem uma série de condições a

serem testadas.

Page 20: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Decisão Simples

20

Page 21: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Decisão Composta

21

Page 22: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Decisão Dupla duas condições

22

Page 23: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Decisão Dupla (E) - &&

23

Page 24: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Decisão Dupla duas condições

24

Page 25: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Decisão Dupla (ou) - ||

25

Page 26: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Exercício proposto

Três pessoas ganharam uma herança, cada

um com diferentes valore; Escrever um

fluxograma que mostre qual deles ganhou a

maior herança.maior herança.

26

Page 27: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Estrutura de condição

em algoritmosem algoritmos

27

Page 28: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Sintaxe - se();então;senão;fim-se

se (<condição>) então

<instruções>

[Senão][Senão]

<instruções>

fim-se

28

Page 29: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Exemplo Prático

se(id >= 18 && id <= 23)

escreva(“Joga no juvenil”)

fim-se

29

Page 30: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Exemplo Prático com senão

se(id >= 18 && id <= 23) então

escreva(“Joga no juvenil”)

senãosenão

escreva(“Não Joga no juvenil”)

fim-se

30

Page 31: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Exemplo Prático operador (||) ou

Se(valor == 5 || valor == 7) então

escreva(“Primo entre 5 e 7”)

senãosenão

escreva(“Não atende a prerrogativa”)

fim-se

31

Page 32: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Séries de Instruções

Condicionais

32

Condicionais

Page 33: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Decisões em Série

33Exemplo decisões Série

Page 34: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Escolha (seqüência de condições)

Determina uma cadeia de condições para número inteiros ou caracteres:

Sintaxe:

Escolha <Var>

<valorN1>: <Instrução-1><valorN1>: <Instrução-1>

<valorN2>: <Instrução-2>

<valorN3>: <Instrução-3>

Senão

<Instrução-4>

Fim Escolha

34

Page 35: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Exemplo de Escolha

Escolha op

1 : Escreva(“Número é I”)

2: Escreva(“Número é II”)2: Escreva(“Número é II”)

3 : Escreva(“Número é III”)

Fim-Escolha

35

Page 36: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Exercício Proposto

Dadas as idades de duas pessoas A e B

escrever o fluxograma e algoritmo que mostre

qual delas é a mais velha.qual delas é a mais velha.

36

Page 37: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Estrutura de

Repetição

37

Repetição

Fluxograma

Page 38: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Conceito

Permite repetir um mesmo processo uma

quantidade n de vezes, dada uma condição de

parada; Sabe-se que a condição de parada irá servir

como uma verificação de convergência.

38

Tipos de repetição:

- Seqüencial

- Condicional

- Processamento Antecipado

Page 39: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Repetição Seqüencial

Repete o processo até

que o intervalo seja

satisfeito.

39

satisfeito.

Page 40: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Exemplo repetição

Seqüencial

40

Page 41: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Repetição Condicional

Caso a condição seja

verdadeira segue o

41

verdadeira segue o

processamento interno e

caso contrário segue-se a

seqüência externa.

Page 42: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Repetição Condicional

42

Page 43: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Repetição com processamento Antecipado

Realiza o processo

obrigatoriamente uma

vez.

43

obrigatoriamente uma

vez.

Page 44: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Repetição com processamento

Antecipado

44

Page 45: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Estrutura de

Repetição

45

Repetição

Algoritmo

Page 46: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Estrutura de repetição seqüencial

para()para <var_inicial> de <valor_Inicial> ate <valor_final> [passo +/-<valor>]

faça

<Instruções>

fim-para

- <Inicial> - Variável de controle do laço.

- <valor_Inicial> - Valor de inicialização do intervalo da repetição.

- <valor_final> - Valor de finalização da repetição.

- [passo] – Valor de passo para o andamento da repetição.

- +/- Valor de incremento ou decremento.

46

Page 47: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Exemplo de repetição Seqüencial

m = 1

para i de 1 ate 10 faça

escreva(m)escreva(m)

m = m + 1

fim-para

47

Page 48: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Exemplo de repetição Seqüencial com

passo incremental

para i de 1 ate 10 step 2 faça

escreva(i)escreva(i)

fim-para

48

Realiza a estrutura de repetição

no intervalo de 1 a 10, com

passos de 2 em 2.

Page 49: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Exemplo de repetição Seqüencial com

passo decremental

para i de 10 ate 1 step -1 faça

escreva(i)escreva(i)

fim-para

49

Realiza a estrutura de repetição no

intervalo de 10 a 1, subtraído 1 da

variável i a cada passo.

Page 50: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Estrutura de

repetição usando repetição usando

Condicional

50

Page 51: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Enquanto(): Repetição condicional

Sintaxe:

enquanto(<condição>) façaenquanto(<condição>) faça

<Instruções>

fim-enquanto

51

Page 52: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Exemplo repetição (enquanto)

a = 1

enquanto( a <= 5) faça

escreva(a)escreva(a)

a = a + 1

fim-enquanto

52

Page 53: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Repetição processamento antecipado

faça

<instruções><instruções>

enquanto <condição>

53

Page 54: Aplicações Práticas de Algoritmos Computacionais Lógica e ... · Tipo de estrutura Condicional Uma estrutura condicional pode ser simples, composta ou em seqüência: • Simples

Exemplo prático

a = 0

faça

a = a + 1

escrever(a)

Enquanto a <= 5

54