A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Construção de Algoritmos 2 Programação em Java Prof. Maurício Braga.

Apresentações semelhantes


Apresentação em tema: "Construção de Algoritmos 2 Programação em Java Prof. Maurício Braga."— Transcrição da apresentação:

1 Construção de Algoritmos 2 Programação em Java Prof. Maurício Braga

2 2/21 Roteiro para construção de algoritmos Roteiro básico para construção de um algoritmo 1. ENTENDA O PROBLEMA Etapa mais importante. Erros nesta fase podem levar a construção de soluções erradas ou soluções corretas para o problema errado. 2. Identifique no problema as saídas do algoritmo Atente o que deve ser calculado, impresso e processado. 3. Identifique no problema as entradas do algoritmo Atente para o que deve ser lido, obtido do usuário. 4. Identifique qual o processamento necessário Atente para os cálculos necessários, sempre a partir dos valores de entrada, para chegar aos de saída. 5. Separe as etapas de entrada de dados, processamento e saída de dados dentro do algoritmo 6. Coloque os comandos segundo a estrutura seqüencial básica do algoritmo

3 3/21 Verificação manual de algoritmos Após a construção de um algoritmo pode-se verificar se o mesmo realmente é uma solução para o problema Forma braçal denominada teste de mesa ou método chinês. Consiste na simulação manual da execução do algoritmo, comando após comando, atentando para as entradas e saídas de dados e verificando o comportamento das variáveis. Equivale a colocar-se no papel do computador, anotando o que a máquina faria a cada comando.

4 4/21 Verificação manual de algoritmos Exemplo1 Calcular a média de dois números reais Solução Entradas: dois números reais Saída: a média dos números Cálculo necessário: somar os números e dividir o resultado por dois. Variáveis num1, num2, soma, media : real; Início ler num1; ler num2; soma = num1 + num2; media = soma / 2; escrever media; Fim

5 5/21 Verificação manual de algoritmos Verificando se o algoritmo está correto Inicialmente anotamos as variáveis do algoritmo, e, ao lado, o valor nela armazenado. Supondo que, na primeira leitura, o usuário forneça o valor 8. Supondo que, na segunda leitura, o usuário forneça o valor 7. Em seguida o computador calcula a soma. Por último o computador calcula a média na atribuição seguinte. O valor 7.5 será impresso, indicando a média dos números 8 e 7 corretamente. num1? num2? soma? media? num18 num2? soma? media? num18 num27 soma? media? num18 num27 soma15 media? num18 num27 soma15 media7.5

6 6/21 Verificação manual de algoritmos Exemplo 2 Indique os valores impressos pelo algoritmo a seguir Variáveis A, B, C, D : inteiro; Início A = 10; B = 20; D = A + A; C = A + B; A = B + C; D = D + 1; escrever A; escrever B; escrever C; escrever D; Fim

7 7/21 Verificação manual de algoritmos Exemplo 2 (cont.) A?B?C?D?A?B?C?D? A10 B? C? D? A10 B20 C? D? A10 B20 C? D20 A10 B20 C30 D20 A50 B20 C30 D20 A50 B20 C30 D21

8 8/21 Verificação manual de algoritmos Exemplo 3 Ler o preço de um par de sapatos numa loja e escrevê-lo com um desconto de X% Neste vocês terão que criar o programa

9 9/21 Verificação manual de algoritmos Exemplo 3 (cont.) O algoritmo fica assim... Variáveis preco, desconto, valor_a_descontar, preco_final : real; Início ler preco; ler desconto; valor_a_descontar = ( preco * desconto ) / 100; preco_final = preco – valor_a_descontar; escrever preco_final; Fim

10 10/21 Programa desconto em Java public static void main(String[] args) { double preco=0, desconto=0, valor_a_descontar=0, preco_final=0; System.out.println("Entre o preço do produto:"); preco = Leia(preco); System.out.println("Entre o desconto:"); desconto = Leia(desconto); // cálculo do preço da mercadoria com o desconto valor_a_descontar = (preco*desconto)/100; preco_final = preco – valor_a_descontar; System.out.println(O preço com desconto é : "+preco_final); }

11 11/21 Verificação manual de algoritmos Exemplo 3 (cont.) Supondo que o usuário informe o preço de R$50,00 e o desconto de 20%, como fica o teste de mesa? preco 50 desconto ? v_desconto ? preco_final ? preco 50 desconto 20 v_desconto ? preco_final ? preco 50 desconto 20 v_desconto 10 preco_final ? preco 50 desconto 20 v_desconto 10 preco_final 40

12 12/21 Verificação manual de algoritmos - Impressões complementares A finalidade principal do comando de saída de dados é exibir resultados processados pelo computador. Imprimir o conteúdo das variáveis; Imprimir mensagens relativas a um processamento. Também podemos utilizá-lo para exibir mensagens informativas para o usuário, facilitando o entendimento do que está sendo executado pelo computador Imprimir mensagens contendo instruções de execução; Imprimir mensagens descritivas sobre as variáveis impressas.

13 13/21 Verificação manual de algoritmos - Impressões complementares Exemplo Algoritmo para calcular a média de 2 números Variáveis num1, num2, soma, media : real; Início escrever Entre com o primeiro número: ; ler num1; escrever Entre com o segundo número: ; ler num2; soma = num1 + num2; media = soma / 2; escrever A média calculada foi + media; Fim Adicionados

14 14/21 Verificação manual de algoritmos Exemplo 4 Ler o nome e a qualidade de uma pessoa, e exibir a mensagem é uma pessoa que tem. Escreva este programa em Java. Solução Exemplo simples de composição de frases em algoritmos. Para as entradas Maria e coragem, a saída seria Maria é uma pessoa de coragem. Este algoritmo não necessita de cálculos, apenas leitura dos dados e exibição de composição entre variáveis e mensagens.

15 15/21 Verificação manual de algoritmos Digite a função Leia que será exibida no próximo slide. Esta função recebe uma String como parâmetro e retorna o texto digitado pelo usuário. Crie o programa principal, que irá usar a função Leia para montar a mensagem: é uma pessoa que tem.

16 16/21 Programa mensagem em Java public static String Leia(String param) { // declaração de variáveis // objeto que contém o dado digitado pelo usuário DataInputStream dado_lido; // variável auxiliar que irá armazenar o texto digitado // pelo usuário String stemporario=""; try { dado_lido = new DataInputStream(System.in); stemporario = dado_lido.readLine(); }catch (Exception e) { } return stemporario; }

17 17/21 Solução Exemplo 4 (cont.) O algoritmo fica assim... Variáveis nome, qualidade : cadeia; Início ler nome; ler qualidade; escrever nome + é uma pessoa que tem + qualidade; Fim

18 18/21 Programa mensagem em Java public static void main(String[] args) { // declaração de variáveis String nome=null, qualidade=null; System.out.println("Entre o nome:"); nome = Leia(nome); System.out.println("Entre a qualidade:"); qualidade = Leia(qualidade); System.out.println(nome+ " é uma pessoa que tem "+qualidade); }

19 19/21 Exercícios Faça um programa para ler um valor em reais e exibir o equivalente em dólares. Considere que um dólar vale R$2,50. Faça um programa para ler o salário de um funcionário e imprimi-lo com um aumento de 15%. Mostre o que será impresso pelo algoritmo a seguir. Variáveis v, r : real; Início v = 1000; r = 15 / 100; v = v + r * v; escreva v; Fim

20 20/21 Programa câmbio em Java public static void main(String[] args) { // declaração de variáveis double valor_real=0, valor_dolar=0, cotacao_dolar = 2.50; System.out.println("Entre o valor em reais:"); valor_real=Leia(valor_real); valor_dolar = valor_real/cotacao_dolar; System.out.println("O valor de R$ " + valor_real + " reais em dólar é: US$ " + valor_dolar); }

21 21/21 Programa salário em Java public static void main(String[] args) { // declaração de variáveis double salario_antigo=0, salario_novo=0; System.out.println("Entre o valor do salário do funcionário:"); salario_antigo=Leia(salario_antigo); salario_novo = salario_antigo*1.15; System.out.println("O valor do salário com aumento de 15% é R$ " + salario_novo + " reais.); }

22 Construção de Algoritmos 2 Programação em Java Prof. Maurício Braga


Carregar ppt "Construção de Algoritmos 2 Programação em Java Prof. Maurício Braga."

Apresentações semelhantes


Anúncios Google