su mario 857522073 x

4
5 Sumário Prefácio ............................................................................................................................. 11 Capítulo 1 – Introdução ...................................................................................................... 13 1.1 Conceituação ................................................................................................................................ 13 1.2 Programas de computador....................................................................................................... 14 1.2.1 O que é um programa ..................................................................................................... 14 1.2.2 Executando um programa ............................................................................................ 16 1.2.3 Linguagens de programação e sistemas operacionais......................................... 17 1.3 Estruturação de algoritmos ...................................................................................................... 19 1.3.1 Linguagem natural ............................................................................................................ 19 1.3.2 Fluxograma.......................................................................................................................... 21 1.3.3 Pseudocódigo..................................................................................................................... 22 1.4 Exercícios do capítulo ............................................................................................................... 23 Capítulo 2 – Fundamentos ................................................................................................. 24 2.1 Manipulação de dados .............................................................................................................. 24 2.1.1 Tipos ...................................................................................................................................... 24 2.1.2 Constantes e variáveis ..................................................................................................... 27 2.1.3 Atribuição............................................................................................................................. 29 2.2 Blocos de instruções .................................................................................................................. 30 2.3 Entrada e saída.............................................................................................................................. 32 2.3.1 Entrada .................................................................................................................................. 34 2.3.2 Saída....................................................................................................................................... 34 2.4 Teste de mesa ............................................................................................................................... 35 2.5 Exercícios do capítulo ............................................................................................................... 38 2.6 Exemplos de programas em Pascal e C ............................................................................... 39 2.6.1 Programas em Pascal ....................................................................................................... 39 2.6.2 Programas em C................................................................................................................. 40 Capítulo 3 – Comandos de Condição .................................................................................... 42 3.1 Comando se .................................................................................................................................. 42 3.1.3 Condições compostas ..................................................................................................... 47 3.1.4 Comandos de condição encadeados ......................................................................... 48 3.2 Comando caso ............................................................................................................................. 52 3.3 Exercícios do capítulo ............................................................................................................... 55 3.4 Exemplos de programas em Pascal e C ............................................................................... 55 3.4.1 Programas em Pascal ....................................................................................................... 56 3.4.2 Programas em C................................................................................................................. 57 Capítulo 4 – Comandos de Repetição .................................................................................. 60 4.1 Comando enquanto.................................................................................................................... 60 4.2 Comandos de repetição combinados com comandos de condição ........................ 66 4.3 Comandos de repetição encadeados ................................................................................... 71 4.4 Comando repita ........................................................................................................................... 76 4.5 Comando para .............................................................................................................................. 78 4.6 Exercícios do capítulo ............................................................................................................... 82

Upload: yure-pereira

Post on 08-Sep-2015

217 views

Category:

Documents


1 download

DESCRIPTION

Su Mario 857522073 x

TRANSCRIPT

  • 5Sumrio

    Prefcio ............................................................................................................................. 11Captulo 1 Introduo ...................................................................................................... 13

    1.1 Conceituao ................................................................................................................................ 131.2 Programas de computador ....................................................................................................... 14

    1.2.1 O que um programa ..................................................................................................... 141.2.2 Executando um programa ............................................................................................ 161.2.3 Linguagens de programao e sistemas operacionais ......................................... 17

    1.3 Estruturao de algoritmos ...................................................................................................... 191.3.1 Linguagem natural ............................................................................................................ 191.3.2 Fluxograma ..........................................................................................................................211.3.3 Pseudocdigo .....................................................................................................................22

    1.4 Exerccios do captulo ...............................................................................................................23

    Captulo 2 Fundamentos ................................................................................................. 242.1 Manipulao de dados ..............................................................................................................24

    2.1.1 Tipos ......................................................................................................................................242.1.2 Constantes e variveis .....................................................................................................272.1.3 Atribuio .............................................................................................................................29

    2.2 Blocos de instrues ..................................................................................................................302.3 Entrada e sada ..............................................................................................................................32

    2.3.1 Entrada ..................................................................................................................................342.3.2 Sada .......................................................................................................................................34

    2.4 Teste de mesa ...............................................................................................................................352.5 Exerccios do captulo ...............................................................................................................382.6 Exemplos de programas em Pascal e C ...............................................................................39

    2.6.1 Programas em Pascal .......................................................................................................392.6.2 Programas em C .................................................................................................................40

    Captulo 3 Comandos de Condio .................................................................................... 423.1 Comando se ..................................................................................................................................42

    3.1.3 Condies compostas .....................................................................................................473.1.4 Comandos de condio encadeados .........................................................................48

    3.2 Comando caso .............................................................................................................................523.3 Exerccios do captulo ...............................................................................................................553.4 Exemplos de programas em Pascal e C ...............................................................................55

    3.4.1 Programas em Pascal .......................................................................................................563.4.2 Programas em C .................................................................................................................57

    Captulo 4 Comandos de Repetio .................................................................................. 604.1 Comando enquanto ....................................................................................................................604.2 Comandos de repetio combinados com comandos de condio ........................664.3 Comandos de repetio encadeados ................................................................................... 714.4 Comando repita ...........................................................................................................................764.5 Comando para ..............................................................................................................................784.6 Exerccios do captulo ...............................................................................................................82

  • 6 Algoritmos e Programao

    4.7 Exemplos de programas em Pascal e C ...............................................................................844.7.1 Programas em Pascal .......................................................................................................844.7.2 Programas em C .................................................................................................................86

    Captulo 5 Mdulos ......................................................................................................... 885.1 Abordagem top-down ...............................................................................................................885.2 Modularizando algoritmos .......................................................................................................905.3 Retorno de valores ...................................................................................................................... 915.4 Escopo de variveis ....................................................................................................................95

    5.4.1 Variveis globais ................................................................................................................955.4.2 Variveis locais ...................................................................................................................965.4.3 Teste de mesa de mdulos e pilhas ............................................................................99

    5.5 Passagem de parmetros ........................................................................................................1045.5.1 Passagem de parmetros por valor ..........................................................................1045.5.2 Passagem de parmetros por referncia .................................................................105

    5.6 Exerccios do captulo ............................................................................................................. 1115.7 Exemplos de programas em Pascal e C .............................................................................112

    5.7.1 Programas em Pascal .....................................................................................................1125.7.2 Programas em C ............................................................................................................... 115

    Captulo 6 Recursividade ............................................................................................... 1186.1 Conceituao ..............................................................................................................................1186.2 Recursividade expressa por mdulos ................................................................................1206.3 Exerccios do captulo .............................................................................................................1266.4 Exemplos de programas em Pascal e C .............................................................................128

    6.4.1 Programas em Pascal .....................................................................................................1286.4.2 Programas em C ...............................................................................................................129

    Captulo 7 Vetores ......................................................................................................... 1307.1 Variveis compostas homogneas ......................................................................................1307.2 Vetores unidimensionais .........................................................................................................1317.3 Vetores bidimensionais ...........................................................................................................1457.4 Vetores multidimensionais .....................................................................................................1597.5 Exerccios do captulo ..............................................................................................................161

    7.6.1 Programas em Pascal .....................................................................................................1657.6.2 Programas em C ...............................................................................................................167

    Captulo 8 Registros ...................................................................................................... 1698.1 Registros .......................................................................................................................................1698.2 Compondo registros e vetores ............................................................................................. 174

    8.2.1 Vetores de registros ........................................................................................................ 1748.2.2 Registro com vetores .....................................................................................................1788.2.3 Vetores de registros com vetores ..............................................................................180

    8.3 Exerccios do captulo .............................................................................................................1848.4 Exemplos de programas em Pascal e C .............................................................................186

    8.4.1 Programas em Pascal .....................................................................................................1868.4.2 Programas em C ...............................................................................................................189

    Captulo 9 Arquivos ....................................................................................................... 1929.1 Arquivos de registros seqenciais .......................................................................................194

    9.1.1 Funo Abra_Arquivo ....................................................................................................1969.1.2 Funo Feche_Arquivo .................................................................................................1979.1.3 Funo Grave_Arquivo .................................................................................................1979.1.4 Funo Leia_Arquivo .....................................................................................................1989.1.5 Funo Posicione_Arquivo ..........................................................................................1989.1.6 Funo FDA (Fim De Arquivo) .................................................................................198

  • 7Sumrio

    9.2 Arquivos-texto .......................................................................................................................... 2069.2.1 Funo Abra_Arquivo ................................................................................................... 2069.2.2 Funo Feche_Arquivo ................................................................................................ 2069.2.3 Funo Grave_Arquivo ................................................................................................ 2079.2.4 Funo Leia_Arquivo .................................................................................................... 2079.2.5 Funo Posicione_Arquivo ........................................................................................ 2079.2.6 Funo FDA (Fim De Arquivo) ................................................................................. 207

    9.3 Arquivos de registros indexados/diretos ..........................................................................2129.3.1 Funo Abra_Arquivo ....................................................................................................2139.3.2 Funo Feche_Arquivo .................................................................................................2139.3.3 Funo Grave_Arquivo .................................................................................................2139.3.4 Funo Leia_Arquivo .....................................................................................................2149.3.5 Funo Posicione_Arquivo .........................................................................................2149.3.6 Funo FDA (Fim De Arquivo) ..................................................................................214

    9.4 Exerccios do captulo ............................................................................................................. 2159.5 Exemplos de programas em Pascal e C .............................................................................216

    9.5.1 Programas em Pascal .....................................................................................................2179.5.2 Programas em C ...............................................................................................................219

    Captulo 10 Ponteiros .................................................................................................... 22410.1 Alocao de espao ............................................................................................................... 224

    10.1.1 Alocao esttica ......................................................................................................... 22410.1.2 Alocao dinmica ...................................................................................................... 22410.1.3 Definindo ponteiros .................................................................................................... 22510.1.4 Ponteiros para registros ............................................................................................. 227

    10.2 Estruturas de dados avanadas .......................................................................................... 23010.2.1 Listas estticas e dinmicas ....................................................................................... 230

    10.3 Exerccios do captulo .......................................................................................................... 24210.4 Exemplos de programas em Pascal e C .......................................................................... 244

    10.4.1 Programas em Pascal .................................................................................................. 24410.4.2 Programas em C ........................................................................................................... 249

    Captulo 11 Estruturas de Dados Dinmicas .................................................................... 25511.1 Filas .............................................................................................................................................. 255

    11.1.1 Iniciao da fila ............................................................................................................. 25611.1.2 Enfileiramento de um elemento na fila ................................................................ 25711.1.3 Desenfileiramento de um elemento da fila ......................................................... 25811.1.4 Tamanho da fila ............................................................................................................ 25911.1.5 Trmino da fila .............................................................................................................. 260

    11.2 Pilhas ............................................................................................................................................26111.2.1 Iniciao da pilha ..........................................................................................................26111.2.2 Empilhamento de um elemento na pilha ............................................................ 26211.2.3 Desempilhamento de um elemento da pilha .................................................... 26311.2.4 Tamanho da pilha ........................................................................................................ 26411.2.5 Trmino da pilha .......................................................................................................... 264

    11.3 rvores ....................................................................................................................................... 26511.3.1 Conceituao ................................................................................................................. 26511.3.2 rvores binrias de pesquisa ................................................................................... 269

    11.4 Exerccios do captulo .......................................................................................................... 27911.5 Exemplos de programas em Pascal e C .......................................................................... 280

    11.5.1 Programas em Pascal .................................................................................................. 28011.5.2 Programas em C ............................................................................................................ 285

  • 8 Algoritmos e Programao

    Captulo 12 Introduo Complexidade de Algoritmos ................................................... 29112.1 Relacionando a entrada ao tempo de resposta ........................................................... 292

    12.1.1 A notao O .................................................................................................................. 29212.1.2 Problemas polinomiais e exponenciais ............................................................... 294

    12.2 Regras para anlise de complexidade de algoritmos ................................................ 29612.2.1 Outras diretivas ............................................................................................................. 297

    12.3 Exemplos de anlise de algoritmos, contando operaes ...................................... 29812.3.1 Troca de valores ........................................................................................................... 29812.3.2 Mdia de um vetor ....................................................................................................... 29912.3.3 Soma de matrizes ......................................................................................................... 30012.3.4 Multiplicao de matrizes ..........................................................................................30112.3.5 Busca seqencial ......................................................................................................... 30212.3.6 Operaes em filas ...................................................................................................... 30312.3.7 Ordenao Bolha ......................................................................................................... 304

    12.4 Exemplos de anlise de algoritmos, usando funes de recorrncia ..................30512.4.1 Fatorial ............................................................................................................................. 30612.4.2 Pesquisa em rvore Binria ..................................................................................... 30712.4.3 Quicksort .........................................................................................................................310

    12.5 Exerccios do captulo ...........................................................................................................312

    Apndice A Resoluo dos Exerccios .............................................................................. 315Captulo 2 ............................................................................................................................................ 315Captulo 3 ............................................................................................................................................ 317Captulo 4 ............................................................................................................................................321Captulo 5 ........................................................................................................................................... 326Captulo 6 ............................................................................................................................................331Captulo 7 ........................................................................................................................................... 335Captulo 8 ........................................................................................................................................... 345Captulo 9 ........................................................................................................................................... 352Captulo 10 ......................................................................................................................................... 359Captulo 11 ......................................................................................................................................... 365Captulo 12 ..........................................................................................................................................376

    Apndice B Bibliograa ................................................................................................. 379ndice Remissivo .............................................................................................................. 381