disciplina algoritmos e programação · definição de algoritmo um algoritmo é formalmente uma...

Post on 11-Nov-2018

222 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Disciplina Algoritmos e Programação

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

Prof. Wagner Santos C. de Jesuswsantoscj@gmail.com

Curso: Análise e Desenvolvimento de Sistemas

Conceito de Algoritmo

2

Definição de Algoritmo

Um algoritmo é formalmente uma seqüência finita depassos que levam a execução de uma tarefa. Podemospensar em algoritmo como uma receita, umaseqüência de instruções que dão cabo de uma metaespecífica. Estas tarefas não podem ser redundantesnem subjetivas na sua definição, devem ser claras eprecisas.

3

Formas de descrever um Algoritmos

• Pseudo código• Escrita formal em uma Linguagem

de Programação• Expressões Matemáticas• Simbologias

4

Aplicações de Algoritmos

• Engenharia • Biologia• Línguas• Psicologia• Física• Matemática• Artes

5

Tipos de Algoritmos

• Português Estruturado (Pseudocódigo)• Descrição Narrativa• Fluxograma (Diagrama de Blocos)

6

Exemplo de Português Estruturado

AlgortimoInicio

Declare n1,n2, m NumericoEscreva “Digite dois números”Leia n1, n2M � n1 * n2 Escreva “Multiplicação = “, M

fim

7

Descrição Narrativa

1. Obter as duas notas2. Calcular a média3. Se media for maior ou igual 7 4. O aluno foi Aprovado5. Senão o aluno não foi aprovado

8

Conceito de Fluxograma (Diagrama de Blocos)

9

Conceito de Fluxograma

Fluxograma é umarepresentação de um processoque utiliza símbolos gráficos paradescrever passo a passo anatureza das idéias e o fluxo.

10

Desenvolvendo um Algoritmo

11

Procedimento para montagem

O algoritmo deve ser fácil de seinterpretar e fácil de codificar. Ou seja,ele deve ser o intermediário entre alinguagem falada e a linguagem deprogramação.

12

Conceito de pseudocódigo

Os algoritmos são descritos em umalinguagem chamada pseudocódigo.Este nome é uma alusão à posteriorimplementação em uma linguagem deprogramação.

Exemplo:

Inicioleia(n)escreva(n)

fim13

Regras para construção de algoritmos

1. Usar somente um verbo por frase2. Imaginar que você está

desenvolvendo um algoritmo que será compartilhado com outras pessoas.

3. Usar frases curtas e simples4. Ser objetivo5. Procurar usar palavras que não

tenham sentido dúbio 14

15

Teste de Mesa (Simulação)

Após desenvolver um algoritmo eledeverá sempre ser testado. Esteteste é chamado de TESTE DE MESA(Simulação), que significa, seguir asinstruções do algoritmo de maneiraprecisa para verificar se o procedimentoutilizado está correto ou não.

16

Teste de Mesa (Descrição Narrativa)

1. Receber código da peça2. Receber valor peça3. Receber quantidade de peça4. Calcular o valor total de peça (Quantidade *

Valor de peças)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

17

Problema Exemplo

Duas pessoas desconhecidas A e Bforneceram suas idades para realizaçãode uma pesquisa. Determinar quantosanos de diferença de idade existe entreA e B.

18

Solução Problema

1. Entrar com a idade de A2. Entrar com a idade de B3. Subtrair a idade A da Idade de B4. Mostra resultado da subtração

19

Construção de Algoritmos

20

Conceitos Básicos para Construção de um algoritmo

•Atribuição •Condição •Repetição

21

Atribuição

Vem a ser quando uma variávelou espaço reservado na memóriasão ocupados por valores ouresultados de expressões lógicas,aritméticas e de símbolosalfanuméricos.

Exemplo: X = 1

22

Exemplo de raciocínio algorítmico atribuição

23

5=A B

B= 55

5

Atribuição de valores usando variáveis

CondiçãoVem a ser uma verificação de quando umprerrogativa acontece ou não devendo serexecutada uma tarefa em caso de afirmação detal prerrogativa.

Exemplo: Se (saldo < 0) “Saldo Negativo”caso contrário “Saldo Positivo”

25

Repetição

Ocorre quando uma determinada tarefa precisa serexecutada dentro de um intervalo de iterações definidopelo problema e ou necessidade do processo.

Exemplo: Tempo 1 SegundoTempo 2 SegundoTempo 3 Segundo

:

26

Exemplo de repetição

a = 0a <= 10

Tempo (a) Segundosa = a + 1

27

Elementos básico de um Fluxograma

28

Algoritmo(Diferença de Idade)

29

Operadores Matemáticos para Construção de

Algoritmos

30

Operadores Matemáticos

•Aritméticos•Relacionais•Lógicos

31

Operadores Aritméticos

(+) - soma(-) - Subtração(*) - Multiplicação(/) - Divisão(%) - Módulo (Resto da Divisão)

32

Operadores Aritméticos

33

Exemplo de operações aritméticas

bac +=

bac −=

bac .=

k

x

b

ac −=

)(3 bac −=

bac +=

bac *=

Convencional Computacional

)/()/( kxbac −=

)(*3 bac −=34

Operadores Relacionais

>- Maior que< - Menor que= = - Igual a ( somente para números)!= - Diferente de>= - Maior ou Igual<= - Menor ou Igual

35

Exemplo de operador relacionala = 3b = 4

c = a < b true c = a != b truec = a == B false

36

Operadores Lógicos.

And (E) - &&Or (ou) - ||Not (não) - !

37

Operador OR (Ou)

A B Saída

0 0 0

0 1 1

1 0 1

1 1 1

38

Operador AND (E)

A B Saída

0 0 0

0 1 0

1 0 0

1 1 1

39

Operador Not (Não)

A Saída

1 0

0 1

40

Exemplo de operador lógicoa = 3b = 4

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

41

Exemplo de Operações Relacionais

42

B = 9 e C = 9

43

A = B > C

A = Falso

B = 9 e C = 9

44

A = B >= C

A = Verdadeiro

B = 9 e C = 9

45

A = B < C

A = FALSO

B = 9 e C = 9

46

A = B < C

A = FALSO

B = 8 e C = 8

47

A = B != C

A = FALSO

Exemplo de Operações Booleanas

48

B = 7 ; C = 8 e D = 3

49

A = (B > C) e (B < D)

A = FALSO

B = 7 ; C = 8 e D = 3

50

A = (B > C) ou (D < B)

A = Verdadeiro

B = 7 ; C = 8

51

A = not(B > C)

A = Verdadeiro

B = 7 ; C = 8; D = 5; E=9

52

A =(B>E) e ((B!=C) ou (E>C))

A = FALSO

Exercício Proposto

Paulinho tinha n balas e Pedrinho tinhatrês vezes as balas de Paulinho e aindaganhou mais cinco balas de sua avó. ComQuantas bala ficou Pedrinho.

53

Formalização de um Algoritmo

• Atribuição: a <- n (a = n)

• Condição: se() [então, Senão]

• Repetição: Para()Enquanto()

54

top related