Conceitos Práticos de Lógica de Programação · Conceito de pseudocódigo Os algoritmos são...

Preview:

Citation preview

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

Conceitos Práticos de Lógica de Programação

1

Programação

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

Wagner Santos C. de Jesus

Conceito de

AlgoritmoAlgoritmo

2

Definição de Algoritmo

Um algoritmo é formalmente uma seqüênciafinita de passos que levam a execução de umatarefa. Podemos pensar em algoritmo comouma receita, uma seqüência de instruções quedão cabo de uma meta específica. Estas tarefasdão cabo de uma meta específica. Estas tarefasnão podem ser redundantes nem subjetivas nasua definição, devem ser claras e precisas.

3

Formas de descrever um Algoritmos

• Pseudo código

• Escrita formal em uma Linguagem

de Programação.de Programação.

• Expressões Matemáticas

• Simbologias

4

Aplicações de Algoritmos

• Engenharia

• Biologia

• Línguas

• Psicologia• Psicologia

• Física

• Matemática

• Artes

5

Tipos de Algoritmos

• Português Estruturado (Pseudocódigo)

• Descrição Narrativa

• Fluxograma (Diagrama de Blocos)• Fluxograma (Diagrama de Blocos)

6

Exemplo de Português Estruturado

Algortimo

Inicio

Declare n1,n2, m Numerico

Escreva “Digite dois números”Escreva “Digite dois números”

Leia n1, n2

M � n1 * n2

Escreva “Multiplicação = “, M

fim

7

Descrição Narrativa

1. Obter as duas notas

2. Calcular a média

3. Se media for maior ou igual 7 3. Se media for maior ou igual 7

4. O aluno foi Aprovado

5. Senão o aluno não foi aprovado

8

Conceito de Fluxograma

(Diagrama de Blocos)(Diagrama de Blocos)

9

Conceito de Fluxograma

Fluxograma é uma representação de

um processo que utiliza símbolos

gráficos para descrever passo a passográficos para descrever passo a passo

a natureza das idéias e o fluxo.

10

Desenvolvendo

um Algoritmoum Algoritmo

11

Procedimento para

montagem

O algoritmo deve ser fácil de se

interpretar e fácil de codificar. Ou seja, eleinterpretar e fácil de codificar. Ou seja, ele

deve ser o intermediário entre a linguagem

falada e a linguagem de programação.

12

Conceito de pseudocódigo

Os algoritmos são descritos em uma

linguagem chamada pseudocódigo. Este

nome é uma alusão à posterior

implementação em uma linguagem de

programação.

Exemplo:

Inicio

leia(n)

escreva(n)

fim13

Regras para construção de

algoritmos

1. Usar somente um verbo por frase

2. Imaginar que você está desenvolvendo

um algoritmo que será compartilhado um algoritmo que será compartilhado

com outras pessoas.

3. Usar frases curtas e simples

4. Ser objetivo

5. Procurar usar palavras que não tenham

sentido dúbio14

15

Exemplo de raciocínio

algorítmico

https://www.youtube.com/watch?v=llX2SpDkQDc 16

Algoritmos Genéticos

Algoritmos genéticos são uma classe particular e algoritmos

evolutivos que usam técnicas inspiradas pela biologia

evolutiva como hereditariedade, mutação, seleção

natural e recombinação.

A = (V, Σ ,S,P)V = Conjunto de variáveis. {CO,O }V = Conjunto de variáveis. {CO,O2}Σ = Estado das variáveis. {0,1}S = Símbolo inicial a ser considerado. {CO}P = População (número de elementos).

Monóxido de Carbono atacando células Pulmonares

17

Teste de Mesa (Simulação)

Após desenvolver um algoritmo ele

deverá sempre ser testado. Este teste é

chamado de TESTE DE MESA (Simulação),

que significa, seguir as instruções doque significa, seguir as instruções do

algoritmo de maneira precisa para verificar

se o procedimento utilizado está correto ou

não.

18

Teste de Mesa

(Descrição Narrativa)

1. Receber código da peça

2. Receber valor peça

3. Receber quantidade de peça

4. Calcular o valor total de peça Quantidade * Valor4. Calcular o valor total de peça Quantidade * Valor

5. Mostrar Código da peça e o Valor Total

Código Valor Quantidade Total

540.00 * 30

AF3289 540.00 30 16,200.00

19

Problema Exemplo

Duas pessoas desconhecidas A e B

forneceram suas idades para realização de

uma pesquisa. Determinar quantos anos deuma pesquisa. Determinar quantos anos de

diferença de idade existe entre A e B.

20

Solução Problema

1. Entrar com a idade de A

2. Entrar com a idade de B

3. Subtrair a idade A da Idade de B3. Subtrair a idade A da Idade de B

4. Mostra resultado da subtração

21

Construção de

AlgoritmosAlgoritmos

22

Conceitos Básicos para Construção

de um algoritmo

•Atribuição

•Condição •Condição

•Repetição

23

Atribuição

Vem a ser quando uma variável ou

espaço reservado na memória são

ocupados por valores ou resultadosocupados por valores ou resultados

de expressões lógicas, aritméticas e

de símbolos alfanuméricos.

Exemplo: X = 1

24

Condição

Vem a ser uma verificação de quando um

prerrogativa acontece ou não devendo ser

executada uma tarefa em caso de afirmação

de tal prerrogativa.de tal prerrogativa.

Exemplo: Se (saldo < 0) “Saldo Negativo”

caso contrário “Saldo Positivo”

25

Repetição

Ocorre quando uma determinada tarefa precisaser executada dentro de um intervalo deiterações definido pelo problema e ounecessidade do processo.

Exemplo: Tempo 1 Segundo

Tempo 2 Segundo

Tempo 3 Segundo

:

26

Exemplo de repetição

a = 0

a <= 10a <= 10

Tempo (a) Segundos

a = a + 1

27

Elementos básico de um

Fluxograma

28

Algoritmo(Diferença de Idade)

29

Operadores Matemáticos para

Construção de AlgoritmosConstrução de Algoritmos

30

Operadores Matemáticos

•Aritméticos

•Relacionais•Relacionais

•Lógicos

31

Operadores Aritméticos

(+) - soma

(-) - Subtração

(*) - Multiplicação(*) - Multiplicação

(/) - Divisão

(%) - Módulo (Resto da Divisão)

32

Exemplo de operações aritméticas

bac +=

bac −=

bac .=

bac +=

bac +=

bac *=

Convencional Computacional

bac .=

k

x

b

ac −=

)(3 bac −=

bac *=

)/()/( kxbac −=

)(*3 bac −=33

Operadores Relacionais

>- Maior que

< - Menor que

= = - Igual a ( somente para números)= = - Igual a ( somente para números)

!= - Diferente de

>= - Maior ou Igual

<= - Menor ou Igual

34

Exemplo de operador relacional

a = 3

b = 4

c = a < b truec = a < b true

c = a != b true

c = a == B false

35

Operadores Lógicos.

And (E) - &&

Or (ou) - ||Or (ou) - ||

Not (não) - !

36

Operador OR (Ou)

A B Saída

0 0 0

0 1 10 1 1

1 0 1

1 1 1

37

Operador AND (E)

A B Saída

0 0 0

0 1 00 1 0

1 0 0

1 1 1

38

Operador Not (Não)

A Saída

1 01 0

0 1

39

Exemplo de operador lógico

a = 3

b = 4

c = ((a+b) > b) && (a < b ) truec = ((a+b) > b) && (a < b ) true

c = (a != b) || (a > b) true

c = !(a != b) false

40

Exercício Proposto

Paulinho tinha n balas e Pedrinho tinha três

vezes as balas de Paulinho e ainda ganhou mais

cinco balas de sua avó. Com Quantas bala ficoucinco balas de sua avó. Com Quantas bala ficou

Pedrinho.

41

Formalização de um Algoritmo

• Atribuição:

a <- n

• Condição:

se() [então, Senão]se() [então, Senão]

• Repetição:

Para()

Enquanto()

42

Recommended