Você está na página 1de 9

Notas da Aula 01 Professora: Ivone de Oliveira ESTRUTURA DE UM PROGRAMA EM PASCAL

Data: 26/07/11

Todo programa escrito em Pascal subdividido em trs reas distintas: cabealho do programa, rea de declaraes e corpo do programa. Cabealho do Programa Esta rea utilizada para se fazer a identificao do programa com um nome. O cabealho de um programa atribudo pela instruo program seguida de um nome. Ao final do nome deve-se colocar o smbolo ponto-e-vrgula ( ; ). No pode existir nenhuma varivel no programa que tenha o mesmo nome dado ao programa. Vejamos um exemplo: program CALCULA_AREA; Obs: Caso voc tenha atribudo ao programa o nome Soma e tambm tenha atribudo este nome a uma varivel no programa, quando for executado apresentar uma mensagem de erro. rea de Declaraes Esta rea utilizada para declarao dos identificadores que no sejam predefinidos, estando subdividida em sete sub-reas: uses, label, const, type, var, procedure e function. Por agora estudaremos apenas a sub-rea var. As demais sero estudadas nas aulas posteriores. A sub-rea var utilizada na declarao das variveis que sero utilizadas durante a execuo de um programa, assim como o seu tipo. Desta forma, a linguagem Pascal efetua a reserva de espao na memria para que as variveis sejam utilizadas. A declarao das variveis atribuda pela instruo var seguida da relao de variveis. Aps os nomes de cada varivel dever ser utilizado o smbolo dois-pontos ( : ), e aps estes mencionado o tipo de dado que a varivel ir receber, seguido de ponto-e-vrgula. Vejamos um exemplo: var NOME : string; IDADE : integer; ALTURA : real; Caso as variveis sejam de mesmo tipo, estas podero ser separadas por vrgula. Vejamos um exemplo: A, B, C : integer

Corpo do Programa O programa propriamente dito em Pascal est escrito na rea denominada corpo do programa. Esta rea tem incio com a instruo BEGIN e finalizada pela instruo END seguida do smbolo ponto ( . ). O uso destas instrues caracteriza o que chamado de bloco, como indicado abaixo: BEGIN instrues; (...) END. Na rea denominada corpo do programa, poder existir, dependendo da necessidade, vrios blocos. Exemplo de um Programa em Pascal: O programa a seguir far a leitura de dois valores numricos e em seguida efetuar a operao de adio entre os dois valores e apresente o resultado obtido. program ADICIONA_NUMEROS; var X : integer; A : integer; B : integer; BEGIN readln(A); readln(B); X := A + B; writeln(X); END.

Entrada e Sada dos Dados Os comandos readln e writeln respectivamente. so chamados de entrada e sada dos dados,

A instruo readln permite a entrada de dados via teclado e a instruo writeln gera a sada de dados via vdeo. Poderiam tambm ser utilizadas as instrues write e read. Mas qual a diferena entre elas? muito simples: a colocao da ln indica line new, ou seja, nova linha. Ser realizado um pulo de linha aps a leitura ou exibio dos dados. As instrues write e read permitem manter o cursor na mesma linha, aps a exibio das mensagens ou leitura de dados. Elementos da Linguagem PASCAL

Identificadores: Os identificadores so nomes a serem dados a variveis, tipos definidos, procedimentos, funes e constantes nomeadas. Devem seguir as seguintes regras de construo: iniciar sempre por uma letra (a - z, A - Z) ou um underscore (_); o restante do identificador deve conter apenas letras, underscores ou dgitos (0 - 9). y No pode conter outros caracteres; y Pode ter qualquer tamanho, porm apenas os primeiros 63 caracteres sero considerados. No existe distino entre letras maisculas e minsculas no nome de um identificador. Por exemplo, os nomes ALPHA, alpha e Alpha so equivalentes. Ateno para o fato de que identificadores muito longos so mais fceis de serem lidos pelas as pessoas quando se usa uma mistura de letras maisculas e minsculas; por exemplo, SalarioMinimo mais fcil de se ler do que SALARIOMINIMO. Vejamos alguns exemplos de identificadores vlidos: PAGAMENTO Soma_Total MaiorValor Media1 _Media e alguns exemplos de identificadores invlidos: %Quantidade {O smbolo % no permitido} 4Vendedor {No pode comear com um nmero} Soma Total {No pode ter espaos entre as letras} Observao: Um identificador dever ficar inteiramente contido em uma linha do programa, ou seja, voc no pode comear a digitar o nome do identificador numa linha e acabar em outro. Palavras Reservadas Pascal reconhece certo grupo de palavras como sendo reservadas. Essas palavras tem significado especial e no podem ser usadas como identificadores em um programa. A seguir algumas palavras reservadas do Pascal. And Array Begin Case Const Do Else End File For Goto If Mod Program Repeat Until var While

pedir aos alunos que pesquisem e tragam uma lista(manuscrita) completa das palavras reservadas da linguagem Pascal

Comentrios Comentrios so textos escritos dentro do cdigo-fonte para explicar ou descrever alguns aspectos relativos ao mesmo. Os comentrios podem ser colocados em qualquer lugar do programa onde um espao em branco possa existir. Voc pode colocar comentrios de duas formas: ou envolvendo o texto entre chaves {..} ou entre (* .. *). Quando o compilador encontra o smbolo { ele salta todos os caracteres at encontrar um }. Da mesma forma, todos os caracteres que seguem (* so pulados at ser detectado o smbolo *). Como resultado disso, qualquer uma das formas pode ficar dentro da outra; por exemplo {...(*...*)...} um comentrio. Tipos de Dados Os dados so representados pelas informaes a serem processadas por um computador. Um tipo de dados especifica as caractersticas, ou seja, os valores e operaes possveis de serem utilizados com um dado desse tipo. Toda varivel e constante usada em um programa tem um tipo associado a ela. A linguagem Pascal fornece ao programador um conjunto de tipos de dados predefinidos. Tipo de Dados Inteiros (integer) So caracterizados tipos inteiros, os dados numricos positivos ou negativos, excluindo-se qualquer nmero fracionrio. Em Pascal, este tipo de dado pode ser referenciado por um dos seguintes identificadores: TIPO SHORTING INTEGER LONGINT BYTE WORD Vejamos um exemplo: var NumAlunos : integer; Cont,cont1 : integer; Tipos de Dados Reais O tipo de dado real permite trabalhar com nmeros fracionrios, tanto positivos como negativos, sendo sua capacidade de armazenamento maior que dos nmeros inteiros. Vejamos os tipos: TIPO real single double extend comp FAIXA VALORES de 2.9x10-39 at 1.7x1038 de 1.5x 10 -45 at 3.4 x1038 de 5.0 x10 -324 at 1.7x10308 de 3.4 x10-4.932 at 1.1 x104.932 de 9.2x1018 at 9.2 x1018 N DE BYTES 6 bytes 4 bytes 8 bytes 10 bytes 8 bytes FAIXA VALORES de 128 at 127 de 32.768 a 32.767 de 2.147.483.648 a 2.147.483.647 de 0 at 255 de 0 at 65535 N DE BYTES 1 BYTE 2 BYTES 4 BYTE 1 BYTE 2 BYTE

Vejamos um exemplo: var Nota : real; Salario, media : real; Tipos de Dados Caracteres So considerados tipos caracteres, as sequncias contendo letras, nmeros e smbolos especiais. Uma sequncia de caracteres, em Pascal, deve ser representada entre apstrofos (). Este tipo de dado referenciado pelo identificador string, podendo armazenar de 1 at 255 caracteres. Podemos ainda especificar um tamanho menor do que os 255 caracteres permitidos. Vejamos a sintaxe para criarmos uma varivel do tipo string com tamanho limitado. Sintaxe: varivel : string[tamanho]; Vejamos um exemplo do uso de strings: var Frase: string; Nome: string[45]; Existe ainda o tipo char, utilizado da mesma forma que o tipo string, porm com uma pequena diferena: usado para strings de apenas um caracter. Vejamos um exemplo do tipo de dado char: var Sexo: char; Tipos Lgicos So caracterizados tipos lgicos, os dados com valores true (verdadeiro) e false (falso). Este tipo de dado tambm e chamado de tipo boleano. Ele representado pelo identificador boolean. Vejamos um exemplo da utilizao do tipo de dado boolean: var Aprovado : boolean; Confirma : boolean; Variveis Varivel, no sentido de programao, uma regio previamente identificada, que tem por finalidade armazenar informaes (dados) de um programa temporariamente. Uma varivel armazena apenas um valor por vez. Sendo considerado como valor o contedo de uma varivel, este valor est associado ao tipo de dado da varivel. Sintaxe: var identif: tipo-de-dado;

indentif, indentif... : tipo-de-dado Vejamos um exemplo: var Soma, Total, Salario : real; Idade, Contador : integer; Constantes Uma constante um valor que no pode ser alterado durante a execuo do programa, sendo que seu tipo definido por seu contedo. Sintaxe: const identificador = expresso; ... identificador = expresso; Vejamos um exemplo: program Area_Circulo; { Programa para calcular a rea de um crculo. } const PI = 3.141519265; var Area, Comprimento, Raio: real; BEGIN writeln( Digite o Raio : ); readln( Raio ); Area := PI * Raio * Raio; Comprimento := 2 * PI * Raio; writeln( rea = , Area ); writeln( Comprimento da Circunferencia = , Comprimento ); END. Tipos de Expresses Existem trs tipos bsicos de expresses: Numricas: uma expresso numrica quando os seus operandos so numricos (inteiros ou reais) e o resultado tambm um valor numrico. Literais: Uma expresso literal quando os seus operandos so literais do tipo string (no pode ser char) e o resultado tambm um valor literal. S existe um nico operador para se usar em expresses literais, o operador Concatenao ( + ). Boolenas: Uma expresso booleana quando seu resultado do tipo boolean (TRUE ou FALSE), podendo seu operando serem de qualquer tipo de dados. Nas expresses relacionais so usados os operadores Lgicos e os Relacionais. Tipos de Operadores

Existem vrios operadores para a realizao de expresses em Pascal. Veremos agora algumas das mais importantes. Operador de Atribuio O operador de atribuio utilizado para atribuir o valor de uma expresso a uma varivel. Sintaxe: identificador_varivel := expresso; Vejamos um exemplo: A := 10; Nome := Josias ; Operadores Aritmticos Os operadores aritmticos so utilizados para efetuar operaes aritmticas com nmero inteiros e reais. Operador Subtrao Adio Multiplicao Diviso Real Diviso Inteira ( truncada ) Resto da Diviso Inteira Inverte Sinal Mantm Sinal Smbolo + * / div mod +

Operador de Concatenao O operador de concatenao ( + ) efetua a juno de duas variveis ou constantes do tipo string. Vejamos um exemplo: var PreNome, SobreNome, NomeCompleto : string[ 30 ]; BEGIN { Suponhamos o nome Josias Lima Santos } PreNome := Josias ; SobreNome := Santos ; NomeCompleto := PreNome + SobreNome; writeln( NomeCompleto ); NomeCompleto := Jose + Maria ; writeln( NomeCompleto ); ... END. Operadores Relacionais

Os operadores relacionais so utilizados para efetuar a comparao entre dados de mesmo tipo. Operador Maior que Menor que Maior ou igual Menor ou igual Igual Diferente Smbolo > < >= <= = <>

Operadores Lgicos Os operadores lgicos so utilizados para se analisar duas ou mais expresses interrelacionadas. A tab. 4.3 exibe os operadores lgicos existentes em Pascal. Operador E OU NO Smbolo and or not

Abaixo, segue trs tabelas, chamadas tabela-verdade, contendo o resultado do uso dos operadores lgicos sobre dois operandos. OPERADOR AND OPERANDO 1 TRUE TRUE FALSE FALSE OPERANDO 2 TRUE FALSE TRUE FALSE RESULTADO TRUE FALSE FALSE FALSE

OPERADOR OR OPERANDO 1 OPERANDO 2 TRUE TRUE TRUE FALSE FALSE TRUE FALSE FALSE

RESULTADO TRUE TRUE TRUE FALSE

OPERADOR NOT OPERANDO TRUE FALSE RESULTADO FALSE TRUE

Exerccios Propostos
1- Verifique se os identificadores a seguir so vlidos. Se no forem, explique por que. a. Nome-do-aluno b. 34857 c. verdadeiro d. falso e. Soma# f. -2343 g. VALOR h. DATA/NASCIMENTO i. true j. NOME2 k. 2pessoa l. MAIOR_DE_IDADE m. END n. %JUROS 2- Declare as variveis e atribua valores para os tipos de dados abaixo relacionados. a- integer: b- char: c- boolean: d- shortint: e- string: f- byte: g- double: 3- Algoritmo que leia o nome e as 4 notas bimestrais de um aluno. Em seguida calcular e escrever a mdia obtida. 4- Faa Algoritmo que l o raio de uma circunferncia e calcula sua rea. A= raio*Pi