Baixe o app para aproveitar ainda mais
Prévia do material em texto
76 Introdução a Programação Capítulo 3 – Ambientes de Programação Algorítmica Para amenizar a vontade de sair da “programação no papel” que a maior parte dos alunos de Introdução à Programação experimenta, sugerimos nesta etapa da disciplina, uma vez que você já sabe criar um algoritmo básico, o uso de uma ferramenta de compilação algorítmica. O uso de uma ferramenta como essa permite aos alunos iniciantes em programação, o exercício dos seus conhecimentos em um ambiente próximo da realidade da programação convencional. E isso pode ser bem interessante! Pois, nos anos que ensino a disciplina de Introdução à Programação (há mais de dez anos) notei que, para o aluno, fica muito abstrato programar “no papel”. Por outro lado, submetê-lo “de cara” aos rigores do uso de uma ferramenta para programação em uma linguagem como C, por exemplo, aumentaria em muito a complexidade do aprendizado. Dessa forma, acho recomendável, fazer uso de um ambiente integrado, onde o aluno tenha à disposição ferramentas como: editor para digitação do algoritmo; tradutor (compilador ou interpretador), a fim de converter o algoritmo para linguagem de máquina e executá-lo e, se necessário, depurar erros é de extrema valia para o aprendizado; podendo, assim, amenizar a “sede” de usar uma ferramenta de programação. Existem várias ferramentas desse tipo que foram implementadas em universidades brasileiras. Algumas das que encontramos com maior destaque foram: » Portugol/Plus - http://www.c5.cl/ieinvestiga/actas/ribie98/118.html » G-Portugol - http://gpt.berlios.de/manual_nodes/manual.html » ILA: Interpretador de Linguagem Algorítmica - http://www. exatec.unisinos.br/_professores/gerador.php?professor=crespo&id_ menu=434&id_submenu=189 » WebPortugol - http://www.univali.br/webportugol » AlgoMais - http://www.brasilacademico.com/maxpt/links_goto.asp?id=808 » Hall - http://www.paim.pro.br/hall/ » VisuAlg - http://www.apoioinformatica.inf.br/download.htm 77 Introdução a Programação Infelizmente, não há padronização entre a linguagem algorítmica utilizada por qualquer uma delas, fazendo com que fosse preciso optar por adotar apenas uma. Dessa forma, optamos por indicar o uso da ferramenta VisuAlg. A limitação é que a mesma executa apenas em ambiente Windows. Porém, é uma ferramenta gratuita, estruturada, com ambiente integrado para edição do algoritmo, interpretação e execução, tem facilidades para depuração de erros, uma interface simples e o arquivo de instalação é pequeno, podendo ser baixado inclusive por quem tem internet discada. A seguir daremos mais detalhes sobre essa ferramenta. O VisuAlg O VisuAlg é uma ferramenta simples, que não depende de bibliotecas, máquinas virtuais ou outros componentes. Sua instalação não copia arquivos para nenhuma outra pasta a não ser aquela em que ela for instalada e exige cerca de 1 MB de espaço em disco. Pode ser executado sob Windows 95 ou posterior e tem melhor aparência com resolução de vídeo de 800x600 ou maior. Os detalhes sobre a ferramenta, seus objetivos, desenvolvimento, linguagem algorítmica utilizada e explicação das telas, podem ser encontrados em: http://www.apoioinformatica.inf.br/visualg/objetivos.htm Reserve um tempo para dar uma olhada nesse link, pois ele contém informações detalhadas sobre a ferramenta para que você possa utilizá-la da melhor maneira. Além do material on-line do link acima, no ambiente está disponível o manual do VisuAlg, bem ilustrado e detalhado. E a linguagem algorítmica utilizada pelo VisuAlg? Bem, não precisa se preocupar, pois ela é exatamente igual à sintaxe dos comandos que foram apresentados até agora. Para baixar a ferramenta, use o link http://www.apoioinformatica.inf. br/download.htm Nele escolha a opção VisuAlg. Vai iniciar o download de um arquivo chamado setupv2.exe. Depois que baixar esse arquivo, basta clicar duas vezes sobre o nome dele e o VisuAlg será instalado. Um ícone para ativação do VisuAlg (Figura 26) será criado na área de trabalho, após a instalação. Clicando neste ícone, o ambiente é aberto (Figura 27) e você já pode começar a digitar o seu algoritmo, aproveitando o esqueleto de código que já vem dentro da janela do editor. 78 Introdução a Programação Figura 26 - Atalho para Ativação do VisuAlg No mais, algumas observações importantes para usar a ferramenta são: ela permite apenas um comando por linha. Na versão atual do VisuAlg (2.0), com exceção das rotinas de entrada e saída, não há nenhum subalgoritmo embutido, calculo de raiz quadrada, incremento, etc. Todas as palavras-chave do VisuAlg foram implementadas sem acentos ou cedilha. Portanto, o tipo de dados lógico é definido como logico, o comando se..então..senão é definido como se..entao..senao, e assim por diante. O VisuAlg, também, não distingue maiúsculas e minúsculas no reconhecimento de palavras-chave e nomes de variáveis. Figura 27 - Tela do VisuAlg Para praticar, você pode usar o VisuAlg para implementar alguns dos algoritmos resolvidos nos capítulos anteriores. Testes de Algoritmos (Teste de Mesa) Para testar se as funcionalidades implementadas em um algoritmo estão corretas é necessário testar o algoritmo, verificando o conteúdo das variáveis passo a passo. Para efetuar esta tarefa, costuma-se utilizar o chamado Teste de Mesa ou Teste Exaustivo. Realizar este teste significa seguir passo a passo as instruções do algoritmo, de maneira precisa, para verificar se o que foi implementado está correto 79 Introdução a Programação ou não, a partir dos resultados gerados e dos valores parciais de cada variável. Este teste permitirá que o programador visualize o comportamento de todo o processo, cheque se o algoritmo está correto e corrija eventuais erros, se existirem. Em Informática, dá-se o nome de “bugs” aos erros de um programa. O processo de identificação e correção dos erros denomina-se “debugging”. Os erros podem ser dos seguintes tipos: » Erros Sintáticos - ocorrem quando as instruções do programa não são escritas de acordo com a sintaxe da linguagem sendo usada. Por exemplo: se eu esquecesse um fimse de um comando se, o comando estaria incompleto. Não estaria definido conforme a sintaxe da linguagem. Por isso, ocorreria o erro sintático. Este tipo de erro impede a execução do algoritmo ou programa. » Erros Semânticos (ou lógicos) - ocorrem quando o código escrito pelo programador não gera o resultado desejado por este. Ou seja, o código está sintaticamente correto, mas o resultado gerado pelo algoritmo não está correto. Erros de lógica podem ser simplesmente uso incorreto de operadores (+ no lugar de -, usar o operador OU no lugar de usar o E), atribuições erradas (por exemplo, pedir para digitar o nome da pessoa e guardar o que for digitado na variável endereço), etc. Os erros sintáticos são fáceis de encontrar e corrigir, porque, geralmente, o compilador se encarrega de apontá-los e, normalmente, dá uma indicacão do tipo de erro. O programa só é executado quando não existem mais erros sintáticos. Já os erros semânticos são de detecção mais difícil, uma vez que os compiladores não podem encontrar erros de lógica, já que não têm conhecimento sobre o que o programador deseja fazer. Dessa forma, erros de lógica só podem ser encontrados e remediados pelo programador. Esse tipo de erro pode fazer com que o programa exiba comportamentos inesperados. E como se faz o teste de mesa? 1. Leia o algoritmo que foi escrito. 2. Crie uma coluna para cada uma das variáveis declaradas no algoritmo e uma coluna para a saída de dados (o que vai ser impresso na tela). 3. Em seguida,acompanhe linha a linha a execução do algoritmo, 80 Introdução a Programação anotando nas colunas apropriadas cada mudança de valor das variáveis ou do que foi escrito na tela. 4. Preste atenção nas estruturas condicionais (porque pode haver instruções que não serão executadas) e nas estruturas de repetição (porque pode haver trechos de instruções que devem ser executados mais de uma vez). 5. Siga a execução até chegar ao final do algoritmo. Uma animação interessante sobre um exemplo de teste de mesa simples pode ser vista em http://www.brasilacademico.com/ed/testemesa. htm. Vamos dar mais um exemplo. Suponha um algoritmo para ler duas notas de um aluno e calcular a média das mesmas. Depois indicar se o aluno foi aprovado (média >= 7) ou não. Suponha também que os valores digitados para as notas serão 8.0 e 9.0, respectivamente. algoritmo “calcularMedia” var N1, N2, Media : real inicio escreva(“Digite o valor da Primeira Nota “) leia(N1) escreva(“Digite o valor da Segunda Nota “) leia(N2) Media <- (N1 + N2)/2 se (Media >= 7) entao escreva(“Aprovado. Média = “, Media) senao escreva(“Reprovado. Média = “, Media) fimse fimalgoritmo Seguindo os passos que foram explicados do teste de mesa, vai ser criada uma coluna para cada variável do algoritmo e uma coluna para o que vai aparecer na tela. Em seguida, você vai seguindo, linha a linha, passo a passo a execução do algoritmo, com os valores de teste sugeridos e vai preenchendo a tabela criada (vide Tabela 9), até terminar o algoritmo. 81 Introdução a Programação Executando Variáveis NoLinha N1 N2 Media Aparece na tela 4 Digite o valor da Primeira Nota 5 8.0 6 8.0 Digite o valor da Segunda Nota 7 8.0 9.0 8 8.5 10 Aprovado. Média = 8.5 Tabela 9 - Exemplo de teste de mesa Como as variáveis foram preenchidas corretamente e o resultado impresso na tela está correto, o algoritmo criado está correto. Vamos Revisar? Neste capítulo, foi apresentado um ambiente para programação usando linguagem algorítmica (o que pode facilitar a prática dos exercícios). Além disso, foi demonstrada uma forma de testar os algoritmos escritos, chamado teste de mesa. No próximo capítulo, vamos estudar os tipos estruturados de dados. Eles servem para agrupar dados do mesmo tipo ou de tipos diferentes em conjuntos. E isso vai lhe dar muito mais “poder de fogo” na construção dos algoritmos.
Compartilhar