74
Anhanguera Educacional Faculdade de Sorocaba ATPS: Construção de Algoritmos Lucas Fernandes França - 4211666970 Lucas Maciel de Macedo - 4203790279 Profª Edna Dias Mateus

ATPS Construção de Algorítmos COMPLETO

Embed Size (px)

Citation preview

Page 1: ATPS Construção de Algorítmos COMPLETO

Anhanguera EducacionalFaculdade de Sorocaba

ATPS: Construção de Algoritmos

Lucas Fernandes França - 4211666970Lucas Maciel de Macedo - 4203790279

Profª Edna Dias Mateus

Sorocaba2012

Page 2: ATPS Construção de Algorítmos COMPLETO

LUCAS FERNANDES FRANÇALUCAS MACIEL DE MACEDO

Construção de Algoritmos

Trabalho acadêmico apresentado ao Curso de Tecnologia em Análise e Desenvolvimento de Sistemas para a obtenção de nota para o 2º semestre.

Sorocaba2012

Page 3: ATPS Construção de Algorítmos COMPLETO

Resumo

ATPS de Construção de Algoritmos, que constituem nos primeiros passos do uso de linguagem C.

Page 4: ATPS Construção de Algorítmos COMPLETO

ConteúdoRelatório do Sistema 01.........................................................................................................................4

Primeiro Desafio:...............................................................................................................................4

1.1 Dados de Entrada:.....................................................................................................................4

1.2 Resultados Alcançados.............................................................................................................5

Relatório do Sistema 02.........................................................................................................................5

Conversor de Moedas: Apresentação em Pseudocódigo.....................................................................5

Conversão das 10 moedas para as 10 moedas.................................................................................5

Etapa 3.................................................................................................................................................44

3.1 Novos dados a serem incorporados no algoritmo................................................................44

3.2 Processamento necessário para encontrar o valor médio, o menor e o maior valor da cotação dentro de um mês:..............................................................................................................45

3.3 Pseudocódigo do algoritmo alterado....................................................................................46

Etapa 4.................................................................................................................................................48

4.1 Pseudocódigo do algoritmo que foi alterado para atender o solicitado no Passo 2.............48

Algoritmo cotação2......................................................................................................................48

4.2 Estudos desenvolvidos..........................................................................................................56

Page 5: ATPS Construção de Algorítmos COMPLETO

Relatório do Sistema 01

O problema proposto nos pede para elaborar um algoritmo que resolva o problema de uma

empresa. Ela precisa de um programa que faça a conversão de moedas. De dólar para reais, de

reais para dólar, euro e dólar americano.

O primeiro passo é identificar os dados de entrada do problema, os processamentos

necessários para encontrar o que é pedido e os dados de saída. Usando essas informações,

deveremos elaborar o algoritmo em descrição narrativa, em pseudocódigo e em fluxograma.

Primeiro Desafio:

1.1 Dados de Entrada:

Moeda a qual possuímos que é o dólar.

Moeda a qual desejamos fazer a conversão, que é o real.

O cálculo necessário para a conversão.

Como o problema nos deu a cotação do dólar, sendo o real mais valorizado (R$ 1,00 ≈

US$1,94).

Processamento:

Considerar o Valor de Venda da Moeda;

A moeda Real deverá ser a referência, ou seja, R$1,00 é igual a xxx dólares;

Dados de Saída:

Será impresso na tela o valor calculado da moeda desejada.

Os processamentos se definem pela fórmula de:

a) Reais*2.03 = dólares

b) Dólares/2.03 = reais

4

Page 6: ATPS Construção de Algorítmos COMPLETO

c) Reais*2.61 = euros

d) Reais*1.95 =Dólares Canadenses.

Os dados de saída do problema, serão conforme a escolha do usuário. Ou será em dólar, ou

euros, ou dólar canadense ou então em reais.

1.2 Resultados Alcançados

Com o usufruto de várias alternativas de soluções de problemas, foi possível cria um arquivo

executável capaz de converter o real em algumas outras moedas. Com isso, foi alcançado o

objetivo de gerar um executável capaz de efetuar a conversão do real para a moeda escolhida

pelo cliente.

Relatório do Sistema 02

Conversor de Moedas: Apresentação em Pseudocódigo

Conversão das 10 moedas para as 10 moedas.

Inicio;

real: moeda_real, valor_dolar, dolar, valor_dolarcnd, dolar_cnd, valor_euro, euro, real_euro,

real_dolar, real_dolarcnd valor_dolaraus, dolar_aus real_dolaraus, rand, valor_rand,

real_rand, rupiaindiana valor_rupia, real_rupia, yuan, valor_yuan real_yuan, iene, valor_iene,

real_iene, pesoarg, valor_pesoarg, real_pesoarg;

inteiro: escolha1, escolha2;

valor_dolar = 1.94;

5

Page 7: ATPS Construção de Algorítmos COMPLETO

valor_dolarcnd = 1.80;

valor_euro = 2.16; ;

valor_dolaraus = 2.22

valor_rand = 0.23;

valor_rupia = 0.03;

valor_yuan = 0.34;

valor_iene = 0.02;

valor_pesoarg = 0.44;

real_euro = 2.16;

real_dolar = 1.94;

real_dolarcnd = 1.80;

real_dolaraus = 2.22;

real_rand = 0.22;

real_rupia = 0.03;

real_yuan = 0.34;

real_iene = 0.02;

real_pesoarg = 0.44;

Algoritmo Cotação

Inicio;

escreva ("***Programa que converte moedas***");

escreva ("Deseja Converter qual moeda ?");

6

Page 8: ATPS Construção de Algorítmos COMPLETO

escreva ("Pressione: 1 - Real, 2 - Dolar, 3 - Dolar Canadense, 4 – Euro, 5 – Dolar Australiano,

6 - Rand, 7 - Rupia Indiana, 8 – Yuan, 9 – Iene, 10 – Peso Argentino");

leia(escolha1);

se (escolha1==1)então;

escreva ("Voce escolheu converter Real!!");

escreva ("Deseja Converter a moeda Real para qual moeda ?");

escreva ("1 - Dolar, 2 - Dolar Canadense, 3 – Euro, 4 – Dolar Australiano, 5- Rand, 6 –

Rupia Indiana, 7 – Yuan, 8- Iene, 9 – Peso Argentino: ");

leia (escolha2);

se (escolha2==1) então;

escreva("Voce decidiu converter da moeda Real para Dolar !");

escreva("Insira o valor em Reais: ");

leia(moeda_real);

dolar = moeda_real * valor_dolar;

escreva ("Esse valor em Reais equivalem a Dólares.",dolar);

fim se;

fim se;

se (escolha2==2)então;

escreva("Voce decidiu converter da moeda Real para Dolar Canadense");

escreva("Insira o valor em Reais: ");

leia(moeda_real);

dolar_cnd = moeda_real * valor_dolarcnd;

7

Page 9: ATPS Construção de Algorítmos COMPLETO

escreva ("Esse valor em Reais equivalem a Dólares Canadense.",dolar_cnd);

fim se;

se (escolha2==3)então;

escreva("Voce decidiu converter da moeda Real para Euro !");

escreva("Insira o valor em Reais: ");

leia(moeda_real);

euro = moeda_real * valor_euro;

escreva ("Esse valor em Reais equivalem a Euros",euro);

fim se;

se (escolha2==4)então;

escreva("Voce decidiu converter da moeda Real para Dolar Australiano!");

escreva("Insira o valor em Reais: ");

leia(moeda_real);

dolar_aus = moeda_real * valor_dolaraus;

escreva ("Esse valor em Reais equivalem a Dólares Australianos", dolar_aus);

fim se;

se (escolha2==5)então;

escreva("Voce decidiu converter da moeda Real para Rand !");

escreva("Insira o valor em Reais: ");

8

Page 10: ATPS Construção de Algorítmos COMPLETO

leia(moeda_real);

rand = moeda_real /valor_rand;

escreva ("Esse valor em Reais equivalem a Rand", rand);

fim se;

se (escolha2==6)então;

escreva("Voce decidiu converter da moeda Real para Rupia Indiana !");

escreva("Insira o valor em Reais: ");

leia(moeda_real);

rupiaindiana = moeda_real / valor_rupia;

escreva ("Esse valor em Reais equivalem a Rupias Indianas", rupia);

fim se;

se (escolha2==7)então;

escreva("Voce decidiu converter da moeda Real para YUAN!");

escreva("Insira o valor em Reais: ");

leia(moeda_real);

yuan = moeda_real / valor_yuan;

escreva ("Esse valor em Reais equivale a Yuan”, yuan);

fim se;

se (escolha2==8)então;

9

Page 11: ATPS Construção de Algorítmos COMPLETO

escreva("Voce decidiu converter da moeda Real para Iene !");

escreva("Insira o valor em Reais: ");

leia(moeda_real);

iene = moeda_real /valor_iene;

escreva ("Esse valor em Reais equivalem a Ienes",iene);

fim se;

se (escolha2==9)então;

escreva("Voce decidiu converter da moeda Real para Peso Argentino !");

escreva("Insira o valor em Reais: ");

leia(moeda_real);

pesoarg = moeda_real / valor_pesoarg;

escreva ("Esse valor em Reais equivalem a Pesos Argentinos", pesoarg);

fim se;

fim se;

senão se(escolha1==2) então;

escreva("Você escolheu converter em Dolar !!!");

escreva("Deseja converter a moeda Dolar para qual moeda ?");

escreva("Pressione: 2 - Dolar Canadense, 3 - Euro, 4 – Real, 5 – Dolar Australiano, 6 -

Rand, 7 - Rupia Indiana, 8 – Yuan, 9 – Iene, 10 – Peso Argentino");

leia(escolha2);

10

Page 12: ATPS Construção de Algorítmos COMPLETO

se (escolha2==1) então

escreva(“Opção invalida! Escolha outra.”);

fim se;

se (escolha2==2) então;

escreva("Voce decidiu converter da moeda Dolar para Dolar Canadense !");

escreva("Insira o valor em Dólares: ");

leia(dolar);

dolar_cnd = dolar / valor_dolarcnd;

escreva("Esse valor em Dólares equivalem a Dólares Canadense.",dolar_cnd);

fim se;

se (escolha2==3) então;

escreva("Voce decidiu converter da moeda Dolar para Euro");

escreva("Insira o valor em Dólares: ");

leia(dolar);

euro = dolar * valor_euro;

escreva("Esse valor em Dólares equivalem a Euros.",euro);

fim se;

se (escolha2==4) então;

11

Page 13: ATPS Construção de Algorítmos COMPLETO

escreva("Você decidiu converter da moeda Dolar para a moeda Real.");

escreva("Insira o valor em Dólares: ");

leia(dolar);

moeda_real = dolar * real_dolar;

escreva("Esse valor em Dólares equivalem a Reais.",moeda_real);

fim se;

se (escolha2==5)então;

escreva("Voce decidiu converter da moeda Dolar para Dolar Australiano!");

escreva("Insira o valor em Dólares: ");

leia(dolar);

dolar_aus = dolar * valor_dolaraus;

escreva ("Esse valor em Dólares equivalem a Dólares Australianos", dolar_aus);

fim se;

se (escolha2==6)então;

escreva("Voce decidiu converter da moeda Dolar para Rand !");

escreva("Insira o valor em Dólares: ");

leia(dolar);

rand = dolar/valor_rand;

escreva ("Esse valor em Dólares equivalem a Rand", rand);

12

Page 14: ATPS Construção de Algorítmos COMPLETO

fim se;

se (escolha2==7)então;

escreva("Voce decidiu converter da moeda Dolar para Rupia Indiana !");

escreva("Insira o valor em Dólares: ");

leia(dolar);

rupiaindiana = dolar /valor_rupia;

escreva ("Esse valor em Dólares equivalem a Rupias Indianas", rupia);

fim se;

se (escolha2==8)então;

escreva("Voce decidiu converter da moeda Dolar para YUAN!");

escreva("Insira o valor em Dólares: ");

leia(dolar);

yuan = dolar /valor_yuan;

escreva ("Esse valor em Dólares equivale a Yuan”, yuan);

fim se;

se (escolha2==9)então;

escreva("Voce decidiu converter da moeda Dólar para Iene !");

escreva("Insira o valor em Dólares: ");

leia(dolar);

iene = dolar /valor_iene;

13

Page 15: ATPS Construção de Algorítmos COMPLETO

escreva ("Esse valor em Dólares equivalem a Ienes",iene);

fim se;

se (escolha2==10)então;

escreva("Voce decidiu converter da moeda Dólar para Peso Argentino !");

escreva("Insira o valor em Dólares: ");

leia(dolar);

pesoarg = dolar /valor_pesoarg;

escreva ("Esse valor em Dólares equivalem a Pesos Argentinos", pesoarg);

fim se;

fim se;

senão se (escolha1==3) então;

escreva("Voce escolheu converter Dolar Canadense!!!");

escreva("Deseja Converter a moeda Dolar Canadense para qual moeda ?");

escreva("Pressione: 1 - Dolar, 3 – Euro, 4 – Real, 5 – Dolar Australiano, 6 - Rand, 7 -

Rupia Indiana, 8 – Yuan, 9 – Iene, 10 – Peso Argentino");

leia(escolha2);

se(escolha2==1) então;

escreva("Voce decidiu converter da moeda Dolar Canadense para a moeda Dolar");

14

Page 16: ATPS Construção de Algorítmos COMPLETO

escreva("Insira o valor em Dólares Canadenses: ");

leia(dolar_cnd);

dolar = dolar_cnd/ valor_dolar;

escreva("Esse valor em Dólares Canadenses equivalem a em Dólares.",dolar);

fim se;

se(escolha2==3) então;

escreva("Voce decidiu converter da moeda Dolar Canadense para a moeda Euro");

escreva("Insira o valor em Dólares Canadenses: ");

leia(dolar_cnd);

euro= dolar_cnd * valor_euro;

escreva("Esse valor em Dólares Canadenses equivalem a Euros.",euro);

fim se;

se(escolha2==4) então;

escreva("Voce decidiu converter da moeda Dolar Canadense para a moeda Real.");

escreva("Insira o valor em Dólares Canadenses: ");

leia(dolar_cnd);

moeda_real = dolar_cnd * real_dolarcnd;

15

Page 17: ATPS Construção de Algorítmos COMPLETO

escreva("Esse valor em Dolar Canadenses equivalem a em Reais.",moeda_real);

fim se;

se (escolha2==5)então;

escreva("Voce decidiu converter da moeda Dolar Canadense para Dolar

Australiano!");

escreva("Insira o valor em Dólares Canadenses: ");

leia(dolar_cnd);

dolar_aus = dolar_cnd* valor_dolaraus;

escreva ("Esse valor em Dólares Canadenses equivalem a Dólares Australianos",

dolar_aus);

fim se;

se (escolha2==6)então;

escreva("Voce decidiu converter da moeda Dolar Canadense para Rand !");

escreva("Insira o valor em Dólares Canadenses: ");

leia(dolar_cnd);

rand = dolar_cnd/ valor_rand;

escreva ("Esse valor em Dólares Canadenses equivalem a Rand", rand);

fim se;

se (escolha2==7)então;

16

Page 18: ATPS Construção de Algorítmos COMPLETO

escreva("Voce decidiu converter da moeda Dólares Canadenses para Rupia

Indiana !");

escreva("Insira o valor em Dólares Canadenses: ");

leia(dolar_cnd);

rupiaindiana = dolar_cnd/valor_rupia;

escreva ("Esse valor em Dólares Canadenses equivalem a Rupias Indianas", rupia);

fim se;

se (escolha2==8)então;

escreva("Voce decidiu converter da moeda Dolar Canadense para YUAN!");

escreva("Insira o valor em Dólares Canadense: ");

leia(dolar_cnd);

yuan = dolar_cnd/valor_yuan;

escreva ("Esse valor em Dólares Canadenses equivale a Yuan”, yuan);

fim se;

se (escolha2==9)então;

escreva("Voce decidiu converter da moeda Dolar Canadense para Iene !");

escreva("Insira o valor em Dólares Canadenses: ");

leia(dolar_cnd);

iene =dolar_cnd/ valor_iene;

escreva ("Esse valor em Dólares Canadenses equivalem a Ienes",iene);

17

Page 19: ATPS Construção de Algorítmos COMPLETO

fim se;

se (escolha2==10)então;

escreva("Voce decidiu converter da moeda Dolar Canadense para Peso Argentino !");

escreva("Insira o valor em Dólares Canadenses: ");

leia(dolar_cnd);

pesoarg = dolar_cnd/valor_pesoarg;

escreva ("Esse valor em Dólares Canadenses equivalem a Pesos Argentinos",

pesoarg);

fim se;

fim se;

senão se (escolha1==4) então;

escreva("Voce escolheu converter Euro !!!");

escreva("Deseja Converter a moeda Euro para qual moeda ?");

escreva("Pressione: 1 - Dolar, 2 - Dolar Canadense, 4 – Real, 5 – Dolar Australiano, 6

- Rand, 7 - Rupia Indiana, 8 – Yuan, 9 – Iene, 10 – Peso Argentino");

leia(escolha2);

se(escolha2==1) então;

escreva("Voce decidiu converter da moeda Euro para a moeda Dolar");

18

Page 20: ATPS Construção de Algorítmos COMPLETO

escreva("Insira o valor em Euro: ");

leia(euro);

dolar = euro / valor_dolar;

escreva("Esse valor em Euros equivalem a em Dólares.",dolar);

fim se;

se(escolha2==2) então;

escreva("Voce decidiu converter da moeda Euro para a moeda Dolar Canadense");

escreva("Insira o valor em Euro: ");

leia(euro);

dolar_cnd = euro / valor_dolarcnd;

escreva("Esse valor em Euros equivalem a em Dólares Canadense.",dolar_cnd);

fim se;

se(escolha2==4) então;

escreva("Voce decidiu converter da moeda Euro para a moeda Real.");

escreva("Insira o valor em Euro: ");

leia(euro);

moeda_real = euro * real_euro;

19

Page 21: ATPS Construção de Algorítmos COMPLETO

escreva("Esse valor em Euros equivalem a em Reais.",moeda_real);

fim se;

se (escolha2==5)então;

escreva("Voce decidiu converter da moeda Euro para Dolar Australiano!");

escreva("Insira o valor em Euros: ");

leia(euro);

dolar_aus = euro * valor_dolaraus;

escreva ("Esse valor em Euros equivalem a Dólares Australianos", dolar_aus);

fim se;

se (escolha2==6)então;

escreva("Voce decidiu converter da moeda Euro para Rand !");

escreva("Insira o valor em Euros: ");

leia(euro);

rand = euro/valor_rand;

escreva ("Esse valor em Euros equivalem a Rand", rand);

fim se;

se (escolha2==7)então;

escreva("Voce decidiu converter da moeda Euro para Rupia Indiana !");

escreva("Insira o valor em Euros: ");

20

Page 22: ATPS Construção de Algorítmos COMPLETO

leia(euro);

rupiaindiana = euro / valor_rupia;

escreva ("Esse valor em Euros equivalem a Rupias Indianas", rupia);

fim se;

se (escolha2==8)então;

escreva("Voce decidiu converter da moeda Euro para YUAN!");

escreva("Insira o valor em Euros: ");

leia(euro);

yuan = euro / valor_yuan;

escreva ("Esse valor em Euros equivale a Yuan”, yuan);

fim se;

se (escolha2==9)então;

escreva("Voce decidiu converter da moeda euro para Iene !");

escreva("Insira o valor em Euros: ");

leia(euro);

iene = euro/ valor_iene;

escreva ("Esse valor em Euros equivalem a Ienes",iene);

fim se;

se (escolha2==10)então;

21

Page 23: ATPS Construção de Algorítmos COMPLETO

escreva("Voce decidiu converter da moeda Euro para Peso Argentino !");

escreva("Insira o valor em Euros: ");

leia(euro);

pesoarg = euro /valor_pesoarg;

escreva ("Esse valor em Euros equivalem a Pesos Argentinos", pesoarg);

fim se;

fim se;

senão se (escolha1==5) então;

escreva("Voce escolheu converter Dólar Australiano!!!");

escreva("Deseja Converter a moeda Dolar Australiano para qual moeda ?");

escreva("Pressione: 1 - Dolar, 2 - Dolar Canadense, 4 – Real, 6 - Rand, 7 - Rupia

Indiana, 8 – Yuan, 9 – Iene, 10 – Peso Argentino");

leia(escolha2);

se(escolha2==1) então;

escreva("Voce decidiu converter da moeda Dólar Australiano para a moeda Dolar");

escreva("Insira o valor em Dólares Australianos: ");

leia(dolar_aus);

dolar = dolar_aus / valor_dolar;

escreva("Esse valor em Dólares Australianos equivalem a em Dólares.",dolar);

22

Page 24: ATPS Construção de Algorítmos COMPLETO

fim se;

se(escolha2==2) então;

escreva("Voce decidiu converter da moeda Dolar Australiano para a moeda Dolar

Canadense");

escreva("Insira o valor em Dólares Australianos: ");

leia(dolar_aus);

dolar_cnd = dolar_aus / valor_dolarcnd;

escreva("Esse valor em Euros equivalem a em Dólares Canadense.",dolar_cnd);

fim se;

se(escolha2==3) então;

escreva("Voce decidiu converter da moeda Dolar Australiano para a moeda Euro.");

escreva("Insira o valor em Dólares Australianos: ");

leia(dolar_aus);

euro = dolar_aus / valor_euro;

escreva("Esse valor em Dólares Australianos equivalem a em Euros.",euro);

se(escolha2==4) então;

23

Page 25: ATPS Construção de Algorítmos COMPLETO

escreva("Voce decidiu converter da moeda Dolar Australiano para a moeda Real.");

escreva("Insira o valor em Dólares Australianos: ");

leia(dolar_aus);

moeda_real = dolar_aus * real_dolaraus;

escreva("Esse valor em Dólares Australianos equivalem a em Reais.",moeda_real);

fim se;

se (escolha2==6)então;

escreva("Voce decidiu converter da moeda Dolar Australianos para Rand !");

escreva("Insira o valor em Dólares Australianos: ");

leia(dolar_aus);

rand = dolar_aus/ valor_rand;

escreva ("Esse valor em Dólares Australianos equivalem a Rand", rand);

fim se;

se (escolha2==7)então;

escreva("Voce decidiu converter da moeda Dolar Australiano para Rupia Indiana !");

escreva("Insira o valor em Dólares Australianos ");

leia(dolar_aus);

rupiaindiana = dolar_aus/ valor_rupia;

escreva ("Esse valor em Dólares Australianos equivalem a Rupias Indianas",

rupiaindiana);

24

Page 26: ATPS Construção de Algorítmos COMPLETO

fim se;

se (escolha2==8)então;

escreva("Voce decidiu converter da moeda Dólares Australianos para YUAN!");

escreva("Insira o valor em Dólares Australianos: ");

leia(dolar_aus);

yuan = dolar_aus/ valor_yuan;

escreva ("Esse valor em Dólares Australianos equivale a Yuan”, yuan);

fim se;

se (escolha2==9)então;

escreva("Voce decidiu converter da moeda Dolar Australianos para Iene !");

escreva("Insira o valor em Dólares Australianos: ");

leia(dolar_aus);

iene = dolar_aus/ valor_iene;

escreva ("Esse valor em Dólares Australianos equivalem a Ienes",iene);

fim se;

se (escolha2==10)então;

escreva("Voce decidiu converter da moeda Dolar Australiano para Peso Argentino !");

escreva("Insira o valor em Dólares Australianos: ");

leia(dolar_aus);

25

Page 27: ATPS Construção de Algorítmos COMPLETO

pesoarg = dolar_aus/ valor_pesoarg;

escreva ("Esse valor em Dólares Australianos equivalem a Pesos Argentinos",

pesoarg);

fim se;

fim senão se;

senão se (escolha1==6) então;

escreva("Voce escolheu converter Rand!!!");

escreva("Deseja Converter a moeda Rand para qual moeda ?");

escreva("Pressione: 1 - Dolar, 2 - Dolar Canadense, 4 – Real, 7 - Rupia Indiana, 8 –

Yuan, 9 – Iene, 10 – Peso Argentino");

leia(escolha2);

se(escolha2==1) então;

escreva("Voce decidiu converter da moeda Rand para a moeda Dolar");

escreva("Insira o valor em Rand: ");

leia(rand);

dolar = rand* valor_dolar;

escreva("Esse valor em Rand equivalem a em Dólares.",dolar);

fim se;

26

Page 28: ATPS Construção de Algorítmos COMPLETO

se(escolha2==2) então;

escreva("Voce decidiu converter da moeda Rand para a moeda Dolar Canadense");

escreva("Insira o valor em Rand: ");

leia(rand);

dolar_cnd = rand *valor_dolarcnd;

escreva("Esse valor em rand equivalem a em Dólares Canadense.",dolar_cnd);

fim se;

se(escolha2==4) então;

escreva("Voce decidiu converter da moeda Rand para a moeda Real.");

escreva("Insira o valor em Rand: ");

leia(rand);

moeda_real = rand * real_rand;

escreva("Esse valor em Rand equivalem a em Reais.",moeda_real);

fim se;

se(escolha2==5) então;

escreva("Voce decidiu converter da moeda Rand para a moeda Dolar Australiano.");

escreva("Insira o valor em Rand: ");

27

Page 29: ATPS Construção de Algorítmos COMPLETO

leia(rand);

dolar_aus = rand * valor_dolaraus;

escreva("Esse valor em Rand equivalem a em Dólares Australianos.",dolar_aus);

fim se;

se (escolha2==7)então;

escreva("Voce decidiu converter da moeda Rand para Rupia Indiana !");

escreva("Insira o valor em Rand: ");

leia(rand);

rupiaindiana = rand / valor_rupia;

escreva ("Esse valor em Rand equivalem a Rupias Indianas", rupiaindiana);

fim se;

se (escolha2==8)então;

escreva("Voce decidiu converter da moeda Rand para YUAN!");

escreva("Insira o valor em Rand: ");

leia(rand);

yuan = rand/ valor_yuan;

escreva ("Esse valor em Rand equivale a Yuan”, yuan);

fim se;

28

Page 30: ATPS Construção de Algorítmos COMPLETO

se (escolha2==9)então;

escreva("Voce decidiu converter da moeda RAND para Iene !");

escreva("Insira o valor em Rand: ");

leia(rand);

iene = rand/ valor_iene;

escreva ("Esse valor em Rand equivalem a Ienes",iene);

fim se;

se (escolha2==10)então;

escreva("Voce decidiu converter da moeda Rand para Peso Argentino !");

escreva("Insira o valor em Rand: ");

leia(rand);

pesoarg = rand* valor_pesoarg;

escreva ("Esse valor em Rand equivalem a Pesos Argentinos", pesoarg);

fim se;

fim senão se;

senão se (escolha1==7) então;

escreva("Voce escolheu converter Rupia Indiana!!!");

escreva("Deseja Converter a moeda Rupia Indiana para qual moeda ?");

escreva("Pressione: 1 - Dolar, 2 - Dolar Canadense, 3- Euro 4 – Real, 5 – Dolar

Australiano 6 - Rand , 8 – Yuan, 9 – Iene, 10 – Peso Argentino");

29

Page 31: ATPS Construção de Algorítmos COMPLETO

leia(escolha2);

se(escolha2==1) então;

escreva("Voce decidiu converter da moeda Rupia para a moeda Dolar");

escreva("Insira o valor em Rupia: ");

leia(rupiaindiana);

dolar = rupiaindiana * valor_dolar;

escreva("Esse valor em Rupia equivalem a em Dólares.",dolar);

fim se;

se(escolha2==2) então;

escreva("Voce decidiu converter da moeda Rupia para a moeda Dolar Canadense");

escreva("Insira o valor em Rupia: ");

leia(rupiaindiana);

dolar_cnd = rupiaindiana* valor_dolarcnd;

escreva("Esse valor em Rupia equivalem a em Dólares Canadense.",dolar_cnd);

fim se;

30

Page 32: ATPS Construção de Algorítmos COMPLETO

se(escolha2==4) então;

escreva("Voce decidiu converter da moeda Rupia para a moeda Real.");

escreva("Insira o valor em Rupia: ");

leia(rupiaindiana);

moeda_real = rupiaindiana * real_rupia;

escreva("Esse valor em Rupia equivalem a em Reais.",moeda_real);

fim se;

se (escolha2==5)então;

escreva("Voce decidiu converter da moeda Rupia para Dólar Australiano !");

escreva("Insira o valor em Rupia: ");

leia(rupiaindiana);

dolar_aus= rupiaindiana* valor_dolaraus;

escreva ("Esse valor em Rupia equivalem a Dólares Australianos", dolar_aus);

se (escolha2==6)então;

escreva("Voce decidiu converter da moeda Rupia para Rand !");

escreva("Insira o valor em Rupia: ");

leia(rupiaindiana);

rand = rupiaindiana* valor_rand;

escreva ("Esse valor em Rupia equivalem a Rand", rand);

31

Page 33: ATPS Construção de Algorítmos COMPLETO

fim se;

se (escolha2==8)então;

escreva("Voce decidiu converter da moeda Rupia para YUAN!");

escreva("Insira o valor em Rupia: ");

leia(rupiaindiana);

yuan = rupiaindiana* valor_yuan;

escreva ("Esse valor em Rupia equivale a Yuan”, yuan);

fim se;

se (escolha2==9)então;

escreva("Voce decidiu converter da moeda Rupia para Iene !");

escreva("Insira o valor em Rupia: ");

leia(rupiaindiana);

iene = rupiaindiana /valor_iene;

escreva ("Esse valor em Rupia equivalem a Ienes",iene);

fim se;

se (escolha2==10)então;

escreva("Voce decidiu converter da moeda Rupia para Peso Argentino !");

escreva("Insira o valor em Rupia: ");

leia(rupiaindiana);

32

Page 34: ATPS Construção de Algorítmos COMPLETO

pesoarg = rupiaindiana* valor_pesoarg;

escreva ("Esse valor em Rupiaindiana equivalem a Pesos Argentinos", pesoarg);

fim se;

fim senão se;

senão se (escolha1==8) então;

escreva("Voce escolheu converter Yuan!!!");

escreva("Deseja Converter a moeda Yuan para qual moeda ?");

escreva("Pressione: 1 - Dolar, 2 - Dolar Canadense, 3- Euro 4 – Real, 5 – Dolar

Australiano 6 - Rand , 7 - Rupia, 9 – Iene, 10 – Peso Argentino");

leia(escolha2);

se(escolha2==1) então;

escreva("Voce decidiu converter da moeda Yuan para a moeda Dolar");

escreva("Insira o valor em Yuan: ");

leia(yuan);

dolar =yuan * valor_dolar;

escreva("Esse valor em Yuan equivalem a em Dólares.",dolar);

fim se;

33

Page 35: ATPS Construção de Algorítmos COMPLETO

se(escolha2==2) então;

escreva("Voce decidiu converter da moeda Yuan para a moeda Dolar Canadense");

escreva("Insira o valor em Yuan: ");

leia(yuan);

dolar_cnd = yuan* valor_dolarcnd;

escreva("Esse valor em Yuan equivalem a em Dólares Canadense.",dolar_cnd);

fim se;

se(escolha2==4) então;

escreva("Voce decidiu converter da moeda yuan para a moeda Real.");

escreva("Insira o valor em yuan ");

leia(yuan);

moeda_real = yuan * real_yuan;

escreva("Esse valor em Yuan equivalem a em Reais.",moeda_real);

fim se;

se (escolha2==5)então;

escreva("Voce decidiu converter da moeda Yuan para Dólar Australiano !");

escreva("Insira o valor em Yuan: ");

leia(yuan);

34

Page 36: ATPS Construção de Algorítmos COMPLETO

dolar_aus= yuan* valor_dolaraus;

escreva ("Esse valor em Yuan equivalem a Dólares Australianos", dolar_aus);

se (escolha2==6)então;

escreva("Voce decidiu converter da moeda Yuan para Rand !");

escreva("Insira o valor em Yuan: ");

leia(yuan);

rand = yuan/ valor_rand;

escreva ("Esse valor em Yuan equivalem a Rand", rand);

fim se;

se (escolha2==7)então;

escreva("Voce decidiu converter da moeda Yuan para Rupia!");

escreva("Insira o valor em Yuan: ");

leia(yuan);

rupiaindiana = yuan/ valor_rupia;

escreva ("Esse valor em Yuan equivale a Rupia”, rupiaindiana);

fim se;

se (escolha2==9)então;

35

Page 37: ATPS Construção de Algorítmos COMPLETO

escreva("Voce decidiu converter da moeda Yuan para Iene !");

escreva("Insira o valor em Yuan: ");

leia(yuan);

iene = Yuan /valor_iene;

escreva ("Esse valor em Yuan equivalem a Ienes",iene);

fim se;

se (escolha2==10)então;

escreva("Voce decidiu converter da moeda Yuan para Peso Argentino !");

escreva("Insira o valor em Yuan: ");

leia(yuan);

pesoarg =yuan* valor_pesoarg;

escreva ("Esse valor em Yuan equivalem a Pesos Argentinos", pesoarg);

fim se;

fim senão se;

senão se (escolha1==9) então;

escreva("Voce escolheu converter Iene!!!");

escreva("Deseja Converter a moeda Iene para qual moeda ?");

escreva("Pressione: 1 - Dolar, 2 - Dolar Canadense, 3- Euro 4 – Real, 5 – Dolar

Australiano 6 - Rand , 7 - Rupia, 8- Yuan, 10 – Peso Argentino");

leia(escolha2);

36

Page 38: ATPS Construção de Algorítmos COMPLETO

se(escolha2==1) então;

escreva("Voce decidiu converter da moeda Iene para a moeda Dolar");

escreva("Insira o valor em Ienes: ");

leia(iene);

dolar =iene* valor_dolar;

escreva("Esse valor em Ienes equivalem a em Dólares.",dolar);

fim se;

se(escolha2==2) então;

escreva("Voce decidiu converter da moeda Iene para a moeda Dolar Canadense");

escreva("Insira o valor em Ienes: ");

leia(iene);

dolar_cnd = iene* valor_dolarcnd;

escreva("Esse valor em Iene equivalem a em Dólares Canadense.",dolar_cnd);

fim se;

se(escolha2==4) então;

37

Page 39: ATPS Construção de Algorítmos COMPLETO

escreva("Voce decidiu converter da moeda Iene para a moeda Real.");

escreva("Insira o valor em Ienes ");

leia(iene);

moeda_real = iene * real_iene;

escreva("Esse valor em Ienes equivalem a em Reais.",moeda_real);

fim se;

se (escolha2==5)então;

escreva("Voce decidiu converter da moeda Ienes para Dólar Australiano !");

escreva("Insira o valor em Ienes: ");

leia(iene);

dolar_aus= iene* valor_dolaraus;

escreva ("Esse valor em Ienes equivalem a Dólares Australianos", dolar_aus);

fim se;

se (escolha2==6)então;

escreva("Voce decidiu converter da moeda Iene para Rand !");

escreva("Insira o valor em Ienes: ");

leia(iene);

rand = iene* valor_rand;

escreva ("Esse valor em Ienes equivalem a Rand", rand);

fim se;

38

Page 40: ATPS Construção de Algorítmos COMPLETO

se (escolha2==7)então;

escreva("Voce decidiu converter da moeda Iene para Rupia!");

escreva("Insira o valor em Ienes: ");

leia(iene);

rupiaindiana =iene* valor_rupia;

escreva ("Esse valor em Ienes equivale a Rupia”, rupiaindiana);

fim se;

se (escolha2==8)então;

escreva("Voce decidiu converter da moeda Iene para Yuan!");

escreva("Insira o valor em Ienes: ");

leia(iene);

yuan =iene* valor_yuan;

escreva ("Esse valor em Ienes equivale a Yuan”, yuan);

fim se;

se (escolha2==10)então;

escreva("Voce decidiu converter da moeda Iene para Peso Argentino !");

escreva("Insira o valor em Ienes: ");

39

Page 41: ATPS Construção de Algorítmos COMPLETO

leia(iene);

pesoarg =iene* valor_pesoarg;

escreva ("Esse valor em Ienes equivalem a Pesos Argentinos", pesoarg);

fim se;

fim senão se;

senão se (escolha1==10) então;

escreva("Voce escolheu converter Peso Argentino!!!");

escreva("Deseja Converter a moeda Peso Argentino para qual moeda ?");

escreva("Pressione: 1 - Dolar, 2 - Dolar Canadense, 3- Euro 4 – Real, 5 – Dolar

Australiano 6 - Rand , 7 - Rupia, 8- Yuan, 9 - Iene");

leia(escolha2);

se(escolha2==1) então;

escreva("Voce decidiu converter da moeda Peso para a moeda Dolar");

escreva("Insira o valor em Pesos: ");

leia(pesoarg);

dolar =pesoarg* valor_dolar;

escreva("Esse valor em Pesos Argentinos equivalem a em Dólares.",dolar);

40

Page 42: ATPS Construção de Algorítmos COMPLETO

fim se;

se(escolha2==2) então;

escreva("Voce decidiu converter da moeda Peso para a moeda Dolar Canadense");

escreva("Insira o valor em Pesos: ");

leia(pesoarg);

dolar_cnd = pesoarg*valor_dolarcnd;

escreva("Esse valor em Pesos Argentinos equivalem a em Dólares

Canadense.",dolar_cnd);

fim se;

se(escolha2==4) então;

escreva("Voce decidiu converter da moeda Peso para a moeda Real.");

escreva("Insira o valor em Pesos: ");

leia(pesoarg);

moeda_real = pesoarg * real_iene;

escreva("Esse valor em Pesos Argentinos equivalem a em Reais.",moeda_real);

fim se;

se (escolha2==5)então;

escreva("Voce decidiu converter da moeda Peso para Dólar Australiano !");

41

Page 43: ATPS Construção de Algorítmos COMPLETO

escreva("Insira o valor em Pesos: ");

leia(pesoarg);

dolar_aus= pesoarg* valor_dolaraus;

escreva ("Esse valor em Pesos Argentinos equivalem a Dólares Australianos",

dolar_aus);

fim se;

se (escolha2==6)então;

escreva("Voce decidiu converter da moeda Peso para Rand !");

escreva("Insira o valor em Pesos: ");

leia(pesoarg);

rand = pesoarg/ valor_rand;

escreva ("Esse valor em Pesos Argentinos equivalem a Rand", rand);

fim se;

se (escolha2==7)então;

escreva("Voce decidiu converter da moeda Peso para Rupia!");

escreva("Insira o valor em Pesos: ");

leia(pesoarg);

rupiaindiana =pesoarg/valor_rupia;

escreva ("Esse valor em Pesos Argentinos equivale a Rupia”, rupiaindiana);

fim se;

42

Page 44: ATPS Construção de Algorítmos COMPLETO

se (escolha2==8)então;

escreva("Voce decidiu converter da moeda Peso para Yuan!");

escreva("Insira o valor em Pesos: ");

leia(pesoarg);

yuan =pesoarg* valor_yuan;

escreva ("Esse valor em Pesos Argentinos equivale a Yuan”, yuan);

fim se;

se (escolha2==9)então;

escreva("Voce decidiu converter da moeda Peso para Iene !");

escreva("Insira o valor em Pesos: ");

leia(pesoarg);

iene =pesoarg/valor_iene;

escreva ("Esse valor em Pesos Argentinos equivalem a Ienes", iene);

fim se;

fim senão se;

Fim_Algoritmo;

43

Page 45: ATPS Construção de Algorítmos COMPLETO

Com o usufruto de várias alternativas de soluções de problemas, foi possível criar um arquivo

executável capaz de converter o real em algumas outras moedas. Com isso, foi alcançado o

objetivo de gerar um executável capaz de efetuar a conversão do real para a moeda escolhida

pelo cliente.

Usando os pseudocódigos iniciais, foram alterados praticamente 70% dos comandos, pois, a

princípio, não era previsto a inclusão de comandos / necessidades anormais. Portanto,

incluímos variadas linhas de códigos com o intuito de aprimorar o desempenho do sistema.

Para facilitar a interação entre sistema e cliente, foram incluídas conversas didáticas

e dinâmicas com os usuários.

Tivemos uma intempérie perante a necessidade da inclusão do percentual da variação entre os variados dólares onde, foi solucionado com uma boa leitura no PLT e, incluído alguns comandos novos para resolução de tal problema.

Etapa 3

3.1 Novos dados a serem incorporados no algoritmo

Inicio;

Tipo mat;matriz [1...10][1...30] de numérico;

Para i de 1 ate 10 faça

Para j de 1 ate 30 faça

Leia(mat1[ i , j ]);

Fim para;

Fim para;

44

Page 46: ATPS Construção de Algorítmos COMPLETO

Fim;

3.2 Processamento necessário para encontrar o valor médio, o menor e o maior valor da cotação dentro de um mês:

Inicio;

Soma 0;

Para i de 1 ate 10 faça

Para j de 1 ate 30 passo faça

Leia (mat1[ i , j ]);

Vet1 mat1 [ i , j ];

Soma soma + vet1;

Fim para;

Fim para;

Media soma/30;

X vet1[1];

Para j de 1 ate 30 passo faça

Se vet1 [ j ] > x

X vet1[ j ];

Fim se;

Fim para;

Fim para;

Y mat1[1,1];

Para j de 1 ate 30 passo faça

45

Page 47: ATPS Construção de Algorítmos COMPLETO

Se vet1[ j ] < x

Y vet1 [ j ];

Fim se

Fim para

Fim para;

Fim;

3.3 Pseudocódigo do algoritmo alterado

Algoritmo Cotação

Inicio;

Tipo mat = matriz [1..10][1..30] de numérico;

Tipo vet = vetor [1..30] de numérico;

Declare

Mat1 : mat;

Soma,media,i,j,x,y,: numérico;

Vet1: vet;

Para i de 1 ate 10 faça

Para j de 1 ate 30 faça

Leia(mat1[ i , j ]);

Fim para

Fim para

Soma 0;

46

Page 48: ATPS Construção de Algorítmos COMPLETO

Para i de 1 ate 10 faça

Para j de 1 ate 30 passo faça

Leia (mat1[ i , j ]);

Vet1 mat1 [ i , j ];

Soma soma + vet1;

Fim para

Fim para

Media soma/30;

X vet1[1];

Para j de 1 ate 30 passo faça

Se vet1 [ j ] > x

X vet1[ j ];

Fim se;

Fim para;

Fim para

Y mat1[1,1];

Para j de 1 ate 30 passo faça

Se vet1[ j ] < x

Y vet1 [ j ];

Fim se;

Fim para;

Fim para

47

Page 49: ATPS Construção de Algorítmos COMPLETO

Escreva (“A media do mensal é:”,media);

Escreva (“A menor cotação do mês é:”, y);

Escreva (“A maior cotação do mês é:”,x);

Fim_algoritmo

Etapa 4

4.1 Pseudocódigo do algoritmo que foi alterado para atender o solicitado no Passo 2.

Algoritmo cotação2

Tipo mat = matriz [1..10][1..30] de numérico;

Declare

Mat1 : mat;

X1,X2,X3,X4: Numérico;

media1, media2, media3, media4: Numérico;

soma1, soma2, soma3, soma4: Numérico;

I , j , op: Numérico;

Escreva (“ escolha o período do mês para analise da media, maior e menos cotação ”);

Escreva (“ 1° ao 10° dia ”);

Escreva (“ 11° ao 20° dia ”);

Escreva (“ 21° ao 30° dia ”);

48

Page 50: ATPS Construção de Algorítmos COMPLETO

Escreva (“ mês completo ”);

Escreva (“ opção “);

Leia (op)

Escolha (op)

Caso 1:

Para I de 1 ate 10

Para J de 1 ate 10

soma1 soma1 + mat1[ I , J]

fim para

fim para

Media1 soma1 / 10

Escreva (“ 1° ao 10° dia = ”soma1);

X1 mat1[1,1];

Para I de 1 ate 10

Para j de 1 ate 10 passo faça

Se mat1 [ i , j ] < X1

X1 mat1[ i , j ];

fim se

fim para

fim para

escreva (“ Menor cotação = “ X1);

Y1 mat1[1,1];

Para I de 1 ate 10

Para j de 1 ate 10 passo faça

49

Page 51: ATPS Construção de Algorítmos COMPLETO

Se mat1 [ i , j ] > Y1

Y1 mat1[ i , j ];

fim se

fim para

fim para

escreva (“ Maior cotação = “ Y1);

Caso 2:

Para I de 1 ate 10

Para J de 11 ate 20

soma2 soma2 + mat1[ I , J]

fim para

fim para

Media2 soma2 / 10

Escreva (“ 11° ao 20° dia = ”soma2);

X2 mat1[1,1];

Para I de 1 ate 10

Para j de 11 ate 20 passo faça

Se mat1 [ i , j ] < X2

X2 mat1[ i , j ];

fim se

fim para

fim para

escreva (“ Menor cotação = “ X2);

Y2 mat1[1,1];

Para I de 1 ate 10

50

Page 52: ATPS Construção de Algorítmos COMPLETO

Para j de 11 ate 20 passo faça

Se mat1 [ i , j ] > Y2

Y2 mat1[ i , j ];

fim se

fim para

fim para

escreva (“ Maior cotação = “ Y2);

Caso 3:

Para I de 1 ate 10

Para J de 21 ate 30

soma3 soma3 + mat1[ I , J]

fim para

fim para

Media3 soma3 / 10

Escreva (“ 21° ao 30° dia = ”soma3);

X3 mat1[1,1];

Para I de 1 ate 10

Para j de 21 ate 30 passo faça

Se mat1 [ i , j ] < X3

X3 mat1[ i , j ];

fim se

fim para

fim para

escreva (“ Menor cotação = “ X3);

Y3 mat1[1,1];

51

Page 53: ATPS Construção de Algorítmos COMPLETO

Para I de 1 ate 10

Para j de 21 ate 30 passo faça

Se mat1 [ i , j ] > Y3

Y3 mat1[ i , j ];

fim se

fim para

fim para

escreva (“ Maior cotação = “ Y3);

Caso 4:

Para I de 1 ate 10;

Para J de 1 ate 30;

soma4 soma4 + mat1[ I , J]

fim para;

fim para;

Media4 soma4 / 10;

Escreva (“ Media Total = ”soma4);

X4 mat1[1,1];

Para I de 1 ate 10;

Para j de 1 ate 30 passo faça;

Se mat1 [ i , j ] < X4 então

X4 mat1[ i , j ];

Fim se;

Fim para;

Fim para;

52

Page 54: ATPS Construção de Algorítmos COMPLETO

escreva (“ Menor cotação = “ X4);

Y4 mat1[1,1];

Para I de 1 ate 10

Para j de 1 ate 30 passo faça

Se mat1 [ i , j ] > Y4;

Y4 mat1[ i , j ];

Fim se;

Fim para;

Fim para;

escreva (“ Maior cotação = “ Y4);

Fim escolha;

Para I de 1 ate 10;

Para J de 1 ate 10;

soma1 soma1 + mat1[ I , J];

fim para;

Para J de 11 ate 20;

soma2 soma2 + mat1[ I , J];

fim para;

Para J de 21 ate 30;

soma3 soma3 + mat1[ I , J];

fim para;

fim para ;

Media1 soma1 / 10;

53

Page 55: ATPS Construção de Algorítmos COMPLETO

Media2 soma2 / 10;

Media3 soma3 / 10;

Para I de 1 ate 10;

Para J de 1 ate 10;

soma1 soma1 + mat1[ I , J];

fim para;

Para J de 11 ate 20;

soma2 soma2 + mat1[ I , J];

fim para;

Para J de 21 ate 30;

soma3 soma3 + mat1[ I , J];

fim para;

fim para ;

Maior

X1 mat1[1,1];

Para I de 1 ate 10

Para j de 1 ate 10 passo faça

Se mat1 [ i , j ] > x

X1 mat1[ i , j ];

fim se

fim para

Para J de 11 ate 20

Se mat1 [ i , j ] > x

54

Page 56: ATPS Construção de Algorítmos COMPLETO

X2 mat1[ i , j ];

Fim se;

Fim para;

Para J de 21 ate 30;

Se mat1 [ i , j ] > x;

X3 mat1[ i , j ];

Fim se;

Fim para;

Fim para;

Menor

X1 mat1[1,1];

Para I de 1 ate 10;

Para j de 1 ate 10 passo faça;

Se mat1 [ i , j ] < x;

X1 mat1[ i , j ];

Fim se;

Fim para;

Para J de 11 ate 20;

Se mat1 [ i , j ] < x;

X2 mat1[ i , j ];

Fim se;

Fim para;

Para J de 21 ate 30;

55

Page 57: ATPS Construção de Algorítmos COMPLETO

Se mat1 [ i , j ] < x;

X3 mat1[ i , j ];

Fim se;

Fim para;

Fim para;;

4.2 Estudos desenvolvidos

No passo 1 incorporamos novos dados no algoritmo, como matrizes, interações e novos dados para calcular a média, menor e maior valor da cotação. No passo 2 adicionamos os novos códigos para calcular o período de 10 dias de cotação do mês, que o usuário pode escolher para calcular a média, menor e maior cotação ou escolher a opção 4 para calcular a cotação do mês inteiro.

56

Page 58: ATPS Construção de Algorítmos COMPLETO

Bibliografia

PLT Lógica de Programação: André Luiz Villar Forbellone; Henri Frederico Eberspächer; 3ª Edição.

57