segunda-feira, 5 de abril de 2010

Visualg está enchendo o saco, um mini manual para ajudar


Bom, é muito provável que você não leia mais de 10 linhas aqui, ainda nem li todo;
mas coloquei aqui tudo o que encontrei a respeito do funcionamento do programa Visualg.


Com o tempo, vou editar este post trazendo umas sugestões próprias. Já quebrei a cabeça com este programa, principalmente, na parte da sintaxe dos comandos e no tipo de variável adotada. É importante tentarmos criar algoritmos que execute uma operação da maneira mais simples possível. Para isso, devemos familiarizarmos com a ferramenta e partirmos para a prática.

Assim, Voilà...


A Barra de Tarefas contém os comandos mais utilizados no VisuAlg (estes comandos também podem ser acessados pelo menu ou por atalhos no teclado).
Abrir (Ctrl-A): Abre um arquivo anteriormente gravado, substituindo o texto presente no editor. Se este tiver sido modificado, o VisuAlg pedirá sua confirmação para salvá-lo antes que seja sobreposto.
Novo (Ctrl-N): Cria um novo "esqueleto" de pseudocódigo, substituindo o texto presente no editor. Se este tiver sido modificado, o VisuAlg pedirá sua confirmação para salvá-lo antes que seja sobreposto.
Salvar (Ctrl-S): Grava imediatamente o texto presente no editor. Na primeira vez que um novo texto é gravado, o VisuAlg pede seu nome e localização. Imprimir: Imprime imediatamente na impressora padrão o texto presente no editor. Para configurar a impressão, use o comando Imprimir do menu Arquivo (acessível também pelo atalho Ctrl-P). Cortar (Ctrl-X): Apaga texto selecionado, armazenando-o em uma área de transferência. Copiar (Ctrl-C): Copia o texto selecionado para a área de transferência. Colar (Ctrl-V): Copia texto da área de transferência para o local em que está o cursor. Gravar bloco de texto: Permite a gravação em arquivo de um texto selecionado no editor. A extensão sugerida para o nome do arquivo é .inc. Inserir bloco de texto: Permite a inserção do conteúdo de um arquivo. A extensão sugerida para o nome do arquivo é .inc. Desfazer (Ctrl-Z): Desfaz último comando efetuado. Refazer (Shift-Ctrl-Z): Refaz último comando desfeito. Localizar (Ctrl-L): Localiza no texto presente no editor determinada palavra especificada. Substituir (Ctrl-U): Localiza no texto presente no editor determinada palavra especificada, substituindo-a por outra. Corrigir Indentação (Ctrl-G): Corrige automaticamente a indentação (ou tabulação) do pseudocódigo, tabulando cada comando interno com espaços à esquerda. Numerar linhas: Ativa ou desativa a exibição dos números das linhas na área à esquerda do editor.

A linha e a coluna do editor em que o cursor está em um determinado momento também são mostradas na barra de status (parte inferior da tela). Por motivos técnicos, esta opção é automaticamente desativada durante a execução do pseudocódigo, mas volta a ser ativada logo em seguida. Mostrar variáveis modificadas: Ativa ou desativa a exibição da variável que está sendo modificada. Como o número de variáveis pode ser grande, muitas podem estar fora da janela de visualização; quando esta característica está ativada, o VisuAlg rola a grade de exibição de modo que cada variável fique visível no momento em está sendo modificada. Este recurso é especialmente útil quando se executa um pseudocódigo passo a passo. Por questões de desempenho, a configuração padrão desta característica é desativada, quando o pseudocódigo está sendo executado automaticamente. No entanto, basta clicar este botão para executá-lo automaticamente com a exibição ativada. No final da execução, a configuração volta a ser desativada. Restaurar tela inicial: Retorna a divisão da tela ao formato inicial, caso você tenha mudado o tamanho da área do editor de texto, quadro de variáveis ou simulador de saída.

Executar (F9): Inicia (ou continua) a execução automática do pseudocódigo. Executar com timer (Shift-F9): Insere um atraso (que pode ser especificado no intervalo ao lado) antes da execução de cada linha. Também realça em fundo azul o comando que está sendo executado, da mesma forma que na execução passo a passo. Intervalo do timer: Atraso em cada linha, para quando se deseja executar o pseudocódigo com timer. Passo (F8): Inicia (ou continua) a execução linha por linha do pseudocódigo, dando ao usuário a oportunidade de acompanhar o fluxo de execução, os valores das variáveis e a pilha de ativação dos subprogramas. Parar (Ctrl-F2): Termina imediatamente a execução do pseudocódigo. Evidentemente, este botão fica desabilitado quando o pseudocódigo não está sendo executado. Liga/desliga breakpoint (F5): Insere/remove um ponto de parada na linha em que esteja o cursor. Estes pontos de parada são úteis para a depuração e acompanhamento da execução dos pseudocódigos, pois permitem a verificação dos valores das variáveis e da pilha de ativação de subprogramas. Desmarcar todos os breakpoints (Ctrl-F5): Desativa todos os breakpoints que estejam ativados naquele momento. Executar em modo DOS: Com esta opção ativada, tanto a entrada como a saída-padrão passa a ser uma janela que imita o DOS, simulando a execução de um programa neste ambiente. Gerar valores aleatórios: Ativa a geração de valores aleatórios que substituem a digitação de dados. A faixa padrão de valores gerados é de 0 a 100 inclusive, mas pode ser modificada (basta alterar intervalo ao lado). Para a geração de dados do tipo caractere, não há uma faixa pré-estabelecida: os dados gerados serão sempre strings de 5 letras maiúsculas. Intervalo dos valores aleatórios: Faixa de valores que serão gerados automaticamente, quando esta opção estiver ativada. Perfil (F7): Após a execução de um pseudocódigo, exibe o número de vezes que cada umas das suas linhas foi executada. É útil para a análise de eficiência (por exemplo, nos métodos de ordenação). Mostrar pilha de ativação (Ctrl-F3): Exibe a pilha de subprogramas ativados num dado momento. Convém utilizar este comando em conjunto com breakpoints ou com a execução passo a passo. Ajuda (F1): Possibilita acesso às páginas de ajuda e às informações sobre o VisuAlg. Quadro de Variáveis É formado por uma grade na qual são mostrados o escopo de cada variável (se for do programa principal, será global; se for local, será apresentado o nome do subprograma onde foi declarada), seus nomes (também com os índices, nos casos em que sejam vetores), seu tipo ("I" para inteiro, R" para real, C" para caractere e "L" para lógico) e o seu valor corrente. A versão atual do VisuAlg permite a visualização de até 500 variáveis (contando individualmente cada elemento dos vetores).



O VisuAlg tem três tipos de constantes:
Numéricos: são valores numéricos escritos na forma usual das linguagens de programação. Podem ser inteiros ou reais. Neste último caso, o separador de decimais é o ponto e não a vírgula, independente da configuração regional do computador onde o VisuAlg está sendo executado. O VisuAlg também não suporta separadores de milhares.
Caracteres: qualquer cadeia de caracteres delimitada por aspas duplas (").
Lógicos: admite os valores VERDADEIRO ou FALSO.
A atribuição de valores a variáveis é feita com o operador <- do seu lado esquerdo fica a variável à qual está sendo
atribuído o valor, e à sua direita pode-se colocar qualquer expressão (constantes, variáveis, expressões numéricas),
desde que seu resultado tenha tipo igual ao da variável.
A linguagem do VisuAlg permite apenas um comando por linha: desse modo, não há necessidade de tokens separadores de estruturas, como o ponto e vírgula em Pascal. Também não existe o conceito de blocos de comandos (que correspondem ao begin e end do Pascal e ao { e } do C), nem comandos de desvio incondicional como o goto. Na versão atual do VisuAlg, com exceção das rotinas de entrada e saída, não há nenhum subprograma embutido, tal como Inc(), Sqr(), Ord(), Chr(), Pos(), Copy() ou outro. Importante: para facilitar a digitação e evitar confusões, todas as palavras-chave do VisuAlg foram implementadas sem acentos, cedilha, etc. 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. Formato Básico do Pseudocódigo e Inclusão de Comentários O formato básico do nosso pseudocódigo é o seguinte: algoritmo "semnome" // Função :// Autor :// Data :// Seção de Declarações inicio // Seção de Comandos fimalgoritmo A primeira linha é composta pela palavra-chave algoritmo seguida do seu nome delimitado por aspas duplas. Este nome será usado como título nas janelas de leitura de dados (nas futuras versões do VisuAlg, talvez utilizemos este dado de outras formas). A seção que se segue é a de declaração de variáveis, que termina com a linha que contém a palavra-chave inicio. Deste ponto em diante está a seção de comandos, que continua até a linha em que se encontre a palavra-chave fimalgoritmo. Esta última linha marca o final do pseudocódigo: todo texto existente a partir dela é ignorado pelo interpretador. O VisuAlg permite a inclusão de comentários: qualquer texto precedido de "//" é ignorado, até se atingir o final da sua linha. Por este motivo, os comentários não se estendem por mais de uma linha: quando se deseja escrever comentários mais longos, que ocupem várias linhas, cada uma delas deverá começar por "//".Tipos de Dados O VisuAlg prevê quatro tipos de dados: inteiro, real, cadeia de caracteres e lógico (ou booleano). As palavras-chave que os definem são as seguintes (observe que elas não têm acentuação): inteiro: define variáveis numéricas do tipo inteiro, ou seja, sem casas decimais. real: define variáveis numéricas do tipo real, ou seja, com casas decimais. caractere: define variáveis do tipo string, ou seja, cadeia de caracteres. logico: define variáveis do tipo booleano, ou seja, com valor VERDADEIRO ou FALSO. O VisuAlg permite também a declaração de variáveis estruturadas através da palavra-chave vetor, como será explicado a seguir. Nomes de Variáveis e sua Declaração Os nomes das variáveis devem começar por uma letra e depois conter letras, números ou underline, até um limite de 30 caracteres. As variáveis podem ser simples ou estruturadas (na versão atual, os vetores podem ser de uma ou duas dimensões). Não pode haver duas variáveis com o mesmo nome, com a natural exceção dos elementos de um mesmo vetor. A seção de declaração de variáveis começa com a palavra-chave var, e continua com as seguintes sintaxes: lista-de-variáveis :tipo-de-dado lista-de-variáveis :vetor "[" lista-de-intervalos "]" de tipo-dedado Na lista-de-variáveis ,os nomes das variáveis estão separados por vírgulas. Na lista-de-intervalos ,os intervalo são separados por vírgulas, e têm a seguinte sintaxe: intervalo :valor-inicial .valor-final Na versão atual do VisuAlg, tanto valor-inicial como valor-final devem ser inteiros. Além disso, exige-se evidentemente que valor-final seja maior do que valor-inicial .Exemplos: var a: inteiro Valor1, Valor2: real vet: vetor [1.10] de real matriz: vetor [0.4,8.10] de inteiro nome do aluno: caractere sinalizador: logico Note que não há a necessidade de ponto e vírgula após cada declaração: basta pular linha. A declaração de vetores é análoga à linguagem Pascal: a variável vet acima tem 10 elementos, com os índices de [1] a [10], enquanto matriz corresponde a 15 elementos com índices [0,8], [0,9], [0,10], [1,8], [1,9], [1,10], até [4,10]. O número total de variáveis suportado pelo VisuAlg é 500 (cada elemento de um vetor é contado individualmente). Constantes e Comando de Atribuição O VisuAlg tem três tipos de constantes: Numéricos: são valores numéricos escritos na forma usual das linguagens de programação. Podem ser inteiros ou reais. Neste último caso, o separador de decimais é o ponto e não a vírgula, independente da configuração regional do computador onde o VisuAlg está sendo executado. O VisuAlg também não suporta separadores de milhares. Caracteres: qualquer cadeia de caracteres delimitada por aspas duplas ("). Lógicos: admite os valores VERDADEIRO ou FALSO. A atribuição de valores a variáveis é feita com o operador -Do seu lado esquerdo fica a variável à qual está sendo atribuído o valor, e à sua direita pode-se colocar qualquer expressão (constantes, variáveis, expressões numéricas), desde que seu resultado tenha tipo igual ao da variável. Alguns exemplos de atribuições, usando as variáveis declaradas acima: a -3 Valor1 -1.5 Valor2 -Valor1 +a vet[1] -vet[1] +(a *3) matriz[3,9] -a/4 -5 nome do aluno -José da Silva" sinalizador –FALSO.
O VisuAlg tem uma característica para a criação de pseudocódigos que pode aumentar a rapidez da digitação e também diminuir a possibilidade de erros: é a auto-digitação. Para utilizar esta característica, basta escrever uma abreviatura da palavra-chave ou do comando a ser diigtado e teclar Ctrl-Espaço. O VisuAlg completa então o comando automaticamente, colocando o cursor no ponto adequado para se continuar a digitação (nos exemplos abaixo, este ponto é indicado através de um *). Eis a lista de abreviaturas com os respectivos comandos: (Ponto de exclamação) Cria um modelo de pseudocódigo. algoritmo "semnome" inicio fimalgoritmo -Cria um cabeçalho de programa. // // // // Algoritmo :Função :Autor :Data :ale, aof, aon -Inserem os comandos aleatorio, aleatorio off ou aleatorio on, respectivamente. alg -Insere a linha algoritmo e pede a digitação do seu nome. algoritmo "arq -Insere o comando arquivo e pede a digitação do seu nome. arquivo "cof, con -Inserem os comandos cronometro off ou cronometro on, respectivamente. dcc -Insere uma declaração de variáveis caracteres. var *caractere dcl -Insere uma declaração de variáveis lógicas. var *logico dcr -Insere uma declaração de variáveis reais. var *real deb -Insere o comando debug eof, eon -Inserem os comandos eco off ou eco on, respectivamente. esc -Insere o comando escreva. escl -Insere o comando escolha (sem a cláusula outrocaso). escolha *caso fimescolha esco -Insere o comando escolha (com a cláusula outrocaso). escolha *caso outrocaso fimescolha enq -Insere o comando enquanto. enquanto *faca fimenquanto fal -Insere a linha fimalgoritmo. ini -Insere a linha inicio. int -Insere o comando interrompa. lep -Insere o comando leia. leia (*) par -Insere o comando para. para *de 1 ate faca fimpara parp -Insere o comando para com passo. para *de ate passo faca fimpara rep -Insere o comando repita. repita *ate repf -Insere o comando repita com fimrepita. repita *fimrepita see -Insere o comando se sem a alternativa senao. se *entao fimse ses -Insere o comando se completo. se *entao senao fimse tim -Insere os comandos timer on e timer off. timer on *timer off tof, ton -Inserem os comandos timer on ou timer off, respectivamente. A sugestão de digitação é disponibilizada através das teclas Ctrl-J. Basta começar a digitação de uma palavra e teclar Ctrl-J para que o VisuAlg mostre uma lista com sugestões de palavras chave que completam o que foi digitado. Para escolher, é necessário dar um duplo-clique sobre a opção desejada, ou então selecioná-la com as setas e teclar Enter. Se o usuário continua escrevendo depois que o VisuAlg apresentou a lista de sugestões, o programa continuará procurando palavras que ainda complementem o que foi digitado. Ao se teclar Esc ou clicar "fora da lista",ela desaparece.

Nenhum comentário:

Postar um comentário