Sunteți pe pagina 1din 10

ndice

1
1.1
1.2
1.3
1.4
1.5
1.6
1.7
1.8
1.9
1.10

2
2.1
2.1.1
2.1.2
2.1.2.1
2.1.2.2
2.1.2.3
2.1.2.4
2.1.2.5
2.1.2.6
2.1.3
2.1.4

Introduo aos Computadores e Programao 1


Computadores ................................................................................................ 1
Programas...................................................................................................... 3
Estrutura dos computadores............................................................................ 3
A linguagem de programao Pascal............................................................... 6
Estrutura dos programas Pascal...................................................................... 7
Execuo dos programas .............................................................................. 10
Funes........................................................................................................ 13
Algoritmos ................................................................................................... 19
Sintaxe e semntica ...................................................................................... 28
Resumo ........................................................................................................ 32

Rudimentos de Programao Funcional

37

Expresses simblicas e funes primitivas................................................... 37


Expresses simblicas .................................................................................. 37
Funes primitivas ....................................................................................... 39
A constante nil............................................................................................. 40
A funo car ............................................................................................... 40
A funo cdr ............................................................................................... 41
A funo eq................................................................................................. 42
O predicado atom....................................................................................... 43
A funo cons............................................................................................. 44
Funes append, inversa, membro ...................................................... 46
Funo append.......................................................................................... 46
FCA - EDITORA DE INFORMTICA vii

Pascal Tcnicas de Programao

2.1.5
2.1.6
2.2
2.3
2.3.1
2.3.2
2.3.3
2.3.3.1
2.3.3.2
2.3.3.3
2.3.3.4
2.4

3
3.1
3.2
3.2.1
3.2.2
3.3
3.3.1
3.3.2
3.4

viii

Problemas de Programao

61

Introduo.................................................................................................... 61
O problema do pequeno cambista.................................................................. 62
Resoluo..................................................................................................... 62
Pequenos melhoramentos .............................................................................. 65
Um problema, dois programas ...................................................................... 69
Primeira soluo........................................................................................... 69
Outra soluo............................................................................................... 72
Problemas .................................................................................................... 74

4
4.1
4.2
4.2.1
4.2.2
4.2.3
4.2.4
4.2.5
4.3

Funo inversa .......................................................................................... 48


Funo membro........................................................................................ 50
Parmetros de acumulao............................................................................ 52
Funes de ordem superior ........................................................................... 55
Introduo.................................................................................................... 55
Lambda-notao........................................................................................... 55
As funes map, reduce, acum e filtro .................................................. 56
A funo map............................................................................................. 56
A funo reduce ........................................................................................ 57
A funo acum........................................................................................... 57
A funo filtro ............................................................................................ 58
Problemas .................................................................................................... 58

Tipos Estruturados: Registos

77

Introduo.................................................................................................... 77
Datas e calendrios....................................................................................... 78
Quantos dias faltam para o fim do ano? ........................................................ 78
Data do n-simo dia do ano........................................................................... 84
A data de amanh ......................................................................................... 87
Melhoramentos............................................................................................. 88
O dia da semana ........................................................................................... 91
O problema do parque de estacionamento...................................................... 91
FCA - EDITORA DE INFORMTICA

ndice

4.3.1
4.3.2
4.4

5
5.1
5.2
5.3
5.4
5.5

6
6.1
6.2
6.3
6.4
6.5
6.6
6.7
6.8
6.9
6.10
6.11

7
7.1
7.2
7.3

Resoluo..................................................................................................... 92
Variantes...................................................................................................... 97
Problemas .................................................................................................... 98

Vectores e Matrizes

101

Introduo...................................................................................................101
Polinmios ..................................................................................................103
Sistema escolar de controlo de presenas......................................................111
Preo de uma sesso de computador.............................................................125
Problemas ...................................................................................................134

Funes e Procedimentos

137

Declarao de funes .................................................................................137


Parmetros de entrada .................................................................................145
Esquema dos quadros conformes..................................................................146
Parmetros de sada .....................................................................................147
Parmetros de entrada e sada ......................................................................150
Funes com parmetros de sada ................................................................152
Procedimentos de leitura e procedimentos de escrita .....................................157
Procedimentos sem parmetros ....................................................................159
Passagem de parmetros por valor e por endereo ........................................160
Procedimentos e funes de ordem superior..................................................162
Problemas ...................................................................................................169

Ficheiros de Dados e Ficheiros de Resultados 171


Introduo...................................................................................................171
Reapresentao do problema do cambista ....................................................172
Primeiro subproblema: cmbios automticos................................................173
FCA - EDITORA DE INFORMTICA ix

Pascal Tcnicas de Programao

7.4
7.5
7.6
7.7

Segundo subproblema: criao do ficheiro de movimentos ............................179


Terceiro subproblema: ficheiros de compras e de vendas ..............................183
Quarto subproblema: mapa-resumo e clculo do imposto .............................184
Problemas ...................................................................................................187

8
8.1
8.2
8.2.1
8.2.1.1
8.2.1.2
8.2.1.3
8.2.1.4
8.2.1.5
8.2.1.6
8.2.2
8.2.2.1
8.2.2.2
8.2.2.3
8.2.2.4
8.2.2.5
8.2.2.6
8.2.2.7
8.3
8.3.1
8.3.2
8.3.3
8.3.4
8.3.5
8.3.6
8.3.7
8.3.8
8.3.9
8.4

Processamento de Ficheiros

193

Introduo...................................................................................................193
Modelos para os ficheiros Pascal .................................................................195
O modelo da fita..........................................................................................195
Operaes de leitura ....................................................................................197
Operaes de escrita ....................................................................................198
Operaes de identificao...........................................................................198
Ilustrao ....................................................................................................199
Mais dois exemplos .....................................................................................203
Outras operaes .........................................................................................205
Um modelo funcional para os ficheiros Pascal..............................................207
Introduo...................................................................................................207
Modelar o qu?............................................................................................209
O modelo.....................................................................................................211
Programas...................................................................................................213
Observaes acerca dos procedimentos put e read.....................................216
Um modelo funcional para os ficheiros de texto............................................218
Programas com ficheiros de texto.................................................................220
Tcnicas de processamento de ficheiros........................................................222
Duplicao..................................................................................................222
Transformao ............................................................................................225
Acumulao ................................................................................................227
Exploso .....................................................................................................230
Fuso..........................................................................................................236
Partio.......................................................................................................251
Adio ........................................................................................................267
Actualizao ...............................................................................................274
Ordenao...................................................................................................284
Problemas ...................................................................................................294

FCA - EDITORA DE INFORMTICA

ndice

9
9.1
9.2
9.3
9.4
9.4.1
9.4.2
9.5
9.6
9.6.1
9.6.2
9.6.3
9.6.4
9.6.5
9.6.5.1
9.6.5.2
9.6.5.3
9.7
9.7.1
9.7.2
9.8
9.9
9.10
9.11
9.11.1
9.11.2
9.11.3
9.11.4
9.11.5
9.11.6
9.11.6.1
9.11.6.2
9.11.6.3
9.11.6.4
9.12

Tratamento de Quadros

301

Introduo...................................................................................................301
Classes de quadros ......................................................................................304
Operaes sobre quadros .............................................................................313
Acesso directo .............................................................................................315
Acesso directo para consulta........................................................................315
Acesso directo para modificao..................................................................319
Afectao (modificao global)....................................................................321
Inicializao................................................................................................322
Inicializao por cpia.................................................................................323
Inicializao regular ....................................................................................324
Inicializao irregular ..................................................................................326
Inicializao semi-regular ............................................................................327
Inicializao por carregamento.....................................................................329
Carregamento simples..................................................................................329
Carregamento com ndice.............................................................................330
Carregamento incremental ...........................................................................333
Enumerao ................................................................................................335
Enumerao sem modificao......................................................................336
Enumerao com modificao......................................................................338
Acumulao ................................................................................................341
Insero ......................................................................................................350
Supresso....................................................................................................354
Busca ..........................................................................................................355
Caso geral ...................................................................................................355
Busca com sada de ndice ...........................................................................363
Busca garantida...........................................................................................365
Busca para cima e busca para baixo ............................................................368
Busca com sentinela ....................................................................................371
Busca em vectores ordenados.......................................................................372
Busca dicotmica (primeira variante) ...........................................................375
Busca dicotmica (segunda variante) ...........................................................378
Clculo da posio de insero ....................................................................384
Busca linear em vectores ordenados .............................................................390
Ordenao...................................................................................................392
FCA - EDITORA DE INFORMTICA xi

Pascal Tcnicas de Programao

9.12.1
9.12.2
9.12.3
9.12.4
9.12.5
9.13
9.14

Apresentao...............................................................................................392
Seleco directa...........................................................................................393
Troca directa (Bubblesort)...........................................................................395
Quicksort ....................................................................................................396
Ordenao indirecta.....................................................................................413
Acesso disperso...........................................................................................419
Problemas ...................................................................................................430

10
10.1
10.2
10.3
10.3.1
10.3.2
10.3.3
10.3.4
10.4
10.4.1
10.4.2
10.4.3
10.4.4
10.5

xii

435

Introduo...................................................................................................435
Ficheiros de texto ........................................................................................436
Filtros .........................................................................................................437
Problemas voltados para os caracteres .........................................................437
Problemas voltados para as palavras............................................................454
Problemas voltados para as linhas................................................................465
Problemas voltados para os pargrafos ........................................................472
Processamento de texto em portugus ..........................................................482
Apresentao...............................................................................................482
Formatao .................................................................................................484
Partio automtica na translineao ...........................................................488
Justificao .................................................................................................493
Problemas ...................................................................................................499

11
11.1
11.2
11.3
11.4
11.5
11.6

Processamento de Texto

Programao com Apontadores

503

Estruturas de dados recursivas.....................................................................503


Apontadores ................................................................................................509
Variveis e caixinhas ...................................................................................513
Listas e estruturas de dados partilhadas........................................................518
Manipulao de apontadores........................................................................527
Aplicao s tabelas de disperso ................................................................534

FCA - EDITORA DE INFORMTICA

ndice

12
12.1
12.2
12.2.1
12.2.2
12.2.3
12.2.4
12.3
12.3.1
12.3.2
12.4
12.4.1
12.4.2
12.4.3

541

Introduo...................................................................................................541
Resoluo de equaes por computador .......................................................542
Mtodo dicotmico......................................................................................542
Mtodo das aproximaes sucessivas...........................................................546
Mtodo de Newton-Raphson........................................................................548
Mtodo de Birge-Vieta.................................................................................550
Resoluo de sistemas de equaes lineares..................................................553
Mtodo de Gauss.........................................................................................553
Mtodo de Gauss-Seidel ..............................................................................561
Derivao numrica e integrao numrica...................................................569
Interpolao polinomial ...............................................................................570
Derivao numrica.....................................................................................576
Integrao numrica ....................................................................................579

13
13.1
13.2
13.3
13.4
13.5
13.5.1
13.5.2
13.5.3
13.6
13.7
13.8

Elementos de Clculo Numrico

Um Programa para Jogar no Totoloto

585

Introduo...................................................................................................585
Teoria do totoloto ........................................................................................586
Os computadores no totoloto........................................................................586
Combinaes de n, k a k ..............................................................................588
Um programa para o totoloto.......................................................................592
Tipos...........................................................................................................592
Variveis.....................................................................................................601
Interface......................................................................................................602
Desdobramentos ..........................................................................................606
Programa principal......................................................................................611
Reflexes a posteriori ..................................................................................613

FCA - EDITORA DE INFORMTICA xiii

Pascal Tcnicas de Programao

14
14.1
14.2

O problema .................................................................................................623
Resoluo....................................................................................................624

15
15.1
15.2
15.2.1
15.2.2
15.2.3
15.2.4
15.2.5
15.2.6
15.3
15.4
15.5
15.6
15.7

16.1
16.2
16.3
16.4
16.4.1
16.4.1.1
16.4.1.2

Pfe, um Programa Formatador Especial

637

Introduo...................................................................................................637
Caderno de encargos para o Pfe ...................................................................638
Apresentao...............................................................................................638
Pargrafos...................................................................................................638
Comandos de formatao.............................................................................638
Comandos de paginao ..............................................................................638
Enumerao dos comandos ..........................................................................639
Valores iniciais............................................................................................639
Anlise do caderno de encargos....................................................................640
Variveis do Pfe ..........................................................................................640
Operaes novas..........................................................................................642
Estrutura do programa principal ..................................................................650
Problemas ...................................................................................................655

16
xiv

Normalizao de Identificadores em Pascal623

Met, um Minieditor de Texto

659

Introduo...................................................................................................659
Consideraes gerais ...................................................................................660
Interface......................................................................................................663
Comandos ...................................................................................................664
Comandos em cima......................................................................................664
Comandos de controlo global.......................................................................664
Comandos de movimentao........................................................................665

FCA - EDITORA DE INFORMTICA

ndice

16.4.1.3
16.4.1.4
16.4.2
16.4.2.1
16.4.2.2
16.5
16.5.1
16.5.2
16.5.3
16.5.4
16.6
16.7
16.7.1
16.7.2
16.7.3
16.7.4
16.7.5
16.8

Comandos de bloco......................................................................................665
Comandos de procura ..................................................................................665
Comandos no texto ......................................................................................666
Comandos de movimentao do cursor.........................................................666
Comandos de linha ......................................................................................667
Estruturas de dados .....................................................................................667
Operaes sobre caracteres ..........................................................................669
Operaes sobre palavras ............................................................................670
Operaes sobre linhas ................................................................................675
Operaes sobre palavras e sobre o vector das linhas ...................................677
Operaes de afixao.................................................................................680
Procura de cadeias de caracteres ..................................................................686
Estrutura do programa.................................................................................699
O programa principal ..................................................................................699
O procedimento de comando ........................................................................701
Edio de texto............................................................................................712
Edio dos argumentos dos comandos..........................................................718
Problemas ...................................................................................................722

A
B
B.1
B.2
B.3
B.4
B.5

Funes e Procedimentos Pr-declarados

723

Lista dos Operadores

727

Operadores aritmticos ................................................................................727


Operadores relacionais.................................................................................728
Operadores booleanos..................................................................................728
Operadores de conjuntos..............................................................................728
Tabela de precedncias ................................................................................728

FCA - EDITORA DE INFORMTICA xv

Pascal Tcnicas de Programao

C
C.1
C.2
C.3
C.4
C.5
C.6

Tabelas

Tabela de identificadores normalizados ........................................................729


Lista alfabtica de identificadores normalizados ...........................................729
Tabela de smbolos especiais .......................................................................729
Tabela de palavras reservadas......................................................................730
Representaes alternativas .........................................................................730
Directivas....................................................................................................730

D
E
F

Taxinomia dos Tipos

731

Diagramas Sintcticos

733

Tabela de Caracteres ASCII

745

ndice Remissivo

xvi

729

FCA - EDITORA DE INFORMTICA

747

S-ar putea să vă placă și