Aula 4 - Teste de mesa

42.654 visualizações

Publicada em

Publicada em: Educação, Negócios, Tecnologia
5 comentários
62 gostaram
Estatísticas
Notas
Sem downloads
Visualizações
Visualizações totais
42.654
No SlideShare
0
A partir de incorporações
0
Número de incorporações
1.020
Ações
Compartilhamentos
0
Downloads
0
Comentários
5
Gostaram
62
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Aula 4 - Teste de mesa

  1. 1. Bacharelado em Ciência e TecnologiaProcessamento da InformaçãoTESTE DE MESATESTE DE MESAProf. Dr. Edson PimentelCentro de Matemática, Computação eCognição
  2. 2. Bacharelado em Ciência e TecnologiaProcessamento da InformaçãoTESTE DE MESAObjetivos Aprender a verificar se o algoritmo (ouprograma) leva a um resultado esperadoatravés de simulação de valores, utilizando atécnica de TESTE DE MESA
  3. 3. Bacharelado em Ciência e TecnologiaProcessamento da InformaçãoTESTE DE MESATESTE DE MESA O teste de mesa simula a execução de umalgoritmo sem utilizar o computador,empregando apenas “papel e caneta” (oumelhor sem utilizar um compilador ouinterpretador).
  4. 4. Bacharelado em Ciência e TecnologiaProcessamento da InformaçãoTESTE DE MESAPassos para realizar o teste de mesa Identifique as variáveis envolvidas em seu algoritmo; Crie uma tabela com linhas e colunas, em que: cada coluna representará uma variável a ser“observada” as linhas corresponderão às instruções observadaspelo teste de mesa e a primeira coluna deverá identificar os números daslinhas correspondentes às instruções observadas;LINHA a b c5 ? ? ?7 ? ? ?
  5. 5. Bacharelado em Ciência e TecnologiaProcessamento da InformaçãoTESTE DE MESAPassos para realizar o teste de mesa De cima para baixo, preencha cada uma das linhas databela com o número da linha que identifica cadainstrução, seguido dos valores assumidos pelas variáveisdo programa após a execução daquela instrução.LINHA a b c571113
  6. 6. Bacharelado em Ciência e TecnologiaProcessamento da InformaçãoTESTE DE MESAPassos para realizar o teste de mesa Para indicar que o valor de uma variável foi lido,envolva-o entre parênteses Se o valor foi escrito pela instrução, envolva-o entrechaves Para valores indefinidos, isto é, aqueles que ainda nãoforam determinados até uma dada instrução, utilize ainterrogação LINHA a b c5 (18) ? ?71113 {7.5}
  7. 7. Bacharelado em Ciência e TecnologiaProcessamento da InformaçãoTESTE DE MESAEXEMPLO
  8. 8. Bacharelado em Ciência e TecnologiaProcessamento da InformaçãoTESTE DE MESAExemplo Vejamos agora como um “teste de mesa” funciona pormeio de um algoritmo simples: Escreva um algoritmo para ler dois números (a e b) eapresentar o resultado das 4 operações aritméticasbásicas (adição, subtração, multiplicação e divisão)
  9. 9. Bacharelado em Ciência e TecnologiaProcessamento da InformaçãoTESTE DE MESAEscreva um algoritmo para ler dois números (a e b) e apresentar oresultado das 4 operações aritméticas básicas (adição, subtração,multiplicação e divisão) SAÍDA: Quais os resultados que o algoritmo deve fornecer ? ENTRADA: Quais os insumos necessários para se obter a saída? PROCESSAMENTO: Como transformar os insumos na saída? SAÍDA: soma, subtração, produto e divisão ENTRADA: dois números (a, b) PROCESSAMENTO: Soma = a + b Subtracao = a - b Divisao = a / b Produto = a * bResolvendo
  10. 10. Bacharelado em Ciência e TecnologiaProcessamento da InformaçãoTESTE DE MESASoluçãoDeclaração deVariáveis
  11. 11. Bacharelado em Ciência e TecnologiaProcessamento da InformaçãoTESTE DE MESASoluçãoEntrada deDados
  12. 12. Bacharelado em Ciência e TecnologiaProcessamento da InformaçãoTESTE DE MESASoluçãoProcessamento
  13. 13. Bacharelado em Ciência e TecnologiaProcessamento da InformaçãoTESTE DE MESASoluçãoSaída de Dados
  14. 14. Bacharelado em Ciência e TecnologiaProcessamento da InformaçãoTESTE DE MESAAplicação do Teste de Mesa
  15. 15. Bacharelado em Ciência e TecnologiaProcessamento da InformaçãoTESTE DE MESAOUTROEXEMPLO
  16. 16. Bacharelado em Ciência e TecnologiaProcessamento da InformaçãoTESTE DE MESAEscreva um algoritmo para ler dois números (a e b) e trocar os seusvalores. Exibir os valores de a e b após a troca SAÍDA: Quais os resultados que o algoritmo deve fornecer ? ENTRADA: Quais os insumos necessários para se obter a saída? PROCESSAMENTO: Como transformar os insumos na saída? SAÍDA: valores de a e b (trocados) ENTRADA: dois números (A, B) PROCESSAMENTO: A = B B = AResolvendo
  17. 17. Bacharelado em Ciência e TecnologiaProcessamento da InformaçãoTESTE DE MESASoluçãoDeclaração deVariáveisEntrada deDadosSaída de DadosProcessamento
  18. 18. Bacharelado em Ciência e TecnologiaProcessamento da InformaçãoTESTE DE MESAAplicação do Teste de MesaLINHA a b7 (12) ?9 (3)10 311 312 {3}13 {3}Escreva um algoritmo para ler dois números (a e b) e trocar os seusvalores. Exibir os valores de a e b após a troca
  19. 19. Bacharelado em Ciência e TecnologiaProcessamento da InformaçãoTESTE DE MESAAplicação do Teste de MesaNota-se que o RESULTADO exibido pelo programa é INVÁLIDO, ou seja, nãoatende ao enunciado. O programa deveria ter exibido 3 e 12.O teste de mesa cumpriu seu objetivo que foi “detectar” o ERRO.LINHA a b7 (12) ?9 (3)10 311 312 {3}13 {3}
  20. 20. Bacharelado em Ciência e TecnologiaProcessamento da InformaçãoTESTE DE MESANova soluçãoPara efetuar a troca necessita-se de uma TERCEIRA variável (auxiliar)
  21. 21. Bacharelado em Ciência e TecnologiaProcessamento da InformaçãoTESTE DE MESAAplicação do Teste de MesaLINHA a b aux7 (12) ? ?9 (3)10 1211 312 1213 {3}14 {12}
  22. 22. Bacharelado em Ciência e TecnologiaProcessamento da InformaçãoTESTE DE MESAObservações Os testes de mesa podem ser SIMPLIFICADOS, focandoapenas nas MODIFICAÇÕES das variáveis, sem osdetalhes das linhas em que ocorrem as modificações Nesse caso, fica mais difícil reconstituir o “passo a passo” Testes de Mesa são essencialmente importantes comALGORITMOS COMPLEXOS (com seleção, repetição,etc)
  23. 23. Bacharelado em Ciência e TecnologiaProcessamento da InformaçãoTESTE DE MESAAGORA ÉPRATICAR!!!

×