Linguagem de Programação I Prof. Marcio Gonçalves
Programa de Computador? “ Seqüência lógica e finita de tarefas que o computador deve seguir para solucionar um determinado problema. ’’ Criados a partir de uma linguagem de programação
Linguagem de Programação ? “ ...linguagem corrente, normalmente o inglês, onde, com o uso de interpretador, converte-se em linguagem de máquina. ’’
A Linguagem Pascal Criada na década de 70, Suiça; Homenagem a Blaise Pascal; Baseado em ALGOL e PLI; Popularização na década de 80; Borland lança Turbo Pascal. Criador do Pascal: Niklaus Wirth Blaise Pascal: Matemático e Filósofo Francês
Histórico da Linguagem ... Versão 3.0: baseada no Pascal Padrão; Versão 4.0: ambiente integrado; programas maiores do que 64 Kb;
Histórico da Linguagem ... Versão 5.0: novos tipos de dados; permite depuração de programas. Versão 5.5: programação orientada a objetos.
Histórico da Linguagem ... Versão 6.0: Janelas; Turbo Vision; Versão 7.0: Windows.
Características da Linguagem Baseado na Técnica de Programação Estruturada (TOP-DOWN): permite a decomposição do problema em partes independentes; Estruturas de controle pré-definidas: oferece diversas estruturas de seleção e repetição;
Características da Linguagem Comentários: facilita a manutenção dos programas; Modularidade: permite a depuração, validação e testes individuais;
Características da Linguagem Reusabilidade: fornece condições para a construção de bibliotecas de programas;
Estrutura do Programa Pascal Três áreas distintas: Cabeçalho; Declarações; Instruções.
Estrutura do Programa Pascal Sintaxe: PROGRAM Nome_do_programa; [ declarações ] BEGIN [ Instruções ] END.
Cabeçalho: PROGRAM Nome_do_programa; Nome_do_programa identificador Identificador: letras (A..Z, a..z, 0..9, _ )
Declarações: Variáveis: Todas devem ser declaradas; Sintaxe: VAR identificador [,identificador, ...] : tipo;
Declarações: Constantes: Valores pré-definidos; Sintaxe: CONST identificador [,identificador,...] : tipo = expressão;
Declarações: Tipos: Definição de novos tipos; Sintaxe: TYPE identificador [,identificador,...] = tipo;
Declarações: Rótulos: Desvios de programa; Sintaxe: LABEL identificador [,identificador,...];
Instruções: Comandos de Leitura/Escrita; Operações Aritméticas e Lógicas; Atribuições; Estruturas de Condição e Repetição; Chamadas de Subprogramas.
Instruções: Exemplo: PROGRAM Exemplo_Instrucoes; VAR a : REAL; BEGIN READLN (a); WRITELN (a); END.
Tipos de Dados em Pascal Numéricos (inteiros): BYTE 0..255 1 SHORTINT -128..127 1 WORD 0..65535 2 INTEGER -32768..32768 2 LONGINT -2147483638..2147483647 4
Tipos de Dados em Pascal Numéricos (reais): SINGLE 1.5-45.. 3.438 4 bytes REAL 2.9-39..1.738 6 bytes EXTENDED 3.4-4932..1.14932 10 bytes DOUBLE 5.0-324..1.7308 8 bytes COMP -9.218..9.218 8 bytes
Tipos de Dados em Pascal Alfanuméricos: CHAR 1 (um) caracter 1 byte STRING cadeia de car. 2 a 256 bytes Lógicos: BOOLEAN True/False 1 byte Ponteiros: POINTER end. memória 2 bytes
Comando de Atribuição identificador := expressão ; Exemplos: A := 5.5; B := A * 2; C := TRUE; D := NOT C;
Lê o conteúdo de uma variável, armazenando-a na memória Comando de Entrada Lê o conteúdo de uma variável, armazenando-a na memória Sintaxe: READ (identificador [, identificador, ...]); READLN (identificador [, identificador, ...]);
Escreve o conteúdo de uma variável armazenada na memória Comando de Saída Escreve o conteúdo de uma variável armazenada na memória Sintaxe: WRITE (identificador [, identificador, ...]); WRITELN (identificador [, identificador, ...]);
Operadores Aritméticos: Relacionais: + , - , * , / DIV: divisão de inteiros MOD: resto de uma divisão de inteiros Relacionais: = , <> , > , < , >= , <=
Operadores Booleanos: NOT, AND, OR e XOR Alfanuméricos: +
Documentação do Programa Facilita a utilização e manutenção de um programa. Tipos de Documentação: Manutenção Usuário
Documentação do Programa Manutenção: Documentação do Sistema e da Programação (Comentários); Documentação de Testes (Exemplos, E/S); Documentação Histórica.
Documentação do Programa Usuário: Manual do Usuário Operação Instalação Referência Interface
Estruturas de Condição Verificam se um determinado bloco de instruções deve ou não ser executado. If - Then (Se Então) If - Then - Else (Se Então Senão) Case - Of (Escolha)
Estruturas de Repetição Permitem que um determinado bloco de instruções seja executado mais de uma vez. For - Do (Para Faça) While - Do (Enquanto Faça) Repeat - Until (Repita Até)
Utilizados para agrupar informações com características comuns Conjuntos Utilizados para agrupar informações com características comuns Sintaxe: TYPE identificador = SET of TIPO; ou CONST identificador [: tipo] = [valores];
Rotinas que realizam uma determinada função específica: Subprogramas Rotinas que realizam uma determinada função específica: Funções e Procedimentos Pré-Definidos Funções e Procedimentos definidos pelo Programador.
Subprogramas Ativadas por um programa principal ou por outros subprogramas, causando um desvio.
Funções (Function) Retornam um resultado, devendo, portanto, ter um tipo; Podem ser ativadas em atribuição, condição e parâmetros. Sintaxe FUNCTION identificador [(parâmetros : tipo)] : tipo;
Procedimentos (Procedure) Podem ou não retornam um resultado; Comando isolado no programa. Sintaxe PROCEDURE identificador [(parâmetros : tipo)];
Parâmetros em Subprogramas Por Valor: O parâmetro formal recebe o conteúdo do parâmetro atual; Por Referência: O parâmetro formal e o parâmetro atual tem o mesmo endereço de memória.