Para fazer downloads, de apostilas, do copilador pascalzim, e exemplos de programas, clique aqui.
segunda-feira, 10 de maio de 2010
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:
Para esrever e ler nos arquivos temos :
- 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:
- Eof – Função que indica se chegamos ao fim do arquivo (End-Of-File)
- Eoln – Função que indica se chegamos ao fim de uma linha (End-Of-Line)
- Flush – Permite "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:
- Erase – Apaga um arquivo existente no disco.
- Rename – Renomeia um arquivo existente em disco.
- Chdir – Troca de diretório (Change Dir).
- Mkdir – Cria um novo diretório (Make Dir).
- Rmdir – Apaga um diretório do disco (Remove Dir).
- Getdir – Retorna 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.
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.
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.
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.
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.
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.
Área de declarações - 1
Nesse post, iremos falar um pouco detalhadamente sobre cada uma das sub-áreas da área de declaração.
Var: Variável, é o espaço reservado na memória ram, que possui nome e tipo. Estudaremos cinco tipos definidos de variáveis.
Uses: O comando Uses serve para você chamar uma unit do pascal e todas as funções que tem essa Unit. Ele chama a unidade para que vc possa usar suas funções.
Ex:
Uses crt, dos, graph, windos;
Label: Um rótulo pode ser qualquer identificador, ou um inteiro entre 0 e 9999. Com o comando goto, podemos forçar o retnorno do programa a qualquer um dos rótulos definidos.
Constantes: Usada para associar um valor fixo a um identificador.
Ex:
Const num : 13;
Nesse post iremos continuar as definições das sub-áreas da área de declaraçao de um programa.
Type: É uma sequência de identificadores ordenados, definidos pelo programador.
Ex:
Type meses= (Janeiro, Fevereiro, Março, Abril, Maio, Junho.
No próximo post, você irá aprender um pouco sobre FUNCTIONS e PROCEDURES, subprogramas, e que também se encontram na Área de declarações.
Var: Variável, é o espaço reservado na memória ram, que possui nome e tipo. Estudaremos cinco tipos definidos de variáveis.
- String - Aceita caracteres alfa numéricos, seu comprimento máximo é de 255 caracteres.
- Char - Aceita apenas um caracter alfa numérico, você pode digitar um nome completo, porém esta salvará apenas a inicial do nome .
- Integer - Ela representa o conjunto dos números reais num intervalo entre -32768 a 32767, ocupando 2 bytes de memória ram.
- Real - O número possui uma parte inteira e uma decimal, ocupando cerca de 6 bytes de memória ram.
- Boolean - Essa variável pode receber apenas dois valores, true e false, ocupando apenas 1 byte da memoria ram.
Uses: O comando Uses serve para você chamar uma unit do pascal e todas as funções que tem essa Unit. Ele chama a unidade para que vc possa usar suas funções.
Ex:
Uses crt, dos, graph, windos;
Label: Um rótulo pode ser qualquer identificador, ou um inteiro entre 0 e 9999. Com o comando goto, podemos forçar o retnorno do programa a qualquer um dos rótulos definidos.
Constantes: Usada para associar um valor fixo a um identificador.
Ex:
Const num : 13;
Nesse post iremos continuar as definições das sub-áreas da área de declaraçao de um programa.
Type: É uma sequência de identificadores ordenados, definidos pelo programador.
Ex:
Type meses= (Janeiro, Fevereiro, Março, Abril, Maio, Junho.
No próximo post, você irá aprender um pouco sobre FUNCTIONS e PROCEDURES, subprogramas, e que também se encontram na Área de declarações.
Exemplo
Aqui temos um exemplo simples de programa, onde há, cabeçalho, area de declarações (apenas utilizando o var neste) e corpo do programa.
Program Ex_pl ; // cabeçalho
Var // área de declaração
nome:string;
Begin // corpo do programa
Writeln('Digite seu nome');
Readln(nome);
End.
Program Ex_pl ; // cabeçalho
Var // área de declaração
nome:string;
Begin // corpo do programa
Writeln('Digite seu nome');
Readln(nome);
End.
domingo, 9 de maio de 2010
Partes do programa
Para o contúdo da disciplina de lógica terei, como base a linguagem de programaçao pascal, que foi desenvolvida para fins educacionais.
Em pascal, o programa se divide basicamente em três partes, que são essas :
Cabeçalho: Área utilizada para identificar ou nomear o programa. O cabeçalho do programa é atribuído pela palavra reservada "PROGRAM" seguido de seu nome, o programa não pode receber em seu nome, palavras reservadas pelo copilador, pois quando você for roda-lo, aparece-rá uma mensagem de erro, para indicarmos o fim do nome do programa usamos o sinal gráfico ";". Se o nome do programa for composto por mais de um nome, você deve usar o sinal gráfico underline "_" para preencher os espaços em branco.
Área de Declarações: Esta área é utilizada para validar o uso de qualquer tipo de identificador que não seja predefinido, podendo ser dividida em sete, sub-áreas: USES, LABEL, CONST, TYPE, VAR, PROCEDURE e FUNCTION.
Corpo do programa: O programa em pascal, localiza-se basicamente, no corpo do programa, ela tem inicio com o uso do BEGIN e final ao END. onde no intervalo entre eles, é que são digitadas todos os comando do programa. No corpo também encontramos os dispositivos de entrada e saída de dados, READ e WRITE, respectivamente, responsáveis pelos comandos do programa.
Em pascal, o programa se divide basicamente em três partes, que são essas :
Cabeçalho: Área utilizada para identificar ou nomear o programa. O cabeçalho do programa é atribuído pela palavra reservada "PROGRAM" seguido de seu nome, o programa não pode receber em seu nome, palavras reservadas pelo copilador, pois quando você for roda-lo, aparece-rá uma mensagem de erro, para indicarmos o fim do nome do programa usamos o sinal gráfico ";". Se o nome do programa for composto por mais de um nome, você deve usar o sinal gráfico underline "_" para preencher os espaços em branco.
Área de Declarações: Esta área é utilizada para validar o uso de qualquer tipo de identificador que não seja predefinido, podendo ser dividida em sete, sub-áreas: USES, LABEL, CONST, TYPE, VAR, PROCEDURE e FUNCTION.
Corpo do programa: O programa em pascal, localiza-se basicamente, no corpo do programa, ela tem inicio com o uso do BEGIN e final ao END. onde no intervalo entre eles, é que são digitadas todos os comando do programa. No corpo também encontramos os dispositivos de entrada e saída de dados, READ e WRITE, respectivamente, responsáveis pelos comandos do programa.
Introduçao
Para ficarmos mais familiarizados com o assunto, uma pequena introdução sobre "Lógica" :
Lógica é uma disciplina essencial, para quem pretende seguir na área de desenvolvimento de softwares, sendo necessario estudá-la antes de qualquer linguagem de programação específica (DELPHI, C, VISUAL BASIC), para que você não sinta nenhuma dificuldade, no estudo de programação.
Bom, agora que você já entende, o porquê da lógica, nas próximas postagens tentarei mostrar da forma mais ampla e clara possível, o conteúdo da disciplina
Lógica é uma disciplina essencial, para quem pretende seguir na área de desenvolvimento de softwares, sendo necessario estudá-la antes de qualquer linguagem de programação específica (DELPHI, C, VISUAL BASIC), para que você não sinta nenhuma dificuldade, no estudo de programação.
Bom, agora que você já entende, o porquê da lógica, nas próximas postagens tentarei mostrar da forma mais ampla e clara possível, o conteúdo da disciplina
Assinar:
Postagens (Atom)