segunda-feira, 10 de maio de 2010

Downloads

Para fazer downloads, de apostilas, do copilador pascalzim, e exemplos de programas, clique aqui.

Arquivos

Os arquivos texto são um tipo de dados pré-definido da linguagem Pascal, sendo necessária a sua declaração na sub-área de declaração VAR. Para a manipulação de arquivos de texto, usamos quatro comandos, são esses:

  • Assign: Relaciona o nome de um arquivo físico existente em disco ao nome de uma variável do programa usada para se referir ao arquivo em disco.
  • Rewrite: Abre o arquivo em disco, apagando todo o seu conteúdo, e sendo escrito a partir do seu início. Ele é usado pra criar um arquivo e escrever nele. Se você executar o comando rewrite e o arquivo jah existir e possuir informações, todos seu conteúdo será perdido.
  • Append: Abre um arquivo já existente em disco, e prepara-se para escrever no final deste. O arquivo deve obrigatoriarmente já existir no disco, pois esse comando apenas adiciona(escreve) novas informações no fim do arquivo.
  • Reset: Abre um arquivo em disco, e prepara-se para ler todo seu conteúdo a partir do início. Se o arquivo não existir em disco, ocorrerá um erro ao executar esse comando.
  • Close: Fecha o arquivo, atualizando as informações do disco.

Para esrever e ler nos arquivos temos :
  • Writeln: Escreve uma linha de texto no arquivo. Similar, ao comando writeln para vidio.
  • Readln: Lê uma linha de texto do arquivo. Similar ao comando readln para vidio

Para que se possa saber a posição em que nos encontramos em um arquivo, ou para que possamos nos posicionar, temos os seguintes comandos:

  • EofFunção que indica se chegamos ao fim do arquivo (End-Of-File)
  • EolnFunção que indica se chegamos ao fim de uma linha (End-Of-Line)
  • FlushPermite "esvaziar" o buffer de leitura/escrita. Usada para ter certeza que o que está sendo lido ou escrito realmente está no arquivo e não em um buffer de memória.

Para manipular com diretórios e com arquivos de modo geral:

  • EraseApaga um arquivo existente no disco.
  • RenameRenomeia um arquivo existente em disco.
  • ChdirTroca de diretório (Change Dir).
  • MkdirCria um novo diretório (Make Dir).
  • RmdirApaga um diretório do disco (Remove Dir).
  • GetdirRetorna qual é o diretório corrente de trabalho.

Array

Array, também conhecido como vetor(array uni-dimensional) e matriz (array bi-dimensional).

Vetor: É um agregado de variáveis do mesmo tipo. Onde os dados são guardados em apenas uma linha.

Matriz: É quando os dados estão agregados em mais de uma linha. Um dos casos mais comuns é uma matriz de duas dimensões.

Estruturas de Decisão

Também conhecidas como estruturas de condiçao ou seleção, caracteriza-se peça execução de alguns comandos, dependendo da veracidade de uma condição.

If: O comando só será executado se a condiçao for verdadeira, caso não seja, será testada na outra sintaxe(ELSE, ELSE IF).

Case: O comando1 só será executado, se a condição for verdadeira, se essa condição for falsa, será executado o comando2.

Estruturas de Repetição

Quando precisamos repetir determinada quantidade de comandos, determinada quantidade de vezes, usamos de estruturas de repetição. Que é o mesmo que repetir o comando N vezes, sem ser necessário digita-lo sempre que fosse repeti-lo.

São estas as estruturas de repetição :

While: Repete enquanto a condição for verdadeira, onde o teste para a condição ocorre no inicio da estrutura.

Repeat: Ao contrario do while, esta estrutura repete enquanto a condição for falsa, e seu texto ocorre no fim do bloco de comando. Diferente das outras ela não possui begin - end, especifico.

For: Diferente das outras duas, a sequência de comandos é repetida um número definido de vezes, as outras duas são um numero indefinido de vezes, onde geralmente o usuário que determina quando quer parar.

Subprogramas -Aprofundamento

Agora iremos aprofundar um pouco mais o assunto de subprogramas, com variáveis locais e globais, e com passagens de parâmetros, por referencia e por valor.

Variáveis locais : Váriaveis declaradas no subprograma, e que são reconhecidas apenas nele, e não em todo o programa. Se por um acaso o subprograma(subprograma1) contém as definiçoes de um outro subprograma(subprograma2), todas as variaveis declaradas no programa principal e no subprograma1, são vistas no subprograma2, porem o inverso, não acontece.

Variáveis Globais: Variáveis declaradas no programa principal onde são conhecidas em todo programa inclusive em seus subprogramas.

Passagem por Valor: Comporta-se como uma variavel local, onde oq é modificado dentro do subprograma, não é alterado fora.

Passagem por Referencia: Se a por valor comporta-se como uma vareável, local, a passagem por referencia comporta-se como uma global, ou seja a variável tem seu valor alterado no subprograma, e esta alteração, também ocorre fora do subprograma.

Área de declarações - 2

Reservei esse post para os subrogramas qe se encontram na Área de declaraçao, funções(functions) e procedimentos(procedure).

Subprogramas- blocos de execuão internos de um programa, onde cada bloco executa uma tarefa determinada. Isto favorece a manutenção do programa, pois podemos tratar o problema de forma isolada. Os subprogramas, tem em seu corpo, alta semelhança com os programas, onde ambos possuem parâmetros de entrada e saída.

Function: Uma função obrigatoriarmente retorna um valor ao programa que a chama, chamamos uma função quando é avaliada uma expressão que a tem, ou seja, elas são usadas da mesma forma das funções predefinidas(Nas próximas postagens veremos funçoes predefinidas).

Procedure: Diferente da função um procedimento não retorna um valor ao programa principal, e este é ativado através de um comando de chamada do procedimento.