algoritmos completos

Download algoritmos completos

Post on 31-Jul-2015

613 views

Category:

Documents

16 download

Embed Size (px)

TRANSCRIPT

<p>Pedro Kantek</p> <p>Algoritmos</p> <p>Unicenp Jul/07, dez/07 Curitiba</p> <p>verso de 10 de fevereiro de 2008 a</p> <p>1</p> <p>88-08, Pedro Kantek</p> <p>88-08, Pedro Kantek</p> <p>2</p> <p>verso de 10 de fevereiro de 2008 a</p> <p> SUMARIO 4 Comandos 4.1 Viso Top down e Bottom up . . . . . . . . . . . . a 4.2 Seqncia de execuao . . . . . . . . . . . . . . . . ue c 4.3 Entrada/Sa da . . . . . . . . . . . . . . . . . . . . 4.3.1 Comando de Entrada . . . . . . . . . . . . 4.3.2 Comando de Sa da . . . . . . . . . . . . . . 4.4 O comando alternativo . . . . . . . . . . . . . . . . 4.4.1 Alternativa simples . . . . . . . . . . . . . . 4.4.2 Alternativa composta . . . . . . . . . . . . 4.4.3 Alternativas aninhadas . . . . . . . . . . . . 4.5 Estruturas de repetiao . . . . . . . . . . . . . . . c 4.5.1 Repetiao com condiao no in c c cio: enquanto 4.5.2 Repetiao com varivel de controle: para . c a 4.5.3 Repetiao com condiao no nal: repita . . c c 4.5.4 Comando de m ltipla escolha: Escolha . . . u 4.5.5 Abandono de iteraao: abandone . . . . . . c 75 75 75 76 76 77 77 77 78 78 83 83 84 86 96 97</p> <p>Sumrio a1 Contrato Pedaggico o 2 Cincia da Computao e ca 2.1 Representaao do conhecimento . . . . . c 2.2 Algoritmo . . . . . . . . . . . . . . . . . 2.2.1 Qualidades de um bom algoritmo 2.2.2 Como se escreve um algoritmo . 2.3 Portugol . . . . . . . . . . . . . . . . . . 2.4 Programaao Estruturada . . . . . . . . c 2.5 A mquina de Turing . . . . . . . . . . a 2.6 Linguagens de programaao . . . . . . . c 2.6.1 Assembler . . . . . . . . . . . . . 2.6.2 Fortran . . . . . . . . . . . . . . 2.6.3 Lisp . . . . . . . . . . . . . . . . 2.6.4 Prolog . . . . . . . . . . . . . . . 2.6.5 Cobol . . . . . . . . . . . . . . . 2.6.6 APL . . . . . . . . . . . . . . . . 2.6.7 Basic . . . . . . . . . . . . . . . . 2.6.8 Clipper . . . . . . . . . . . . . . 2.6.9 Natural . . . . . . . . . . . . . . 2.6.10 Pascal . . . . . . . . . . . . . . . 2.6.11 C . . . . . . . . . . . . . . . . . . 2.6.12 Java . . . . . . . . . . . . . . . . 2.6.13 PHP . . . . . . . . . . . . . . . . 2.6.14 J . . . . . . . . . . . . . . . . . . 3 Escrevendo algoritmos 3.1 Nome . . . . . . . . . . . . 3.2 Variveis . . . . . . . . . . . a 3.2.1 Tipos de variveis . a 3.2.2 Cdigo de caracteres o 3.3 Comando de atribuiao . . c 3.4 Expresses . . . . . . . . . . o 3.4.1 Aritmticas . . . . . e 3.4.2 Relacionais . . . . . 3.4.3 Lgicas . . . . . . . o 13 27 27 31 32 34 34 39 40 42 42 43 44 45 46 47 48 49 50 50 51 52 53 54 55 55 57 57 58 61 62 62 68 68</p> <p>. . . . . . . . . . . . . . . . . . . . . .</p> <p>. . . . . . . . . . . . . . . . . . . . . .</p> <p>. . . . . . . . . . . . . . . . . . . . . .</p> <p>. . . . . . . . . . . . . . . . . . . . . .</p> <p>. . . . . . . . . . . . . . . . . . . . . .</p> <p>. . . . . . . . . . . . . . . . . . . . . .</p> <p>. . . . . . . . . . . . . . . . . . . . . .</p> <p>. . . . . . . . . . . . . . . . . . . . . .</p> <p>. . . . . . . . . . . . . . . . . . . . . .</p> <p>. . . . . . . . . . . . . . . . . . . . . .</p> <p>. . . . . . . . . . . . . . . . . . . . . .</p> <p>. . . . . . . . . . . . . . . . . . . . . .</p> <p>. . . . . . . . . . . . . . . . . . . . . .</p> <p>. . . . . . . . . . . . . . . . . . . . . .</p> <p>. . . . . . . . . . . . . . . . . . . . . .</p> <p>. . . . . . . . . . . . . . . . . . . . . .</p> <p>. . . . . . . . . . . . . . . . . . . . . .</p> <p>. . . . . . . . . . . . . . . . . . . . . .</p> <p>. . . . . . . . . . . . . . . . . . . . . .</p> <p>. . . . . . . . . . . . . . .</p> <p>. . . . . . . . . . . . . . .</p> <p>. . . . . . . . . . . . . . .</p> <p>. . . . . . . . . . . . . . .</p> <p>. . . . . . . . . . . . . . .</p> <p>. . . . . . . . . . . . . . .</p> <p>. . . . . . . . . . . . . . .</p> <p>. . . . . . . . . . . . . . .</p> <p>. . . . . . . . . . . . . . .</p> <p>. . . . . . . . . . . . . . .</p> <p>. . . . . . . . . . . . . . .</p> <p>. . . . . . . . . . . . . . .</p> <p>. . . . . . . . . . . . . . .</p> <p>5 Nassi-Schneiderman 105 5.1 Chines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 6 Visualg 6.1 Regras de Visualg . . . . . . . . . . . . . . . 6.2 Exemplos de Visualg . . . . . . . . . . . . . . 6.2.1 Criando uma raiz quadrada . . . . . . 6.2.2 Achando ra por Newton-Raphson . zes 6.2.3 Depuraao de algoritmos . . . . . . . c . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 . 109 . 114 . 116 . 117 . 118</p> <p>7 Modularizao: funoes ca c 119 7.1 Funoes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 c 7.1.1 Variveis globais e locais . . . . . . . . . . . . . . . . . . . . . . . . 120 a 8 Vetores e Matrizes 8.1 Deniao de Vetor . . . . . . . . . . . . c 8.1.1 Origem dos ndices . . . . . . . . 8.2 Operaoes Bsicas . . . . . . . . . . . . c a 8.3 Ordenaao . . . . . . . . . . . . . . . . . c 8.4 Operaoes fundamentais na Informtica c a 8.5 Tabelas . . . . . . . . . . . . . . . . . . 8.6 Merge (intercalaao) de dois vetores . . c 8.7 Pesquisa seq encial . . . . . . . . . . . . u 8.8 Matriz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123 . 123 . 124 . 125 . 129 . 130 . 133 . 135 . 137 . 149</p> <p>. . . . . . . . .</p> <p>. . . . . . . . .</p> <p>. . . . . . . . .</p> <p>. . . . . . . . . 3</p> <p>. . . . . . . . .</p> <p>. . . . . . . . .</p> <p>. . . . . . . . .</p> <p>. . . . . . . . .</p> <p>. . . . . . . . .</p> <p>. . . . . . . . .</p> <p>. . . . . . . . .</p> <p>. . . . . . . . .</p> <p>. . . . . . . . .</p> <p>. . . . . . . . .</p> <p>. . . . . . . . .</p> <p>. . . . . . . . .</p> <p>. . . . . . . . .</p> <p>. . . . . . . . .</p> <p>. . . . . . . . .</p> <p>. . . . . . . . .</p> <p>. . . . . . . . .</p> <p>. . . . . . . . .</p> <p>. . . . . . . . .</p> <p>. . . . . . . . .</p> <p>. . . . . . . . .</p> <p>. . . . . . . . .</p> <p>9 Registros 157 9.1 Deniao de registros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 c 9.2 Processamento de Textos . . . . . . . . . . . . . . . . . . . . . . . . . . . 166 9.2.1 Calendrios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176 a 10 Exerc cios prticos: 003 -Raiz quadrada a 10.1 Exemplo de um algoritmo: raiz quadrada 10.2 Exerc 1 . . . . . . . . . . . . . . . . . cio 10.3 Exerc 2 . . . . . . . . . . . . . . . . . cio 10.4 Exerc 3 . . . . . . . . . . . . . . . . . cio 10.5 Exerc 4 . . . . . . . . . . . . . . . . . cio88-08, Pedro Kantek</p> <p>. . . . .</p> <p>. . . . .</p> <p>. . . . .</p> <p>. . . . .</p> <p>. . . . .</p> <p>. . . . .</p> <p>. . . . .</p> <p>. . . . .</p> <p>. . . . .</p> <p>. . . . .</p> <p>. . . . .</p> <p>. . . . .</p> <p>. . . . .</p> <p>. . . . .</p> <p>. . . . .</p> <p>. . . . .</p> <p>. . . . .</p> <p>181 . 181 . 184 . 184 . 184 . 185</p> <p>4</p> <p>verso de 10 de fevereiro de 2008 a</p> <p> SUMARIO 10.6 Respostas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185 11 Exerc cios Prticos: 004-Introduo a ca 11.1 Algoritmos . . . . . . . . . . . . . . . . . . . 11.1.1 Mximo Divisor Comum . . . . . . . . a 11.1.2 Algoritmo do Mximo Divisor Comum a 11.1.3 Algoritmos no dia a dia . . . . . . . . 11.1.4 Exerc 1 . . . . . . . . . . . . . . . cio 11.1.5 Exerc 2 . . . . . . . . . . . . . . . cio 11.1.6 Exerc 3 . . . . . . . . . . . . . . . cio 11.1.7 Exerc 4 . . . . . . . . . . . . . . . cio 11.1.8 Exerc 5 . . . . . . . . . . . . . . . cio 11.1.9 Exerc 6 . . . . . . . . . . . . . . . cio 11.1.10 Exerc 7 . . . . . . . . . . . . . . . cio 11.1.11 Exerc 8 . . . . . . . . . . . . . . . cio 11.1.12 Exerc 9 . . . . . . . . . . . . . . . cio 11.1.13 Exerc 10 . . . . . . . . . . . . . . . cio 11.1.14 Respostas . . . . . . . . . . . . . . . . 12 Exerc cio prtico: 006-Jogo a 12.1 O jogo da vida . . . . . . 12.2 Exerc 1 . . . . . . . . cio 12.3 Exerc 2 . . . . . . . . cio 12.4 Exerc 3 . . . . . . . . cio 12.5 Exerc 4 . . . . . . . . cio 12.6 Respostas . . . . . . . . . 13 Exerc cio Prtico:007-GPS a 13.1 GPS . . . . . . . . . . . . 13.1.1 Problemas . . . . . 13.2 Dois amigos . . . . . . . . 13.2.1 Exemplo . . . . . . 13.2.2 Como fazer . . . . 13.2.3 Problema 1 . . . . 13.2.4 Problema 2 . . . . 13.2.5 Problema 3 . . . . 13.2.6 Problema 4 . . . . 13.2.7 Problema 5 . . . . 13.2.8 Problema 6 . . . . 13.2.9 Problema 7 . . . . 13.2.10 Problema 8 . . . . 13.2.11 Problema 9 . . . . 13.2.12 Problema 10 . . . 13.2.13 Respostas . . . . . da . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Vida . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187 . 187 . 188 . 188 . 189 . 189 . 189 . 190 . 190 . 190 . 190 . 190 . 190 . 191 . 191 . 191 193 . 193 . 195 . 196 . 196 . 197 . 197 199 . 201 . 202 . 202 . 203 . 203 . 203 . 204 . 204 . 204 . 205 . 205 . 205 . 205 . 206 . 206 . 206 207 . 207 . 207 . 208 . 208 . 208 . 208 . 209 14.1.7 Problema 7 . 14.1.8 Problema 8 . 14.1.9 Problema 9 . 14.1.10 Problema 10 14.1.11 Respostas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .</p> <p> SUMARIO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209 . 209 . 209 . 209 . 209 211 . 211 . 212 . 213 . 214 . 215 . 215 217 . 217 . 217 . 217 . 218 . 218 . 218 . 219 . 219 . 219 . 220 . 220 . 220 . 220 . 221 . 221 . 222 . 222 . 222 . 223 . 223 . 223 . 224 . 224 225 . 225 . 226 . 226 . 226 . 227 . 227 . 228 . 228 . 228 . 229 . 229 . 229 . 230</p> <p>15 Exerc cio prtico: 009-Achar o a 15.1 Qual o n mero que falta ? . . u 15.2 Exerc 1 . . . . . . . . . . cio 15.3 Exerc 2 . . . . . . . . . . cio 15.4 Exerc 3 . . . . . . . . . . cio 15.5 Exerc 4 . . . . . . . . . . cio 15.6 Respostas . . . . . . . . . . .</p> <p>nmero que u . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e . . . . . . . . . . . . . . . . . . . . . . .</p> <p>falta . . . . . . . . . . . . . . . . . . . . . . . .</p> <p>16 Exerc cios Prticos: 011 - Matemtica a a 16.1 Exerc 1 . . . . . . . . . . . . . . . cio 16.1.1 Exerc 1.1 . . . . . . . . . . cio 16.1.2 Exerc 1.2 . . . . . . . . . . cio 16.1.3 Exerc 1.3 . . . . . . . . . . cio 16.1.4 Exerc 1.4 . . . . . . . . . . cio 16.1.5 Exerc 1.5 . . . . . . . . . . cio 16.1.6 Exerc 1.6 . . . . . . . . . . cio 16.1.7 Exerc 1.7 . . . . . . . . . . cio 16.1.8 Exerc 1.8 . . . . . . . . . . cio 16.1.9 Exerc 1.9 . . . . . . . . . . cio 16.1.10 Exerc 1.10 . . . . . . . . . . cio 16.2 Exerc 2 . . . . . . . . . . . . . . . cio 16.2.1 Exerc 2.1 . . . . . . . . . . cio 16.2.2 Exerc 2.2 . . . . . . . . . . cio 16.2.3 Exerc 2.3 . . . . . . . . . . cio 16.2.4 Exerc 2.4 . . . . . . . . . . cio 16.2.5 Exerc 2.5 . . . . . . . . . . cio 16.2.6 Exerc 2.6 . . . . . . . . . . cio 16.2.7 Exerc 2.7 . . . . . . . . . . cio 16.2.8 Exerc 2.8 . . . . . . . . . . cio 16.2.9 Exerc 2.9 . . . . . . . . . . cio 16.2.10 Exerc 2.10 . . . . . . . . . . cio 16.2.11 Respostas . . . . . . . . . . . .</p> <p>Lgica Bsicas o a . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e . . . . . . . . . . . . . encadeados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .</p> <p>14 Exerc cio Prtico: 008 - Problemas a 14.1 Resolva os exerc cios a seguir . . . 14.1.1 Problema 1 . . . . . . . . . 14.1.2 Problema 2 . . . . . . . . . 14.1.3 Problema 3 . . . . . . . . . 14.1.4 Problema 4 . . . . . . . . . 14.1.5 Problema 5 . . . . . . . . . 14.1.6 Problema 6 . . . . . . . . .verso de 10 de fevereiro de 2008 a</p> <p>17 Exerc cios Prticos: 017-SEs compostos a 17.1 SEs compostos e encadeados . . . . . . . 17.1.1 Exerc 1.1 . . . . . . . . . . . cio 17.1.2 Exerc 1.2 . . . . . . . . . . . cio 17.1.3 Exerc 1.3 . . . . . . . . . . . cio 17.1.4 Exerc 1.4 . . . . . . . . . . . cio 17.1.5 Exerc 1.5 . . . . . . . . . . . cio 17.1.6 Exerc 1.6 . . . . . . . . . . . cio 17.2 Exerc 2 . . . . . . . . . . . . . . . . cio 17.2.1 Exerc 2.1 . . . . . . . . ....</p>