Pascal -Cabeçalho do programa Áreas do programa -Área de declarações -Corpo do programa - label - const - type - var - procedure - function - integer - real - byte - boolean - char - string
Program <nome do programa>; Uses <biblioteca>; Label {definições dos labels necessários} Const {definição das constantes do programa} Type {definição de tipos inexistentes no Pascal} Var {declarações de todas as variáveis necessárias para o programa} Procedure <nome>; {corpo do procedimento} end; Function <nome> <tipo>; {corpo da função} end; {programa principal} Begin {corpo do programa principal} End
Tipos de variáveis TIPO integer Real Char Boolean string INTERVALO -32768 a 32767 29*10-39 a 17*10 38 Caracteres do teclado True e False Cadeia de caracteres TAMANHO 2 bytes 6 bytes 1 byte - Até 256 bytes
OPERADORES ARITMÉTICOS E FUNÇÕES Símbolos Operadores * multiplicação / divisão real DIV divisão inteiro + adição - subtração ** ou ^ exponenciação Pi valor de Sqr quadrado do nº Sqrt raiz quadrada LÓGICOS Operador Função And E lógico Or OU lógico Not NÂO lógico RELACIONAIS Símbolos Significado > Maior que < Menor que >= Maior ou igual <= Menor ou igual = Igualdade <> Diferença = Atribuição simples
ESTRUTURAS CONDICIONAIS ALTERNATIVA SIMPLES If (condição) then comando; ALTERNATIVA COMPOSTA If (condição) then comando 1; comando n; end else comando 1; comando n; end; ALTERNATIVA COMPOSTA If (condição) then comando else comando; ENCADEAMENTO If (condição 1) then comando 1 else if (condição 2) then comando 2 else comando 3;
MÚLTIPLA ESCOLHA Case of Case <expressão> of opção 1 comando; opção 2 comando; opção n comando; Valor de uma variável (char ou integer) end; else comando;
ESTRUTURAS DE ITERAÇÃO (repetição) for <variável> = <valor_1> to <valor_n> do comando 1; comando n; end; for <variável> = <valor_n> downto <valor_1> do comando 1; comando n; end;
ESTRUTURAS DE ITERAÇÃO (repetição) while (<condição>) do comando 1; comando n; end; repeat comando 1; comando n; until(<condição>);
Procedimentos e Funções Procedure nome (<lista de parâmetros e tipos>); <declarações locais a este procedimento> <corpo do procedimento> End; Function nome (<lista de parâmetros>) <tipo>; <declarações locais a esta função> <corpo da função> End;
Vetores Vetor representa um endereço de memória onde são armazenados diversos dados Vetores Unidimensionais (sintaxe) <variável> Array [Limite Inicial Limite Final] of <tipo>; Exemplos Var nome Array[110] of String[30]; idade Array[110] of integer;
Vetores Vetores com mais de uma dimensão (sintaxe) <variável> Array [Limite Inicial1 Limite Final1, Exemplos Var notas Array[150, 14] of real; Limite Inicialn Limite Finaln] of <tipo>;
Pesquisa Um algoritmo de busca(pesquisa) tem por objetivo realizar a busca de Um determinado dado em uma tabela Existem dois tipos(métodos) de pesquisa -SEQUENCIAL pesquisa do início até o fim, comparando cada elemento da tabela com a chave de pesquisa, se forem iguais o índice do elemento é retornado e a busca termina Este tipo de busca pode ser realizado em tabelas ordenadas ou não -BINÁRIA tem por característica reduzir sempre o espaço da tabela a ser procurado pela metade, objetivando assim, um menor tempo de procura de um determinado elemento dentro da tabela A redução pela metade da tabela deverá ser feita sucessivamente até que todo o processo de busca chegue ao seu final Para isso é necessário que os dados já estejam devidamente organizados (ordenados) pois senão, poderão ocorrer falhas
REGISTROS Com a utilização de matrizes notou-se que somente foi possível trabalhar com um tipo de dado por matriz No momento em que se precisou trabalhar com dois tipos de dados diferentes, foi necessária a utilização de duas matrizes, uma de cada tipo Para solucionar esta deficiência, poderá ser utilizada estrutura de dados registro, que consiste em trabalhar vários dados de tipos diferentes (campos) em uma mesma estrutura Por esta razão, este tipo de dado é considerado heterogêneo SINTAXE type <identificador>=record {lista de campos e seus tipos} var end; <variável><identificador>;
ARQUIVOS Para formar um arquivo devemos declarar uma variável do tipo arquivo Esta variável pode ser declarada de duas formas básicas identificador FILE OF tipo; ou identificador FILE; Porém, somente a declaração de uma variável do tipo arquivo não é suficiente para manipular o arquivo, são necessários alguns procedimentos como abrir o arquivo, inserir e/ou retirar algo do arquivo Para isso usa-se os comandos ASSIGN permite associar a variável do tipo arquivo ao nome externo deste arquivo, ou seja, o nome e local que deve estar ASSIGN (VAR <arq>, <nomearq> STRING);
ARQUIVOS (cont) RESET Este procedimento permite abrir um arquivo já existente RESET (VAR <arquivo> [ FILE; <tamanho> WORD]); REWRITE Este comando permite criar e abrir um novo arquivo REWRITE (VAR <arquivo>[ FILE; <tamanho> WORD]); CLOSE Permite que se feche um arquivo anteriormente aberto CLOSE (VAR <arq>); WRITE Permite gravar informações no arquivo WRITE (<arq>,<reg1>[,<reg2>,,<regn>]); READ Permite ler o conteúdo de um arquivo READ (<arq>, <reg>);
ARQUIVOS (cont) EOF Esta função nos retorna o valor TRUE quando for encontrada a marca de fim de arquivo EOF(VAR <arq>) BOOLEAN; SEEK Este procedimento permite que movamos o ponteiro do arquivo para uma posição preestabelecida, podendo ser usado em arquivos de qualquer tipo exceto os de tipo TEXTO SEEK (VAR <arq>; <posição> LONGINT); FILEPOS Esta função nos retorna a posição atual do ponteiro do arquivo Não pode ser usada em arquivos do tipo TEXTO FILEPOS (VAR <arq>)longint; FILESIZE Esta função retorna o tamanho de um arquivo em número de registros Não pode ser usada em arquivos do tipo TEXTO FILESIZE (VAR <arq>) LONGINT;