• Nenhum resultado encontrado

AULA 6 MODELOS E SIMULAÇÃO DE SISTEMAS ALGORITMOS

N/A
N/A
Protected

Academic year: 2019

Share "AULA 6 MODELOS E SIMULAÇÃO DE SISTEMAS ALGORITMOS"

Copied!
23
0
0

Texto

(1)

AULA 6

MODELOS E SIMULAÇÃO DE SISTEMAS

ALGORITMOS

Autor: Anibal Tavares de Azevedo

ALGORITMOS E

PROGRAMAÇÃO DE COMPUTADORES

ALGORITMOS

O que é um Algoritmo?

É uma sequência finita de passos que resolve um dado problema ! Um bom exemplo de algoritmo é uma receita de bolo, pois a ordem dos passos pode mudar o resultado final!

+

(2)

ALGORITMOS

1 2

3

4

ALGORITMOS

Um algoritmo é conjunto finito de instruções, com uma ou mais operações capazes de serem executadas (por um computador) em tempo finito, para realização de uma tarefa específica.

x

y

(3)

ALGORITMOS

ALGORITMOS

(4)

IF/ELSE – ESTRUTURA DE SELEÇÃO

(5)

IF/ELSE – ESTRUTURA DE SELEÇÃO

Exemplo 1: Escrever um algoritmo, um programa e um fluxograma para o problema de ler duas variáveis a e b e imprimir a de maior valor.

Algoritmo de maior valor

Variáveis a,b; Início

Leia(a, b);

Se(a < b) então

imprimir(b); //impressao de b (maior que a)

Senão

imprimir(a); //impressao de a (maior que b)

Fim Se

#include <stdio.h> #include <stdlib.h>

main() {

int a, b;

printf(“Digite a e b: ”); scanf(“%d %d”, &a, &b); if(a < b)

printf(“%d”, b); //impressao de b (maior que a)

else

printf(“%d”, a); //impressao de a (maior que b)

}

Exemplo 1: Escrever um algoritmo, um programa e um fluxograma para o problema de ler duas variáveis a e b e imprimir a de maior valor.

(6)

Fluxograma: principais símbolos empregados

IF/ELSE – ESTRUTURA DE SELEÇÃO

Fluxograma de maior valor

V

Início

Ler (a, b);

a < b

Final

F

Imprime(a) Imprime(b)

Exemplo 1: Escrever um algoritmo, um programa e um fluxograma para o problema de ler duas variáveis a e b e imprimir a de maior valor.

(7)

Fluxograma de maior valor

V

Início

Ler (a, b);

a < b

Final

F

Imprime(b) Imprime(a)

SE

SENÃO

Condição lógica

Exemplo 1: Escrever um algoritmo, um programa e um fluxograma para o problema de ler duas variáveis a e b e imprimir a de maior valor.

IF/ELSE – ESTRUTURA DE SELEÇÃO

ALGORITMOS

(8)

ALGORITMOS

Exercício 2: Escrever um algoritmo para o problema de precificação dinâmica.

Caso 1

x

y

f(x) = volume de vendas

ymin = volume mínimo de vendas

Caso 2

x

y

ymin

f(x)

f(x) = volume de estoque ymin = volume mínimo estoque

ymin

f(x)

ALGORITMOS

Exercício 2: Escrever um algoritmo para o problema de precificação dinâmica.

Caso 1

x

y

f(x) = volume de vendas

ymin = volume mínimo de vendas

x

y

ymin

f(x)

g(x) = valor do preço

g(x)

Caso 1

(9)

ALGORITMOS

Exercício 2: Escrever um algoritmo para o problema de precificação dinâmica.

Caso 2

x

y

f(x) = volume de estoque ymin = volume mínimo estoque

ymin

f(x)

x

y

g(x) = valor do preço

g(x)

t

Caso 2

t

ALGORITMOS

(10)

ALGORITMOS

Exercício 2: Escrever um algoritmo para o problema de precificação dinâmica.

Algoritmo de precificação dinâmica simples

Leia(preco, vendas, estoque, valormin, estoquemin);

Se(vendas < valormin) então

preco ←preco * 0.7; *Redução de 70% no preço*

Senão

Se(estoque < estoquemin) então

preco ←preco * 1.2; *Aumento de 20% no preço*

Fim Se

Fim Se

(11)

A estrutura de repetição (Enquanto ou while) consiste em realizar a repetição de comandos até que uma condição lógica torne-se falsa. Se a condição lógica, em algum momento, não assumir o valor lógico falso, então, teremos um laço infinito!

WHILE - ESTRUTURA DE REPETIÇÃO

Algoritmo de Limpeza

Variáveis sujeira, limpeza; Início

Leia(sujeira, limpeza);

Enquanto(limpeza < sujeira)então Imprimir(Limpar);

sujeira = sujeira – 1;

Fim Enquanto F

condição V comandos

While (condição)

(12)

Observe que no exemplo da charge o laço está incorreto, pois ele realiza a ação até que a

condição lógica torne-se verdadeira !

WHILE - ESTRUTURA DE REPETIÇÃO

F

condição V comandos

While (condição)

(13)

Terminador

WHILE - ESTRUTURA DE REPETIÇÃO

(14)

Decisão ou

Condição lógica

WHILE - ESTRUTURA DE REPETIÇÃO

ALGORITMOS

1

Ser finito: terminar após um número finito depassos.

2

Serprecisão o que deve ser realizado.exato: seus passos devem indicar com

Um algoritmo sempre deve:

3

Tertransformadas em dados, de saída.dados: de entrada, a serem processados e

(15)

ALGORITMOS

Um algoritmo pode ser descrito por meio de pseudo-código, fluxograma ou uma linguagem de programação específica. 1 Pseudo-código vendas < valormin 2 Fluxograma Sim Não #include <stdio.h> main() {

if (vendas < valormin); }

3 Código em linguagem C

ALGORITMOS

Exercício 3: Escrever um fluxograma para o algoritmo do problema de precificação dinâmica.

Algoritmo de precificação dinâmica simples

Leia(preco, vendas, estoque, valormin, estoquemin);

Se(vendas < valormin) então

preco ←preco * 0.7; *Redução de 70% no preço*

Senão

Se(estoque < estoquemin) então

preco ←preco * 1.2; *Aumento de 20% no preço*

Fim Se

(16)

ALGORITMOS

Fluxograma: principais símbolos empregados

ALGORITMOS

Exercício 3: Escrever um fluxograma para o algoritmo do problema de precificação dinâmica.

V

Início

Ler preco, vendas, estoque, Valormin, estoquemin;

vendas< valormin

preco←preco*0.7

Final

F

(17)

ALGORITMOS

Exercício 3: Escrever um fluxograma para o algoritmo do problema de precificação dinâmica.

V

Início

Ler preco, vendas, estoque, Valormin, estoquemin;

vendas< valormin

preco←preco*0.7

Final

F

Verificar aumento de preço Atribuição de valor

SE

SENÃO

Condição lógica

ALGORITMOS

Exercício 3: Escrever um fluxograma para o algoritmo do problema de precificação dinâmica.

V

estoque< estoquemin

preco←preco*1.2

F

(18)

ALGORITMOS

Exercício 3: Escrever um fluxograma para o algoritmo do problema de precificação dinâmica.

V

estoque< estoquemin

preco←preco*1.2

F

Verificar aumento de preço Condição lógica

SE

SENÃO

ALGORITMOS

Exercício 3: Escrever um fluxograma para o algoritmo do problema de precificação dinâmica.

V

Início

Ler preco, vendas, estoque, Valormin, estoquemin;

vendas< valormin

preco←preco*0.7

Final

F

Verificar aumento de

(19)

ALGORITMOS

No paradigma de programação estruturada, os Programas são escritos considerando apenas combinação adequadas de 3 estruturas básicas:

Início

Ler preco, vendas, estoque, Valormin, estoquemin;

SEQUÊNCIA

1

ALGORITMOS

No paradigma de programação estruturada, os Programas são escritos considerando apenas combinação adequadas de 3 estruturas básicas:

V

estoque< estoquemin

preco←preco*1.2

F

SELEÇÃO SIMPLES

(20)

ALGORITMOS

V

vendas< valormin

preco←preco*0.7

F

No paradigma de programação estruturada, os Programas são escritos considerando apenas combinação adequadas de 3 estruturas básicas:

SELEÇÃO COMPOSTA

2

SE

SENÃO

ALGORITMOS

V

vendas< valormin

preco←preco*0.7

F

No paradigma de programação estruturada, os Programas são escritos considerando apenas combinação adequadas de 3 estruturas básicas:

ITERAÇÃO

3

(21)

ALGORITMOS

As estruturas básicas podem ser combinadas entre si, utilizando apenas duas regras:

REGRA DO ANINHAMENTO

1

Um retângulo de uma estrutura pode ser substituído por uma outra estrutura qualquer.

REGRA DO EMPILHAMENTO

2

O ponto de saída de uma estrutura pode ser conectado ao ponto de entrada de outra estrutura.

ALGORITMOS

As estruturas básicas podem ser combinadas entre si, utilizando apenas duas regras:

V

Início

Ler preco, vendas, estoque, Valormin, estoquemin;

vendas< valormin

preco←preco*0.7

(22)

ALGORITMOS

As estruturas básicas podem ser combinadas entre si, utilizando apenas duas regras:

V

Início

Ler preco, vendas, estoque, Valormin, estoquemin;

vendas< valormin

preco←preco*0.7

Final

F

Verificar aumento de preço

REGRA DO EMPILHAMENTO

2

ALGORITMOS

As regras podem ser aplicadas quantas vezes forem necessárias, e em qualquer ordem.

Os fluxogramas resultantes da aplicação dessas regras constituem o conjunto de todos os fluxogramas estruturados possíveis.

x

y

(23)

Referências

Documentos relacionados

Ainda, neste trabalho, houve alguns aspectos em que significantemente não ocorreram alterações, como a presença de sub-harmônicos em M1XM2XM3, a presença de

O grupo de ramos Incêndio e Outros Danos em Coisas permanece aquele em que os prémios de resseguro cedido apresentam maior expressão em termos absolutos, tendo-se verificado

A incidência de FO no estado de Sergipe obtida através dos dados do SINASC, no mesmo período da pesquisa, foi de 0,54 novos casos de fissura para cada 1000 nascidos vivos..

Entretanto, encontramos evidências neste trabalho de que estas variáveis não satisfazem as condições para serem utilizadas como instrumentos (Cap.2, seção 3.1.).

Assim como a Natureza, a leitura de folhetos de cordel constituiu uma fonte de inspiração para fazer poesia.. Na comunidade em que vivia Patativa, a leitura dos folhetos de

As quinolonas já têm sido relatadas como seguras para o tratamento da otite, sem apresentar sinais de ototoxicidade nos animais (GOTTHELF, 2004), e não foram observados

Observações como esta ganham peso ainda maior quando se leva em conta que, num país desprovido de cultura científica, os veículos de comunicação representam o canal mais

É relevante, ainda, considerar que os termos “reciclagem/ formação” indiciam a vontade que o especialista, reconhecido como portador de um saber, tem de