(Parte 1 de 10)

PASCALI

Profa. Gilene E. S. Borges Gomes gilene@gomeshp.com http://www.gomeshp.com

1º semestre / 2004

APOSTILA DE PASCAL I _ Gilene Borges Gomes _

_ http://w.gomeshp.com
1. INTRODUÇÃO AO PASCAL3
1.A. EXERCÍCIOS ( INTRODUÇÃO )5
2. COMANDOS DE ATRIBUIÇÃO / ENTRADA E SAÍDA ( READ / WRITE )6
2.A. EXERCÍCIOS ( READ / WRITE )8
3. COMANDO DE ALTERNATIVA SIMPLES E COMPOSTA ( IFTHEN .. ELSE )...........10
3.A. EXERCÍCIOS ( IFTHEN .. ELSE )................................................................................................12
4. COMANDO DE MÚLTIPLA ESCOLHA ( CASE )14
4.A. EXERCÍCIOS ( CASE )16
5. REPETIÇÃO C/ TESTE NO INÍCIO ( WHILE )17
5.A. EXERCÍCIOS ( WHILE )20
6. REPETIÇÃO C/ TESTE NO FINAL ( REPEATUNTIL ).....................................................24
6.A. EXERCÍCIOS ( REPEATUNTIL ).................................................................................................27
7. REPETIÇÃO C/ VARIÁVEL DE CONTROLE ( FORTO / DOWNTO .. DO ).................30
7.A. EXERCÍCIOS ( FORTO / DOWNTO .. DO )...................................................................................32
8. BIBLIOGRAFIA36
9. ANEXO A - UNIDADES PREDEFNIDAS37
9.A. EXERCÍCIOS ( ANEXO A )41
10. ANEXO B - MENUS E ERROS42
10.A. EXERCÍCIOS ( ANEXO B )49
1. ANEXO C - RESUMO DAS TECLAS UTILIZADAS NO TP 7.052

Índice 1.A. EXERCÍCIOS ( ANEXO C )........................................................................................................53

APOSTILA DE PASCAL I _ Gilene Borges Gomes _

_ http://w.gomeshp.com

PASCAL é uma linguagem de programação desenvolvida por volta de 1968 a 1970 pelo professor Niklaus Wirth.

O TURBO PASCAL é um ambiente integrado de desenvolvimento. A sua primeira versão data do início dos anos 80, nesta época implementada para os equipamentos de 8 bits. Desde então tem sido aprimorado continuamente, tanto para facilitar o seu uso pelo usuário quanto para incorporar novas técnicas e recursos na linguagem de programação.

O TURBO PASCAL não se trata apenas de um compilador, mas de um Ambiente Integrado, pois inclui um Editor de Programas, um Compilador, um Link-editor, o Executor de Programas e um Depurador, descritos a seguir:

9 Editor de Programas – um software cuja finalidade é facilitar a criação, edição e gravação do código-fonte1 dos programas.

9 Compilador – um programa que lê as instruções escritas numa linguagem de programação legível pelas pessoas (Ex.: Pascal), e as traduz num programa executável que o computador consegue entender e processar diretamente. O Compilador analisa o texto do programa e fornece a descrição e localização dos erros de sintaxe porventura existentes.

9 Link-editor – combina programas separados e padroniza as chamadas ou referências dentro delas.

9 Executor de programas – processa as instruções de um programa.

9 Depurador – utilitário normalmente incluído em compiladores ou interpretadores2 com a finalidade de ajudar os programadores a identificar e corrigir erros de lógica que possam existir no código-fonte.

ESTRUTURA DE UM PROGRAMA PASCAL – um programa escrito em PASCAL deve sempre ser iniciado com a palavra reservada Program, seguida por um cabeçalho, um ponto e vírgula (;), um bloco3, e terminado com um ponto final (.):

end{ fim do bloco }

Program cabeçalho ; declarações; begin { início de um bloco } seqüência de comandos;

1 Nas linguagens de programação de alto nível, o programa na forma como as pessoas o escrevem e lêem, antes que seja compilado ou interpretado. 2 Tradutor de uma linguagem de programação de alto nível, que converte as suas instruções para a linguagem de máquina mas não cria uma versão executável dos programas; os interpretadores traduzem e executam os programas ao mesmo tempo. 3 Um bloco de comandos é formado por declarações, begin, seqüência de comandos e end.

APOSTILA DE PASCAL I _ Gilene Borges Gomes _

_ http://w.gomeshp.com

Comentário – é usado para aumentar a clareza de um programa, embora não seja analisado pelo computador. Um comentário deve ser escrito entre chaves:

{ comentário }

Declarações – todas as constantes4, tipos e variáveis5 e declarados num bloco, devem estar incluídas em uma declaração da forma:

const identificador : tipo = valor; { constantes }

type identificador = tipo; { tipos }

var lista-de-identificadores : tipo; { variáveis } identificador – é formado por uma única letra ou então por uma letra seguida de letras ou dígitos, em qualquer número. Ou seja, são os nomes atribuídos às variáveis. lista-de-identificadores - são os identificadores das variáveis, separados por vírgula (,). tipo – é o tipo das variáveis, ou seja, é o conjunto ordenado de valores que podem ser atribuídos a estas variáveis. São eles: integer (inteiro), real (real), boolean (lógico), char (um único caracter), string (seqüência de caracteres).

Exemplos: const zero : integer = 0; pi = 3.1416; type estacao = (Verao, Outono, Inverno, Primavera); diautil = (Seg, Ter, Qua, Qui, Sex); nota = 0..10; var x, y : real; cor : string; { Define uma string com 255 posições } mes : string [50]; { Define uma string com 50 posições } dia : diautil; est : estacao;

UNIT – Uma unidade é uma coleção de declarações de constantes, tipos, variáveis, funções e procedimentos, compilada separadamente. Algumas destas declarações são de uso interno da unidade, enquanto outras são visíveis, isto é, podem ser usadas por programas ou outras unidades.

USES – A cláusula uses permite que uma unidade faça uso de outras unidades. Para usar uma ou mais unidades, um programa deve conter a cláusula uses antes das declarações de variáveis.

4 Constante é um tipo especial de variável, a qual não terá seu conteúdo modificado durante toda a execução de um programa, ou seja, seu valor é fixo. 5 Podemos imaginar uma variável como o nome de um local onde se pode colocar qualquer valor do conjunto de valores possíveis do tipo básico associado.

APOSTILA DE PASCAL I _ Gilene Borges Gomes _

_ http://w.gomeshp.com

UNIDADES PREDEFINIDAS – O TURBO PASCAL possui diversas unidades predefinidas: System, Printer, Crt, Dos, Overlay e Graph são as principais. Os identificadores usados nestas unidades geralmente são formados por palavras compostas em inglês que lembram seu significado. Mais detalhes podem ser encontrados no anexo A.

1.A. Exercícios ( Introdução ) 1. O que é Turbo Pascal? O que ele possui?

2. Qual é a estrutura completa de um programa Pascal? 3. O que é uma unidade? Cite e resuma as principais unidades predefinidas pelo Turbo Pascal.

4. Qual é a diferença entre uma variável e uma constante?

5. Considerando A, B, C variáveis reais, contendo os valores 1.0, 4.5, 8.0, respectivamente; Nome e

Cor, as variáveis literais, contendo as seqüências de caracteres ‘Tania’ e ‘branco’, respectivamente; e Teste, variável lógica, contendo o valor True determinar o valor das expressões lógicas:

a) ( A = 1.0 ) and Teste b) ( Nome = ‘Pedro’ ) or ( Cor < > ‘branco’ ) c) not Teste and ( B * 2.0 – C = 0.0 ) d) ( C < 10 ) or Teste and ( Cor = ‘preto’ ) e) Teste and not Teste

APOSTILA DE PASCAL I _ Gilene Borges Gomes _

_ http://w.gomeshp.com

2. Comandos de atribuição / entrada e saída ( read / write )

No comando de atribuição, o identificador (variável) e a expressão devem ser do mesmo tipo, exceto no caso em que a variável é real, quando a expressão pode ser inteira, sendo, então, o valor inteiro da expressão transformado em real. O comando de atribuição {:=} permite que o valor em expressão seja atribuído ao identificador.

A instrução de atribuição (:=) é assim definida: identificador := expressão;

Para solicitar uma entrada de dados ao usuário, deve-se utilizar o comando read ou readln. Normalmente, o periférico utilizado é o teclado.

A instrução de entrada é assim definida:

read (lista-de-identificadores); readln (lista-de-identificadores);

A diferença entre esses dois comandos é que o readln, após a leitura dos valores, correspondentes à lista-de-identificadores, provoca uma mudança de linha na unidade de entrada.

Para mostrar uma saída de dados ao usuário, deve-se utilizar o comando write ou writeln. Normalmente, o periférico utilizado é o vídeo.

A instrução de saída é assim definida:

write (lista-de-identificadores e/ou constantes e/ou expressões); writeln (lista-de-identificadores e/ou constantes e/ou expressões);

A diferença entre esses dois comandos é que o writeln, após a escrita dos valores, correspondentes à lista-de-identificadores, provoca uma mudança de linha na unidade de saída.

O comando writeln sem parâmetros faz com que o cursor salte uma linha.

evita alguns pequenos problemas de entrada de dados

Em particular,, a instrução read deverá ser mmeenncciioonnadda com ass lleettrrass ln,, pois isto lnread

APOSTILA DE PASCAL I _ Gilene Borges Gomes _

(Parte 1 de 10)

Comentários