Buscar

Introducao_a_Programacao_-_Capitulo_3

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 6 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 6 páginas

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.

Outros materiais