![Page 1: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/1.jpg)
Linguagem de Programação I
Prof. Marcio GonçalvesProf. Marcio Gonçalves
![Page 2: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/2.jpg)
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
![Page 3: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/3.jpg)
“ ...linguagem corrente,
normalmente o inglês, onde, com
o uso de interpretador, converte-
se em linguagem de máquina. ’’
Linguagem de Programação ?
![Page 4: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/4.jpg)
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.
A Linguagem Pascal
![Page 5: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/5.jpg)
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 ...
![Page 6: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/6.jpg)
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 ...
![Page 7: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/7.jpg)
Versão 6.0:Janelas;Turbo Vision;
Versão 7.0:Windows.
Histórico da Linguagem ...
![Page 8: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/8.jpg)
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;
![Page 9: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/9.jpg)
Características da Linguagem
Comentários: facilita a manutenção dos
programas;
Modularidade:permite a depuração, validação e
testes individuais;
![Page 10: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/10.jpg)
Características da Linguagem
Reusabilidade: fornece condições para a
construção de bibliotecas de programas;
![Page 11: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/11.jpg)
Estrutura do Programa Pascal
Três áreas distintas:
Cabeçalho;
Declarações;
Instruções.
![Page 12: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/12.jpg)
Estrutura do Programa Pascal
PROGRAM Nome_do_programa; [ declarações ]
BEGIN [ Instruções ]
END.
Sintaxe:
![Page 13: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/13.jpg)
Cabeçalho:
PROGRAM Nome_do_programa;
Nome_do_programa identificador
Identificador: letras (A..Z, a..z, 0..9, _ )
![Page 14: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/14.jpg)
Declarações:
Variáveis: Todas devem ser declaradas;
Sintaxe:
VAR
identificador [,identificador, ...] : tipo;
![Page 15: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/15.jpg)
Declarações:
Constantes: Valores pré-definidos;
Sintaxe:
CONST
identificador [,identificador,...]
: tipo = expressão;
![Page 16: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/16.jpg)
Declarações:
Tipos:
Definição de novos tipos;
Sintaxe:
TYPE
identificador [,identificador,...] = tipo;
![Page 17: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/17.jpg)
Declarações:
Rótulos: Desvios de programa;
Sintaxe:
LABEL
identificador [,identificador,...];
![Page 18: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/18.jpg)
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.
![Page 19: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/19.jpg)
Instruções:
Exemplo:PROGRAM Exemplo_Instrucoes;
VAR a : REAL;
BEGIN
READLN (a);
WRITELN (a);
END.
![Page 20: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/20.jpg)
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
![Page 21: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/21.jpg)
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
![Page 22: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/22.jpg)
Tipos de Dados em Pascal
Alfanuméricos: CHAR 1 (um) caracter 1 byte
STRING cadeia de car. 2 a 256 bytesLógicos:
BOOLEAN True/False 1 bytePonteiros:
POINTER end. memória 2 bytes
![Page 23: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/23.jpg)
Comando de Atribuição
identificador := expressão ;
Exemplos:A := 5.5;
B := A * 2;
C := TRUE;
D := NOT C;
![Page 24: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/24.jpg)
Comando de Entrada
Lê o conteúdo de uma variável, armazenando-a na memória
Sintaxe:READ (identificador [, identificador, ...]);
READLN (identificador [, identificador, ...]);
![Page 25: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/25.jpg)
Comando de Saída
Escreve o conteúdo de uma variável armazenada na memória
Sintaxe:WRITE (identificador [, identificador, ...]);
WRITELN (identificador [, identificador, ...]);
![Page 26: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/26.jpg)
Operadores
Aritméticos: + , - , * , / DIV: divisão de inteiros MOD: resto de uma divisão de inteiros
Relacionais: = , <> , > , < , >= , <=
![Page 27: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/27.jpg)
Operadores
Booleanos:
NOT, AND, OR e XOR
Alfanuméricos:
+
![Page 28: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/28.jpg)
Documentação do Programa
Facilita a utilização e manutenção de um programa.
Tipos de Documentação: Manutenção Usuário
![Page 29: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/29.jpg)
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.
![Page 30: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/30.jpg)
Documentação do Programa
Usuário: Manual do Usuário
OperaçãoInstalaçãoReferência
Interface
![Page 31: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/31.jpg)
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)
![Page 32: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/32.jpg)
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é)
![Page 33: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/33.jpg)
Conjuntos
Utilizados para agrupar informações com características comuns
Sintaxe:
TYPE identificador = SET of TIPO;ou
CONST identificador [: tipo] = [valores];
![Page 34: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/34.jpg)
Subprogramas
Rotinas que realizam uma determinada função específica: Funções e Procedimentos Pré-
Definidos Funções e Procedimentos
definidos pelo Programador.
![Page 35: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/35.jpg)
Subprogramas
Ativadas por um programa principal ou por outros
subprogramas, causando um desvio.
![Page 36: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/36.jpg)
Funções (Function)
Retornam um resultado, devendo, portanto, ter um tipo;
Podem ser ativadas em atribuição, condição e parâmetros.
SintaxeFUNCTION identificador [(parâmetros : tipo)] : tipo;
![Page 37: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/37.jpg)
Procedimentos (Procedure)
Podem ou não retornam um resultado;
Comando isolado no programa.
SintaxePROCEDURE identificador [(parâmetros : tipo)];
![Page 38: Linguagem de Programação I Prof. Marcio Gonçalves](https://reader033.vdocuments.pub/reader033/viewer/2022051211/552fc0f8497959413d8b5b51/html5/thumbnails/38.jpg)
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.