Logica Programacao Aplicada V2.2008

104
L gi a e P g ama ã A p l i a a Prof. M r o Fi hbor M d i ir - V 2 .2 8

description

apostila

Transcript of Logica Programacao Aplicada V2.2008

Page 1: Logica Programacao Aplicada V2.2008

Lógica e Programação A p l icad a

Prof. Marcos Fischborn

Me d iane ira - V 2 .2 0 0 8

Page 2: Logica Programacao Aplicada V2.2008

2

�����������

CAPITULO 1 - SISTEMAS DE NUMERAÇÃO.......................................................................................................7 1.1 Sistemas analógicos e digitais............................................................................................................7 1.2 Necessidade de representação de números em outras bases: ............................................................8

1.2.1 Numeração posicional e numeração não posicional .................................................................................. 9 1.3 Principais tipos de bases numéricas.................................................................................................12

1.3.1 Sistema Decimal .....................................................................................................................................12 1.3.2 Sistema Binário ......................................................................................................................................12 1.3.3 Sistema Octal..........................................................................................................................................13 1.3.4 Sistema Hexadecimal..............................................................................................................................13

1.4 Tabela de equivalência entre bases..................................................................................................14 1.5 Conversões de Base..........................................................................................................................14

1.5.1 Decimal inteiro para base r .....................................................................................................................14 1.5.2 Conversão de fração decimal para base r.................................................................................................15 1.5.3 Conversão entre um número decimal com parte inteira e parte fracionária para um número na base r......15 1.5.4 Conversão de base r para base decimal....................................................................................................16 1.5.5 Conversão da base binária para a base 2K ................................................................................................16 1.5.6 Conversão da base 2K para a base binária................................................................................................17 1.5.7 Mapa de conversão .................................................................................................................................17

1.6 Unidades de Medida.........................................................................................................................18 1.7 Exercícios: ........................................................................................................................................18

CAPÍTULO 2 - ÁLGEBRA DE BOOLE. .............................................................................................................19 2.1 Introdução........................................................................................................................................19 2.2 Operação E.......................................................................................................................................19 2.3 Operação OU ...................................................................................................................................20 2.4 Operação NÃO.................................................................................................................................20 2.5 Postulados........................................................................................................................................20 2.6 Elementos de relações lógicas..........................................................................................................21 2.7 Teoremas e relações lógicas.............................................................................................................22 2.8 Funções Booleanas...........................................................................................................................24 2.9 Tabelas verdade................................................................................................................................24 2.10 Minitermos......................................................................................................................................25 2.11 Tabelas verdade aplicadas à algoritmos........................................................................................26 2.12 Exercícios resolvidos......................................................................................................................28 2.13 Exercícios propostos......................................................................................................................29

CAPÍTULO 3 – PROGRAMAÇÃO ESTRUTURADA EM ‘C’ . ................................................................................31 3.1 Conceitos de Programação Estruturada..........................................................................................31

3.1.1 Definições ..............................................................................................................................................31 3.1.2 Objetivos................................................................................................................................................31 3.1.3 Propriedades...........................................................................................................................................31 3.1.4 Estruturas Básicas de Controle................................................................................................................32 3.1.5 Formato Padronizado do Módulo............................................................................................................32 3.1.6 Estrutura de Controle do Programa.........................................................................................................33 3.1.7 Documentação........................................................................................................................................33

3.2 Ambientes de programação..............................................................................................................34 3.3 Estrutura de um programa em "C” . .................................................................................................35

3.3.1 Regras Gerais .........................................................................................................................................35 3.3.2 Palavras reservadas (keywords): .............................................................................................................36 3.3.3 O comando #define.................................................................................................................................36 3.3.4 O comando #include...............................................................................................................................36

3.4 Tipos de dados..................................................................................................................................37 3.4.1 Tipo Inteiro.............................................................................................................................................38 3.4.2 Tipo Real ................................................................................................................................................38 3.4.3 Tipo caractere e tipo fila de caractere (string)..........................................................................................38 3.4.4 Tipo Lógico............................................................................................................................................39

3.5 Variáveis...........................................................................................................................................40 3.6 Representação dos tipos de dados na linguagem de programação C..............................................40 3.7 Onde as variáveis são declaradas:...................................................................................................41

3.7.1 Observações sobre os nomes das variáveis..............................................................................................42 3.8 Inicialização de variáveis.................................................................................................................43

Page 3: Logica Programacao Aplicada V2.2008

3

3.9 Constantes........................................................................................................................................43 3.10 Modificadores de tipo.....................................................................................................................43 3.11 Expressões......................................................................................................................................44

3.11.1 Operações primitivas ............................................................................................................................44 3.11.2 Expressões aritméticas..........................................................................................................................45 3.11.3 Algumas funções matemáticas da biblioteca ‘C’ ...................................................................................45

3.12 Operadores.....................................................................................................................................46 3.12.1 Operador de atribuição..........................................................................................................................46 3.12.2 Operadores aritméticos .........................................................................................................................46 3.12.3 Precedência (Hierarquia) nas operações................................................................................................46 3.12.4 Operadores de incremento e decremento...............................................................................................47 3.12.5 Operadores relacionais..........................................................................................................................47 3.12.6 Operadores lógicos ...............................................................................................................................47 3.12.7 Precedência (Hierarquia) dos operadores relacionais e lógicos. .............................................................48

3.13 Exercícios: ......................................................................................................................................49 CAPÍTULO 4 - ALGORITMOS, LÓGICA DE PROGRAMAÇÃO E FLUXOGRAMAS. ................................................51

4.1 Introdução........................................................................................................................................51 4.2 Conceito de algoritmo......................................................................................................................51 4.3 Representação dos algoritmos..........................................................................................................52

4.3.1 Linguagem natural ..................................................................................................................................53 4.3.2 Fluxogramas...........................................................................................................................................53 4.3.3 Pseudo-linguagens..................................................................................................................................53

4.4 Diretrizes para construção de um algoritmo....................................................................................53 4.5 Representação gráfica: fluxograma ou diagrama de blocos............................................................54 4.6 Formas padrões para utilização de fluxogramas.............................................................................55 4.7 Exemplos..........................................................................................................................................57

CAPÍTULO 5 - FUNÇÕES BÁSICAS (FUNÇÕES DE ENTRADA E SAÍDA). ............................................................58 5.1 Função de saída : printf().................................................................................................................58

5.1.1 Especificadores de formato.....................................................................................................................59 5.1.2 Seqüências de Escape.............................................................................................................................60

5.2 Função de Entrada/Leitura : scanf()................................................................................................60 5.2.1 Usando scanf com strings .......................................................................................................................62

5.3 Funções para entrada e saída de strings: gets e puts.......................................................................64 5.4 Função de Entrada : getch() ............................................................................................................64 5.4 Exercícios: ........................................................................................................................................65

CAPÍTULO 6 - ESTRUTURAS DE CONTROLE E DE REPETIÇÃO.........................................................................71 6.1 - Tipos de Comandos........................................................................................................................71

6.1.1 Seqüência...............................................................................................................................................71 6.1.2 Seleção ...................................................................................................................................................71 6.1.3 Repetição................................................................................................................................................71 6.1.4 Atribuição...............................................................................................................................................72

6.2 - Comando if ( ) ................................................................................................................................72 6.2.1 If ´s aninhados........................................................................................................................................73

6.3 - O comando switch () ......................................................................................................................74 6.4 - Comando while ()...........................................................................................................................77 6.5 - O loop for (;;).................................................................................................................................78 6.6 - O loop do { } while.........................................................................................................................80 6.7 - Interrupção de loops......................................................................................................................80

6.7.1 O comando break....................................................................................................................................80 6.7.2 O comando continue...............................................................................................................................81

6.8 - O Comando exit()...........................................................................................................................82 CAPÍTULO 7 - FUNÇÕES DEFINIDAS PELO USUÁRIO.......................................................................................83

7.1 Valores de Retorno...........................................................................................................................84 7.2 Chamada por Valor ..........................................................................................................................86 7.3 Chamada por Referência..................................................................................................................87 7.4 Argumentos "argc" e "argv" do "main( )" ........................................................................................87

CAPÍTULO 8 – MATRIZES, VETORES E STRINGS............................................................................................90 8.1 Vetores (Matrizes de uma Dimensão)...............................................................................................90 8.2 Strings...............................................................................................................................................91

8.2.1 Atribuição de valores a strings................................................................................................................91 8.3 Matrizes (Multidimensional) ............................................................................................................92 8.4 Matrizes de Strings...........................................................................................................................93

Page 4: Logica Programacao Aplicada V2.2008

4

8.5 Inicialização de Matrizes..................................................................................................................93 8.5.1 Inicialização de Matrizes de Caracteres...................................................................................................93 8.5.2 Inicialização de Matrizes Multidimensionais...........................................................................................94 8.5.3 Inicialização de Matrizes sem Tamanho..................................................................................................94

CAPÍTULO 9 – INTRODUÇÃO A PONTEIROS. ..................................................................................................97 9.1 Exibindo endereços de memória.......................................................................................................97 9.2 Declarando variáveis ponteiros.......................................................................................................98 9.3 Alterando o valor que o ponteiro referencia....................................................................................99 9.4 Usando ponteiros com funções.......................................................................................................100

ANEXO.......................................................................................................................................................103 BIBLIOGRAFIA ............................................................................................................................................104

���� ����������

EXEMPLO: EXPRESSÃO LÓGICA.........................................................................................................................22 EXEMPLO: MINIMIZAÇÃO .................................................................................................................................23 EXEMPLO: MINIMIZAÇÃO .................................................................................................................................24 EXEMPLO: FUNÇÃO BOOLEANA ........................................................................................................................24 EXEMPLO: TABELA VERDADE ...........................................................................................................................25 EXEMPLO: TABELA VERDADE ...........................................................................................................................25 EXEMPLO: TABELA VERDADE ...........................................................................................................................27 EXEMPLO: TABELA VERDADE ...........................................................................................................................27 PROGRAMA EXEMPLO: FUNÇÃO MAIN()............................................................................................................35 EXEMPLO: #DEFINE...........................................................................................................................................36 EXEMPLO: #INCLUDE ........................................................................................................................................37 PROGRAMA EXEMPLO: INCLUSÃO DE BIBLIOTECAS..........................................................................................37 EXEMPLO: FILA DE CARACTERES - STRINGS......................................................................................................39 EXEMPLO: DECLARAÇÃO DE VARIÁVEIS...........................................................................................................42 EXEMPLO: INICIALIZAÇÃO DE VARIÁVEIS.........................................................................................................43 EXEMPLO: #DEFINE E CONST PARA CONSTANTES..............................................................................................43 EXEMPLO: ATRIBUIÇÃO DE VALORES................................................................................................................46 EXEMPLO: INCREMENTO E DECREMENTO ..........................................................................................................47 EXEMPLO: EXPRESSÃO BOOLEANA EM 'C' .........................................................................................................48 EXEMPLO: EXPRESSÃO BOOLEANA EM 'C' .........................................................................................................48 EXEMPLO: TABELAS VERDADE COM EXPRESSÕES EM 'C'...................................................................................48 PROGRAMA EXEMPLO: PRINTF – SAÍDA DE DADOS............................................................................................58 PROGRAMA EXEMPLO: PRINTF – SAÍDA FORMATADA ........................................................................................59 PROGRAMA EXEMPLO: PRINTF – SAÍDA COM SEQÜÊNCIAS DE ESCAPE ..............................................................60 PROGRAMA EXEMPLO: SCANF – ENTRADA FORMATADA SIMPLES.....................................................................61 PROGRAMA EXEMPLO: PRINTF – SCANF............................................................................................................62 PROGRAMA EXEMPLO: STRINGS COM ESPAÇOS E SCANF ...................................................................................62 PROGRAMA EXEMPLO: SCANF COM DELIMITADORES %[]..................................................................................63 PROGRAMA EXEMPLO: SCANF COM DELIMITADORES ........................................................................................63 PROGRAMA EXEMPLO: PUTS & GETS ................................................................................................................64 PROGRAMA EXEMPLO: GETCH ..........................................................................................................................64 EXEMPLO: COMANDOS EM SEQÜÊNCIA .............................................................................................................71 EXEMPLO: UTILIZAÇÃO DE SELEÇÃO.................................................................................................................71 PROGRAMA EXEMPLO: REPETIÇÃO....................................................................................................................71 PROGRAMA EXEMPLO: IF-ELSE .........................................................................................................................73 PROGRAMA EXEMPLO: IF ANINHADO ................................................................................................................73 EXEMPLO: MAIS IF’ S ANINHADOS......................................................................................................................74 PROGRAMA EXEMPLO: SWITCH-CASE................................................................................................................75 PROGRAMA EXEMPLO: SWITCH-CASE................................................................................................................75 PROGRAMA EXEMPLO: SWITCH-CASE................................................................................................................76 PROGRAMA EXEMPLO: WHILE ...........................................................................................................................78 PROGRAMA EXEMPLO: FOR...............................................................................................................................79

Page 5: Logica Programacao Aplicada V2.2008

5

PROGRAMA EXEMPLO: FOR...............................................................................................................................79 PROGRAMA EXEMPLO: DO-WHILE .....................................................................................................................80 PROGRAMA EXEMPLO: BREAK ..........................................................................................................................80 PROGRAMA EXEMPLO: CONTINUE .....................................................................................................................81 PROGRAMA EXEMPLO: FUNÇÃO DEFINIDA PELO USUÁRIO.................................................................................83 PROGRAMA EXEMPLO: SEM VALORES DE RETORNO ..........................................................................................84 PROGRAMA EXEMPLO: VALORES DE RETORNO..................................................................................................84 PROGRAMA EXEMPLO: VALORES DE RETORNO..................................................................................................85 PROGRAMA EXEMPLO: CHAMADA POR VALOR ..................................................................................................86 PROGRAMA EXEMPLO: ARGUMENTOS PARA MAIN.............................................................................................87 PROGRAMA EXEMPLO: ARGUMENTOS PARA MAIN.............................................................................................88 EXEMPLO: DECLARAÇÃO DE UM VETOR............................................................................................................90 PROGRAMA EXEMPLO: UTILIZAÇÃO DE VETORES NUMÉRICOS ..........................................................................90 PROGRAMA EXEMPLO: UTILIZAÇÃO DE MATRIZES ............................................................................................92 EXEMPLO: MATRIZ DE STRINGS.........................................................................................................................93 EXEMPLO: INICIALIZAÇÃO DE MATRIZ ..............................................................................................................93 PROGRAMA EXEMPLO: INICIALIZAÇÃO DE MATRIZES DE CARACTERES .............................................................93 EXEMPLO: INICIALIZAÇÃO DE MATRIZES MULTIDIMENSIONAIS.........................................................................94 EXEMPLO: INICIALIZAÇÃO DE MATRIZES SEM TAMANHO ..................................................................................94 PROGRAMA EXEMPLO: MATRIZES DE CARACTERES E VETORES.........................................................................94 PROGRAMA EXEMPLO: SOMA DE MATRIZES NUMÉRICAS...................................................................................95 PROGRAMA EXEMPLO: USANDO OPERADOR & ..................................................................................................97 PROGRAMA EXEMPLO: USANDO OS OPERADORES & E * ....................................................................................98 PROGRAMA EXEMPLO: USANDO O PONTEIRO DE INDIREÇÃO.............................................................................99 PROGRAMA EXEMPLO: PASSAGEM DE ARGUMENTOS POR REFERÊNCIA ...........................................................100 PROGRAMA EXEMPLO: ENDEREÇOS NA PASSAGEM POR REFERÊNCIA ..............................................................101 PROGRAMA EXEMPLO: TROCA DE VARIÁVEIS ATRAVÉS DE REFERÊNCIAS.......................................................101

Page 6: Logica Programacao Aplicada V2.2008

6

������ �������! "�

#%$'&)(+*,(-$/.1032)465%(,78.:9'$/;=<>5%(,(@?'<@$6&BA/C1(D58.EC/F)08A=G/(+5).+?H9I<%0J9K(/L3()M/;%<ON�PB./LDL@2)A6&%<L8(=&8.H96A6(8C,4'</78<,.'LQ9K.)CR(8M/;%<[email protected]'$R;1<U(B46&8.H96A6<J9:VW.XL:21AR&1<@$Y.'Z8./L@?=C/<8$Y<3[/&@A'5)<8$U4'(\84'&8.H964/.1&ON,]B0^9I()5%.1M1<_()`82%Aa(b&1<=5)<8$_.)$R&).8$c(@26&%<J9K.3$dV-`821.e58.ef)<J9gL)(hA14/53AH9K.=&1(()i32/51(^9I(1Lj46<k&).RZ)&)<ONYl).+&BAm7@.)$%$/.-G1<=L)<Q<3[/&).:9U(n9K.=f).J9po)41G)AR(q?6(^9I(k&)<=5)<8$r.1C1.8$sV.8$'&)(J96A6(1LU46(Y[8A/[%C)A6<)0:9K(1fBA6(tN�]HC103214)$u.)$/&=;)<ON] A%46&8.%41M/;%<h58.)$R&1(v(3?/<8$R&8A1C/(w*v$)A'L@?1C1.3$mL@.%46&8.x$/.J9y2'L)(vG=<84)$12RC/&)( 9Iz@?1AR51(vS3$`@2R.8$6&%{).8$ [=z8$)A/G=(8$ 5%( 2/&8A=C)A1|/(%M1;1< 5%. f)C82KZ8<10^9I(/L8(3$ . 58. ?@9I<)0:9K(/L3()M1;1< 46(C8A=4/082R(108.6Lx}�~��1NT�=;1<Qf1<BA-<3[/i8./&BAm78<�.)$1G@9'.678.:9�2mLjC)A'7s9K<OV�?6<@A=$Q.RZ@A)$6&%./L�C3Am7s9p<8$L:2=A/&1< [1<84%$�4'<hL@.@9'G/(%51< . 26L%(�`82'(@46&8AR51()5%.v53.�.6ZB.6L:?RC1<8$�L@2)A'&1<v0^9I(@4653. 4'<� .%$)?6(3M/<H�sN���2'L�L)()&%.H9RA6(3Cb58A/5=z1&@A/G=<�5).b(@?'<8A/<bS@$_(32/C1(8$_53.b~1<1LB?)26&%()M1;1<�5%<G8289R$6<a5%._#=4/0%.841�R(J9RA6(j5%(a�mPs�=�%�c�=�'�1�:�1���B./5@A'(@4/.3AB9K(ON�]�G1<84%$121C/&=(a(1<8$jC%Am7�9I<B$G1<34)$6&%(84/&).3$�4'(T[3A/[1C8A'<)0J9p(1f@A6(Y*u()[8$6<3C)2/&=(1L8.346&8.Y4/.)G=.)$)$6z^9'A/(�N]s$q(82/C1(3$�&1(1L3[)*6Ly$R;1<j(8G/<=L@?/(34)�6(15%(8$�58.a2KLyG/<@4'i82)46&%<a5).�&^9I(@41$%?6(s9po84/G3A6(@$�`82=.L:2'5)(OV�A)4/.R7@A/&=(178.%C6L8.84'&8.�V�(TG=(15)(Y$1.6LB.)$/&:9'.�N  $xG/<B4/G).%A/&1<B$v5%. ?@9I<10s9g(1L)(3M/;)< (1`B21Av.3$6&@2'5)(15%<8$ $/;1< $1A'L@?1C1.3$v.x5).3$6&@A=4/(15%<8$S)`321.1C%.)$k`321.q4';)<k&3.6LcGR<@41�=.1G8AmLB.)4/&=<�?H9p*/7@A6<�58.�?H9I<%0J9K(/L3()M1;=<tN¡]^$1$)AmL¢V£$/.r7)<3G1oi)zY*Y2mLE?@9I<)0:9K(/L3(151<s9@V¤.3$6&)(X(8?/<3$6&@A/C=(T�p¥   *T?6(^9I(u7)<8G1o�N  &8.6Z3&1<�(3[/<s9g5)(O¦•

l8A1$R&)./L%(@$§5).T4%2mL@.@9I(8M/;%<O¨• © C/03.1[J9g(�53.Tª6<%<)C).�¨•

~)<84=G1.8A'&)<8$§58.Y?B9K<=0J9K(/L3()M1;=<T.3$6&s9'2'&@2B9p(15)(O¨•

P^A1?R<8$§58.u51()51<B$d¨•

#'Z@[email protected]$=$/{).3$«.)$=GH9RA'&1(@$X46(YC8A14R082/(10%./L�}�~t�1¨•

  ?/.:9I()5=<s9K.3$¬51(YC8A=460@26(%0)./L�}�~��1¨•

�=C)2'Z)<)0:9K(/L3(8$�¨•

�%214R51(1L3.846&%<8$¬5%(TC%A14/082R(108.'Lq}­~O�)¦o

�%214=M/{8.%$«[/z3$)A/G=(8$�¨o

#%$6&^9'2/&32B9K(8$uG/<B465@A/G%A/<84R(8A)$d¨o

#%$6&^9'2/&32B9K(8$§5).E9'.)?R.1&8A=M/;)<O¨o ® ./&%<J9'.%$d¨o

�8(1&^9'A1|=.)$�¨o

�%214=M/{8.%$¬51<�21$%26zs9'A'<t¨o

�R<84R&).8A89I<@$dN�1;=<y$6;)<j.)$R&82/5=()51(8$�&%*)G)41A=G/(@$�53.c?@9I<)0:9K(/L)(3M/;)<j(R78(84/M=(151(j&%(/L:?6<B2/G/<j()C=01<s9mA6&1L)<B$.8$=?1.1G3¯6f@A/G=<8$�VkA6&3.)4)$�L:21AR&1<�41.1G%.)$)$6z^9'A/<3$�?'(s9I(_`@2/.RL�53.)$1.Ri)(bG/<@46&BA14)2'(s9j41.)$R&1(zs9p.1(ON  &8.'Z8&1<j*_9K.8?RC)./&%<�5%.j./Z8.6LH?/C1<3$n9m.)$/<%C/7@AR51<@$r&)(84R&1<�58.�f)C)2'Z)<)0:9I(1L)(B$�G/<1L%<�53.?H9g<)0J9p(/L8(8$�V¤GR<@46&3.)465)<�A14%°[email protected]<[email protected])¯1G%A/<8$�V¡9K.3$6<8C'7@A/51<B$«.Y?B9p<8?/<8$'&)<8$�N

Page 7: Logica Programacao Aplicada V2.2008

7

Capitulo 1 - Sistemas de numeração.

±³² ±=´Kµ·¶¹¸»ºp¼O½I¶B½K¾K½g¿ÁÀmÂIµÄÃÆÅp¶8ºJÇpµÄÂKµÈ¸É½IµÄ¶ÊBË^ÌjÌHÍHÌ)ÎHÏBÐJÑ:Ì�ÒHÏcÓ8Ë@Ô8ÎtÕ6ËJÖ3Ïe×8ÑHÌ@ÏHÑHÒ3Ë^ÌqÏBÐaÏBØ^ÙBÍHÚ8ÑBÐJÏHÔ8ÎBË^ÌqÒ:Í8Û^Í)ÎHÑ:ÍHÌ�ÏBÜJÍBÌ8ÎJÏÙ8ÐJÑ ÝOÕ6Ë^Ô8ÎHÏ:Í�Õ/Ñ Ï:Ô8ÎtÕRÏ Ë ÌHÍHÌ3ÎJÏ3ÐJÑ Ñ Ì@ÏOÕÞÓ8Ë^Ô8ÎtÕmËHÖHÑHÒ3Ë ß/Ù8Ð ÏBØ^ÙHÍBÚ@ÑBÐJÏHÔ8ÎBËÑ:Ô@ÑHÖ3àHÛ^ÍHÓ)Ë:á�ÏrËjÌHÍHÌ)ÎJÏ3ÐJÑqÒBÏ�Ó)Ë:Ô8ÎtÕ6Ë:ÖHÏ�Ï3ÐcÌ@ÍãâEä3Ì8ÎHÑqÝOÕ6Ë:Ô8ÎHÏ:Í�Õ/Ñqå�ËqÐBËJÒBËÓ8ËHÐHË ÌBæBË Ú�ÕmË:Ó@Ï:ÌHÌBÑBÒBË^Ì Ë^Ì Ì3ÍHÔ@Ñ:ÍHÌ Ú�Õ6Ë3çsÏ:ÔBÍ8Ï:Ô8ÎJÏHÌ ÒHÏ Ù8ÐJÑ ÒHÏBÎJÏ�Õ'Ð^ÍHÔ8ÑHÒHÑÎJÑOÕ/ÏBÝHÑèâuédÑ:ÍHÌ�ÌHÍHÔ)Ñ:ÍHÌ�Ì@æBËcÑBÒBØ@ÙHÍ�Õ=Í@Ò3Ë^Ì�Ñ3ÎtÕ/Ñ3çJå:ÌQÒHÏjÌ@Ï:ÔHÌ)ËOÕ/Ï:ÌãêYØ^Ù@ÏjÚ8ËHÒHÏBÐÐHË^ÔHÍ)ÎHËtÕ/Ñ�Õ Ø^Ù@Ñ:Ô8Î@Í@ÒHÑHÒ@Ï@Ì Ó8ËHÐBË ÎJÏBÐ^Ú8ÏOÕ/ÑBÎ:Ù�Õ/Ñèê Ú�ÕmÏ:ÌHÌ@æBËëê çsÏHÖBË:ÓHÍ@ÒHÑ8ÒHÏèêÎJÏ:ÔHÌ8æBËìêbÓ8ËtÕHÕ6Ï@Ô8ÎJÏ Ï Ë:Ù)ÎtÕ/Ñ:Ì ÛtÕ/Ñ@Ô@ÒBÏHíHÑHÌëâÞä3Ì8ÎJÑ@Ì ÛtÕ6Ñ:Ô8ÒHÏHíHÑ@Ì Ú8ËHÒHÏ3Ð Ì@ÏOÕÎtÕ/ÑBÎHÑHÒHÑ:Ì Ñ3Î�Õ/Ñ3çJå:Ì ÒHÏ ÓHÍ�Õ=ÓHÙBÍ8ÎHË^Ì ØJÙ@Ï Ñ:Ì Ý:ÍHÓ@Ñ%Ð ÐHË^ÔHÍ3ÎHËtÕ/Ñ@Ô@Ò3ËÓ8Ë^Ô8Î:ÍHÔHÙ@Ñ3Ð:Ï:Ô8ÎJÏvÔ)ËvÎHÏBÐ^Ú)Ëìê�Ó8Ë3ÐHË�ÝHÑHí@Í@ÑBÐ�Ï�ÎJÑHÖ%çsÏBívÑ:ÍHÔ@ÒBÑhÝHÑ:î@Ñ3ÐxÑHÖBÛJÙBÔHÌÌHÍHÌ8ÎHÏBÐJÑ:Ì�×@Ñ:ÌBÏBÑHÒBË^ÌqÏBÐeÓ8Ë@Ô8ÎtÕ6Ë:ÖBÑHÒBËtÕ/Ï@Ì�Ñ@Ô@ÑHÖBàBÛJÍHÓ8Ë^Ìtâ�ï^Ù�Ï:Ô)ÎJæ3ËeÚ8ËJÒ@ÏBÐcÌ@ÏOÕÎtÕ/ÑBÎHÑHÒHÑ:Ì�ÑBÎtÕ6Ñ)çså:Ì-Ò@ÏQÓ)ËJÔ)çsÏOÕRÌ1ËtÕ/Ï:ÌrÑ:Ô8ÑHÖ3àHÛ^Í@Ó8Ë^ð8Ò:Í8Û@Í8ÎJÑ:ÍHÌ¢ê�Ó8Ë:Ô@ñ@Ï:ÓHÍ8ÒBË^Ì-Ú8ËtÕÓ8Ë^Ô)çJÏOÕ=Ì8ËOÕRÏ:Ì�ò�ó¢êjÏ Ï:Ô1ç^Í@ÑHÒBË:ÌxÏ:Ô8ÎHæBË Ú@ÑdÕ/Ñ Ó8Ë:Ô8ÎOÕ6ËJÖBÑHÒ3ËtÕ/ÏHÌx×@Ñ:Ì8ÏHÑHÒBË^ÌwÏBÐÌHÍHÌ8ÎHÏBÐJÑ:ÌDÒ:Í8Û^Í)ÎHÑ:ÍHÌëâäBÔ8ÎJæ3Ë�Ú8ËHÒ@ÏBÐHË^ÌDÓ@ÑOÕ/Ñ:Ó1ÎJÏOÕ=ÍBíBÑOÕXË:Ì�ÒBË^ÍBÌ�ÌHÍHÌ)ÎJÏ3ÐJÑ:Ì+Ó8ËBÐ@Ëìôõ ÍHÌ8ÎHÏBÐJÑ:ÌqÒ:Í8ÛJÍ)ÎJÑ:ÍHÌãôEÌ8æBËcÌHÍHÌ8Î:Ï3ÐJÑ:ÌqØ^Ù8ÏcÚ�Õ6Ë:Ó8Ï:ÌHÌ@Ñ8ÐeÌBÍHÔ@Ñ@ÍHÌ�Ò@ÍBÌHÓ�Õ/Ï8ÎHË^Ì�Ô8ËÎJÏBÐ^Ú)Ë Ï ÌBÙ@Ñ:Ì Ó8ÑOÕ/Ñ@Ó8Î:ÏOÕ=öBÌ8Î^ÍBÓ8Ñ:Ì ×@÷:ÌHÍHÓ8Ñ@Ì Ì@æBËìôwÎ:Ï3Ð^Ú8Ë ÒHÏ Ó8Ë^Ô1çsÏOÕ=ÌBæBËèêÎJÏBÐ^Ú)ËkÏ:Ô)Î�Õ/Ï-Ò@Ù8Ñ:Ì�ÑBØ@ÙHÍHÌHÍ@î)øJÏ:Ì,Ï-ÑBÐ^Ú8Ö:Í3Î^Ù@ÒBÏ+ÒHÑ+ÑBØ^ÙBÍ@ÌHÍHî@æ3Ëèâõ ÍHÌ8ÎHÏBÐJÑ:Ì�Ñ@Ô@ÑHÖ8àHÛ:ÍHÓ8Ë:ÌëôXÚ�ÕmË^Ó@Ï:ÌBÌBÑBÐQÌ@ÍHÔ@Ñ:ÍBÌ>çJÑOÕRÍ@Ñ:Ô)ÎJÏ@ÌkÔ8Ë-ÎJÏ3ÐJÚ)ËkØ^Ù8Ï�Ú8ËHÒHÏBÐÎJÏOÕxØ^Ù@Ñ:ÍBÌ8Ø^ÙBÏOÕwçsÑBÖBËtÕ/Ï@Ì ÒHÏHÔ8ÎOÕ6Ë ÒHÏ Ù8ÐJÑ ÝHÑ:Í3ÜJÑ Ó8Ë^Ô8Î^öBÔBÙ@Ñ ÒHÏ ÎJÏ:ÔHÌ@æ3ËìêÓ8ËtÕHÕ6Ï:Ô8ÎJÏùê¡ÎJÏBÐ:Ú8ÏOÕ/ÑBÎ^ÙsÕ/Ñèê¬Ú�Õ/Ï:ÌBÌ8æBËkÏDË^Ù3ÎtÕ/Ñ@Ì,ÛtÕ/Ñ@Ô@ÒHÏBí@Ñ:ÌëâúBÐ ÏBÜ:ÏBÐ:Ú@ÖBË ÒHÏ ÌHÍBÌ)ÎJÏBÐJÑ Ñ@Ô8ÑHÖBà@Û^ÍHÓ8Ë å Ë çsÏHÖBËHÓHö8ÐJÏBÎ�Õ6Ë ÒHÏ Ú8Ë^Ô8Î:Ï@Í�Õ6ËÙ8Î^Í@Ö@Í@íHÑHÒ3Ë Ô8Ë^Ì�Ñ8Ù8ÎHËHÐ@à3çsÏ:ÍHÌãâ�ÊHÏ:ÌHÌBÏ ÌHÍHÌ1ÎJÏBÐJÑùê�Ñ ÒHÏBÝHÖBÏBÜJæ8Ë ÒHÏ Ú)Ë^Ô8ÎJÏHÍ�Õ6ËÕ/Ï:Ú�Õ6Ï:Ì@Ï:Ô)Î:Ñ Ñ çsÏHÖBË:ÓBÍ@ÒHÑHÒBÏ ÒBË çsÏ:ö@ÓHÙ@ÖBËèâjò Ú8Ë^ÌHÍBî8æBË ÒBË Ú)ËJÔ8ÎJÏ:Í�Õ6Ë Ï ÑçsÏHÖBË:ÓHÍ@ÒHÑBÒ@ÏrÒBË>çsÏ:öHÓ3Ù@ÖBË-ÎHûBÐQÏ%Ð�Ó8ËHÐ:Ù8Ð-ËkÝHÑ8ÎHËkÒBÏDçsÑOÕRÍ@Ñ�Õ/ÏBÐ-Ï8ÐQÙ8Ð:Ñ-ÝHÑ@Í8ÜJÑÓ8Ë^Ô8Î:öHÔHÙ@Ñ ÒHÏ çsÑHÖ8ËOÕ/Ï:Ìëô Ñ çsÏHÖBË:ÓHÍ@ÒHÑ@ÒBÏ ÒBË Ñ@Ù)ÎHËHÐHà3çJÏHÖ Ú8ËJÒHÏ çsÑOÕRÍ8ÑOÕÓ8Ë^Ô8Î:ÍHÔHÙ@Ñ3Ð:Ï:Ô8ÎJÏ ÒHÏ í@ÏOÕ6Ë Ñ ü@ý8þ ÿ)Ð��sñ Ï Ñ Ú8Ë^ÌBÍHî@æ8Ë ÒBË Ú%Ë^Ô8ÎJÏ:Í�Õ6Ë Ú)ËJÒHÏË^ÓHÙHÚ8ÑOÕYØ:ÙBÑHÖBØ^Ù8Ï�ÕXçsÑHÖ%ËtÕ�ÑHÔ)Û^Ù@ÖBÑ�Õ�Ï:Ô8ÎOÕ/Ï>þ��,Ï��3ý)þ��ãâïdÙ8ÎtÕmË ÏBÜJÏ3Ð^Ú8ÖBË ÒHÏ ÌBÍHÌ8ÎJÏ8ÐHÑ Ñ:Ô8ÑHÖBàHÛ^ÍBÓ)Ë å Ë ÎJÏ�Õ6Ð��HÐHÏBÎOÕ6Ë ÒHÏ ÐJÏ�Õ=Ó���Õ/Í8ËèâÊHÏ:ÌHÌ8Ï Ñ@Ú@ÑOÕ6ÏHÖ@ñ8Ëìê�Ñ Î:ÏBÐ^Ú8ÏOÕ/Ñ3Î:Ù�Õ/Ñ ÒBË ÑBÐ^×@Í8Ï:Ô8ÎJÏ Ú�ÕmËJÒ:Ù@í ç^Ñ�Õ=Í@Ñ:î8øHÏ:Ì Ô8ÑÑHÖBÎ^Ù�Õ/Ñ ÒHÏ Ù)ÐJÑ Ó8ËHÖ@ÙHÔ@Ñ ÒBÏ ÐJÏOÕ=Ó���Õ=Í)Ëìâ óBÏ ÐHÑ:Ô@Ï@Í�Õ/Ñ ÛJÏ�Õ/ÑHÖèê Ù8ÐHÑÕ/Ï:Ú�Õ6Ï:Ì@Ï:Ô)Î:Ñ:î@æBË+å-ÑBØ^Ù)ÏHÖHÑ>Ë:Ô@ÒHÏDÑ:Ì>Ø^Ù8Ñ:Ô3Î^Í@ÒBÑHÒBÏ:ÌUçsÑOÕRÍBÑBÐ�Ó)Ë:Ô8Î:ÍHÔHÙ8ÑBÐJÏ:Ô8Î@Ïèâä)Ü^ÍHÌ)ÎJÏBÐkÐ@ÙHÍ8ÎJÑHÌ,çsÑ:Ô)ÎJÑBÛHÏ:ÔBÌkÔ8ËrÙHÌ8ËkÒHÏ�ÌBÍHÌ)ÎJÏ8ÐJÑ:Ì-ÒBÍ8Û^Í8ÎJÑ8ÍHÌëê Ï:Ô8ÎtÕ/Ï8ÎJÑ:Ô)ÎHË-ËÐ^ÙHÔ@Ò3ËnÕ/ÏHÑBÖkårÚ�Õ/ÏHÒ3ËHÐJÍHÔ@Ñ@Ô8ÎHÏBÐJÏ8Ô8ÎJÏkÑ@Ô@ÑHÖBà@Û:ÍHÓ8ËìêuÚ8ËOÕmÎJÑ:Ô8ÎBËkÑ�Ù%Î^Í@Ö:Í@íBÑ:î@æ3ËkÒHÏÌHÍHÌ8ÎHÏBÐJÑ:Ì>Ò:Í8Û^Í3ÎHÑ:ÍHÌ�Õ/ÏBØ:Ù@Ï�ÕUÑ�ÍHÔHÌ@ÏOÕRî@æBËrÒHÏkÙ3Ð�ÒHÍHÌBÚ8Ë^ÌHÍ)Î:Í)çJË-ÒHÏ�Ó8Ë:Ô)çsÏOÕ6Ì@æBËÏ:Ô8ÎtÕ6Ï+Ë^Ì>ÌHÍHÌ8ÎHÏ3ÐJÑ:Ìëâò�ÌjçsÑOÕ/Í@÷3çsÏ@ÍBÌxß'Ø^Ù@ÑHÔ)Î^Í@ÒHÑHÒ3Ï:Ì@ánÝ:öHÌBÍHÓ@Ñ:Ì_Ì@æ)Ëìê+ÏBÐyÛtÕ/Ñ8Ô@ÒHÏeÐJÑHÍ)ËtÕ=Í@ÑyÔ8ÑbÌHÙ@ÑËtÕ=Í8ÛHÏBÐìê¬Ñ@Ô@ÑHÖBà@Û:ÍHÓ@Ñ:Ìãê¬Ï-ÛHÏOÕ6ÑHÖ3Ð:Ï:Ô8ÎJÏ-ÏHÖBÑ:Ì-Ì@æBË-Ñ:Ì�Ï:Ô)ÎtÕ/ÑBÒHÑ:Ì+ÏrÌ@Ñ:ö8ÒHÑ:Ì>Ø:Ù@ÏÒHÏ3çsÏ3Ð�Ì@Ï�Õ�ÐHË^ÔBÍ)ÎHËtÕ/ÑHÒ3Ñ:Ìëê¡Ë:Ú@ÏOÕ6ÑHÒBÑ:Ì�Ï�Ó3Ë^Ô8ÎOÕ6ËHÖHÑHÒBÑ:Ì+Ú8Ë�Õ£Ù)ÐrÌBÍHÌ8ÎHÏBÐJÑèâ8ÑOÕ/ÑwÌ@ÏÞÎ^Í�ÕRÑOÕnÚ�Õ6Ë8çsÏ:Í8ÎBËvÒHÑ:ÌbÎ:å:ÓHÔHÍHÓ8Ñ:ÌhÒ:Í3Û:Í8ÎJÑ:ÍBÌÞØ^Ù8Ñ:Ô8ÒBËvÖ:Í@ÒBÑBÐHË^ÌhÓ8ËBÐÏ:Ô8ÎtÕ6ÑHÒHÑ:ÌDÏrÌ@Ñ@ö8ÒHÑ:Ì�Ñ8Ô@ÑHÖBà@Û:ÍHÓ@Ñ@Ìãê ÎtÕ/û@Ì+ÏBÎJÑ@Ú@Ñ@Ì�ÒBÏ3çsÏ3ÐkÌ@ÏOÕXÏBÜHÏ:ÓHÙ)ÎJÑHÒHÑ:Ì¢ôüëâ HË^Ô)ç^ÏOÕ6ÎJÏ�Õ Ë �6Ð^ÙHÔ@Ò3Ë Õ/ÏHÑHÖ�� ÒBÑ:Ì Ï:Ô)ÎtÕ6ÑHÒHÑ:Ì Ñ@Ô@ÑHÖ3àHÛ:ÍHÓ@Ñ:Ì ÚBÑOÕ/Ñ ÑÝBËtÕ6ÐHÑ-Ò:Í)ÛJÍ8ÎJÑHÖùâ â �Õ6Ë^ÓBÏ:ÌHÌ@Ñ�Õ�ß'Ë^ÙUË^Ú@ÏOÕ/Ñ�Õ/á-Ñ>ÍHÔ@Ý3Ë�Õ6ÐJÑ:î@æ3Ë-Ò:Í8Û:Í8ÎHÑHÖèâ�tâ HË^Ô)ç^ÏOÕ6ÎJÏ�ÕkÑ:ÌjÌ@Ñ@ö@ÒBÑ:ÌcÒ:Í1Û^Í8ÎJÑ:Í8ÌaÒBÏjçBËJÖBÎJÑcÚ@Ñ�Õ/Ñ�ËeÐ:Ù@Ô@ÒBËwÕRÏBÑBÖèê,ÏBÐÌHÙ@Ñ+ÝBËtÕ6ÐHÑ�Ñ:Ô@ÑBÖ3àHÛ^ÍHÓ@Ñ¢â

Page 8: Logica Programacao Aplicada V2.2008

8

HËHÐHË��@÷bÝ3Ë^ÍnÏBÜJÚ)Ë^Ì8ÎHËèê+ÏHÌ8ÎJÑnÓ8Ë^Ô1çsÏOÕ=Ì@æ)Ëbå�Õ/ÏHÑHÖ:Í)íHÑHÒHÑyÚ8Ë�Õ�ÏBØ^ÙHÍHÚ8ÑBÐJÏHÔ)ÎHË^ÌÓ8Ë^ÔHñ8Ï:ÓHÍ@Ò3ËJÌ Ó8ËHÐHË Ó)Ë:Ô)çsÏOÕ/Ì)ËtÕ/Ï@Ì Ñ:Ô8ÑHÖBàHÛJÍHÓ)Ëdð8Ò@Í8Û:Í8ÎJÑ@ÍHÌ ß ò�óHá Ï ÒHÍ8Û^Í8ÎHÑHÖ^ðÑ:Ô@ÑHÖ3àHÛ^ÍHÓ)ËJÌ ß'ó1ò�áùê ÒHÏ:Ú@Ï@Ô8ÒHÏ:ÔBÒ3Ë ÒBË Ö3ÑHÒBË Ò@Ï Ë^Ô8ÒHÏ Ë Ò:ÍBÌHÚ8Ë:ÌHÍ8Î^Í1çHË åÍHÔHÌ8ÎHÑHÖHÑHÒ3Ë âÊBË^Ì ÌHÍ@Ì8ÎHÏBÐJÑ:Ì Ò:Í8ÛJÍ)ÎJÑ:ÍHÌãê_Ë^Ì ÌHÍHÔ8Ñ:ÍBÌ ÎtÕ/Ñ3ÎJÑBÒBË^Ì Ì@æBË Ó8Ë^Ô@Ì)Î:Í8Î^ÙHö@Ò3Ë^Ì Ú8ËtÕÌ@ÏBØ��8û:ÔHÓHÍ8ÑHÌrÔHÙ3ÐHåOÕ=ÍHÓ8Ñ:Ì�Ïèê¬Ñ�Ó1ËJÒ:Í@Ý:ÍBÓ@Ñ:îBæ3ËQÒHÏ:Ì1ÎJÑ:Ì-Ì@ÏBØ��@û@ÔHÓHÍBÑ@Ì�åkÝBÏ:Í8ÎJÑrÔ8ÑÖ:ÍHÔ8Û:Ù@ÑBÛJÏ3Ðw×HÍHÔ@÷�ÕRÍ@Ñèâ�ä)ÖBÑhåwÓBñ@ÑBÐHÑHÒHÑw×BÍBÔ@÷OÕ=Í8ÑÞÚ8ËtÕ6ØJÙ8ÏwÔ@ÏHÖHÑ�Ì8àxñ@÷ÞÒ8Ë^ÍBÌÎ^ÍHÚ8Ë:Ì-Ú8Ë:Ì@ÌHö)çsÏ@ÍBÌ�ÒHÏ>ÌHö8Ð^×3ËHÖBË^Ìãô Ë�ÌHö)Ð^×3ËJÖBË��/þ��UÏ+Ë-ÌHö8Ð^×)ËHÖBË��3ü��tâÊBË^Ì Ð^ÍBÓ�Õ6Ë^Ó)Ë@Ð^ÚHÙ8ÎHÑBÒBËtÕ/Ï:Ì Ø@ÙBÏ Ù8Î^Í@Ö@Í@íHÑBÐBË:Ì Ô@Ñ:Ì Ô8Ë:Ì@Ì@Ñ@Ì Ó@Ñ:Ì8Ñ:Ì ÏÏ:ÌHÓ�ÕRÍ8ÎHàtÕRÍ3Ë^Ìëê Ï:ÔBÓ8Ë:Ô8ÎtÕ/Ñ3ÐBË^Ì Î:Ï:Ó@ÖHÑBÒBË^Ì Ø:Ù@Ï Ó8Ë^Ô8ÎBåBÐ Ë^Ì Ó3àJÒ:Í8ÛBË^Ì Ø^Ù8ÏÙ8Î^Í@Ö@Í@íHÑBÐBËJÌ ÔBÑ Ö:Í@Ô8Û^Ù@Ñ3ÛHÏBÐ Ï:ÌHÓ�Õ=Í)ÎJÑ ßRÖHÏ8ÎtÕ6Ñ:Ìëê Ô��8ÐHÏ�Õ6Ë^Ìëê Ë^Ú@Ï�Õ/ÑHÒBËOÕ/Ï:ÌÐJÑBÎJÏ3ÐJ÷BÎ^ÍBÓ3Ë^Ìëê�Ï3Î:ÓëâIáèâ��HÔ8ÎJÏOÕ6Ô@Ñ3ÐJÏ:Ô)ÎJÏèê�ÏBÔ8ÎtÕ/ÏBÎHÑ@Ô8ÎHËìêkË^ÌxÓ8Ë@Ð:ÚBÙ8ÎJÑBÒBËtÕ/Ï:ÌhÌ8àÕ/Ï:Ó8Ë:ÔHñ@Ï:Ó8Ï8ÐaÑ�Ö:ÍHÔ1Û^Ù@ÑBÛJÏ)Ðe×BÍHÔ8÷�Õ=ÍBÑèâ¬ò^ËeÌ8Ï�Ú�Õ/Ï:ÌBÌHÍ)Ë^Ô@Ñ�Õ+ÑqÖHÏBÎOÕ/Ñ��'ò���ê£Ú8ËtÕÏBÜJÏBÐ:Ú@ÖBËìê�Ù8ÐcÚ�Õ6ËHÛ�Õ/ÑBÐJÑ�ÒHÏHÔ)ÎtÕ6Ë�ÒBËcÓ8ËHÐ^Ú@Ù8ÎJÑBÒBËOÕ-Ñ@ÌHÌ)Ë^ÓHÍBÑ�ËcÌHÍ3Ô@ÑHÖ�ÏBÐ^Í8ÎJÍ8ÒBËÚ@ÏHÖHÑ+ÎJÏ:Ó@ÖBÑkÑrÙ)ÐJÑrÌ@ÏBØ��8ûHÔHÓHÍ@Ñ�ÔHÙ8ÐJå�Õ=ÍHÓ@Ñ+Ø:Ù@ÏrÓ8ËtÕHÕ6ÏHÌHÚ8Ë^Ô8ÒBÏèêXÍ3Ô8ÎJÏOÕ=Ô8ÑBÐJÏHÔ)ÎJÏèê� ÖHÏBÎtÕ/Ñ��Kò��tâUï�Ó8àHÒ:Í)ÛHËbÙ8Î^Í8Ö8Í@íHÑHÒBËbÚ8ÏHÖBËbÓ8ËBÐ:ÚHÙ8ÎJÑBÒ3ËtÕ�Ú@ÑOÕ/ÑaÑ:ÌBÌ8Ë^ÓHÍ8ÑOÕkË^ÌÌHÍHÔ@Ñ@ÍHÌ�ÒBÑÞÔ8ËJÌBÌ@Ñ�Ö:öHÔ1Û^Ù@Ñ�Ï:Ì8Ó�Õ=Í8ÎJÑ � ÌbÌ@ÏBØ��8ûHÔHÓHÍ@Ñ@ÌyÒHÏ��1þ��=ÌbÏ��3ü��3ÌnØ:Ù@ÏÏHÖHÏ�Õ/Ï:Ó8Ë:Ô@ñ@Ï:Ó@ÏDå-ÒHÏ:Ô1ËHÐ^ÍHÔBÑBÒBË�BàJÒ:Í8ÛHËUò õ ����ëâÊBËkÐ:ÙHÔ@ÒBËrñHÙ8ÐJÑ@Ô3ËìêuÑHÌ>Ø^Ù8Ñ:Ô8Î^Í8Ò3ÑHÒHÏ:Ì-Ì@æBË�ÎtÕ/ÑBÎJÑ3ÒHÑ:Ì�Ï-Ï:ÌHÓ�Õ=Í8ÎHÑHÌ-Ô8Ë�ÌHÍHÌ8ÎHÏ3ÐJÑÒHÏ:ÓHÍ)ÐJÑHÖèâ � Í8Ð^Ú1ËtÕ6ÎJÑHÔ)ÎJÏèê Ú8ËOÕ ÍBÌHÌ8Ëìê Ó8Ë^ÔHñ8Ï:Ó8ÏOÕ6Ð@Ë^Ì Ë^Ì Ì@ÍHÌ8ÎHÏBÐJÑ:Ì ÒHÏÔHÙ8ÐJÏ�Õ/Ñ:î@æ3ËrÏ-Ý3ËOÕ6ÐJÑ-Ò3ÏrÓ8ËJÔ1çsÏOÕmÎHÏOÕ�ÒHÑBÒBËJÌ�Ï@Ô8ÎOÕ/Ï+ÏHÖHÏ@Ìùâ

±³² �!6ºKÃƺp¶Æ¶ µ·Çm½IÇKº:ÇKº�"»º$#%" ºg¶IºI¾I¸É½'&)(KÅHÇmºJ¾+*K¼tº+" Åp¶@ºg¼�Å',I¸-" ½g¶/.p½I¶ÆºI¶)01@ÏBÛ^ÍBÌ8ÎtÕ6Ë:Ì ñHÍBÌ8ÎHàOÕ=Í@Ó8Ë^Ì Ô8Ë:Ì ÐBË^Ì8ÎtÕ/Ñ3Ð Ø:Ù8Ï Ñ:Ì Ú�Õ=Í3ÐHÏ:Í�Õ/Ñ@Ì Ú�Õ/÷BÎ^ÍHÓ8Ñ:Ì ÒBÏÓ8Ë^Ô8ÎHÑBÛJÏBÐ Ï@Ì8ÎJÑ3çHÑBÐ Ö:Í3ÛHÑHÒHÑ:ÌvÑ3Ë Ú@Ñ@Ì8ÎHËtÕ/Ï8Í8Ë 2mü/3ãâkò�Ö3Û^ÙBÔHÌÞçsÏ@Ì8Î^ö)Û^Í8Ë^Ì�Ô)Ë^ÌÐHË^Ì8ÎOÕ/ÑBÐkØ@Ù@Ï-Ë:ÌkÚ8Ñ:Ì3ÎHËtÕ/Ï@Ì-Ó8Ë^Ô1ÎtÕ6ËJÖHÑ%çsÑBÐkÌ@Ï:ÙHÌ�Õ6Ï:×@Ñ@ÔHñ8Ë:Ì-ÙHÌ@Ñ:Ô8Ò8ËrÐHËJÔ8ÎJÏ:Ì>ÒHÏÚ@ÏHÒOÕ6Ñ:ÌëâkòsË Ì8ËJÖ3ÎJÑOÕ_Ë:Ì Ñ:ÔHÍ)ÐHÑ@ÍHÌëê�Ë Ú@Ñ:Ì)ÎHËOÕÞÌ8Ï@Ú@ÑOÕRÑ3çsÑ Ù)ÐJÑ Ú@ÏBÒOÕ/Ñ Ú8ÑOÕ/ÑÓ@ÑHÒHÑrÙ8Ðìâ54dÙ@Ñ:Ô3ÒBËrËcÕ/Ï:×@Ñ@ÔHñ)ËnÕmÏBÎHËtÕ=Ô8Ñ3çsÑëê ËQÚBÑ@Ì8ÎHËtÕ+Õ/ÏBÎ^Í�Õ6Ñ3çsÑ�ÒBËrÐ@Ë^Ô8ÎHÏ-ÒHÏÚ@ÏHÒOÕ6Ñ Ù3ÐJÑ Ú@ÑOÕ6Ñ ÓBÑHÒHÑ Ñ:ÔHÍ)ÐHÑ@Ö Ø^Ù@Ï Ú8Ñ:ÌHÌBÑ3çJÑèâ õ Ï Ì3Ë^×�Õ/Ñ:ÌBÌ8Ï3Ð Ú@ÏHÒ�Õ/Ñ@ÌëêÝHÑHÖBÎHÑ3çsÑBÐjÑ:ÔHÍ3ÐHÑ:ÍHÌ76£Ì@ÏjÝHÑ3ÖBÎJÑ:Ì@Ì8ÏBÐeÚ@ÏHÒ�Õ/Ñ@Ìëê�ËhÕ6Ï:×@ÑHÔHñ)Ë_ñ)Ñ3çdÍ@Ñ�Ñ:Ù8ÐHÏ:Ô8Î:ÑBÒBËìâúBÐJÑ Ï3çdÍ@ÒBû:ÔHÓ@Í@Ñ ÒHÏ@ÌHÌ@Ñ Ú�Õ/÷BÎHÍHÓ8Ñ Ï:Ì8ÎJ÷ Ô@Ñ Ú�Õ6àJÚ�Õ=Í@Ñ ËtÕ=Í)ÛHÏBÐ ÒHÑ Ú@ÑHÖHÑ3çtÕ/ÑÓ@÷HÖ:ÓBÙ@ÖBËcß6ÒBËkÖBÑ3Î^Í8Ð�8:9<;$8>=?;@=�ACB¬Ø^Ù@ÏrÌBÍ8ÛJÔHÍ@Ý@ÍHÓ8ÑrÚ8ÏHÒOÕ6Ñ@áèâ)ËJÒHÏrÚ@ÑOÕ6Ï@Ó@ÏOÕ�ÏHÌ8ÎtÕ/Ñ@ÔBñ8ËQÑ3Ë^Ì-Ô1Ë^ÌHÌ8Ë^Ì>ËJÖHñ)Ë^ÌkÙ8ÐBÑkÒHÏBÝ:ÍBÓHÍ@û@ÔHÓ@Í@Ñ+ÒHÏ�Ô)Ë^î@æBË-ÒHÏØ^Ù@Ñ:Ô)Î^Í@ÒHÑBÒ@Ïèê�Ô8Ï:ÌHÌ@Ñ Ú�Õ6Ë:Ú)ËtÕ=î@æ3Ë ê�Ò3Ë ñ8Ë@ÐJÏBÐ Ú�Õ=Í)Ð^Í3Î^Í)çHËìê_ÐHÑHÌ ÎJÏBÐBË:Ì Ø^Ù@ÏÓ8Ë^ÔHÌBÍ@ÒHÏOÕ6Ñ�Õ Ø^Ù@Ï Ô8Ë^ÌHÌ@Ñ ÓBÙ@ÖBÎ:Ù�Õ/Ñ ñ8Ë��HÏ å ÍBÔ@Ý:ÍHÔ3Í8ÎJÑ3ÐJÏHÔ8ÎJÏ ÐHÑ:ÍHÌÒHÏ:Ì@Ï@Ô)çJËJÖ%çsÍ@ÒHÑ�Ø^Ù@Ï�ÑjÓBÙ@ÖBÎ^Ù�Õ/Ñqñ@Ù8ÐJÑ:Ô8Ñ�ÒHÏ�Ó8ÏHÔ8ÎJÏ:Ô8Ñ@Ì�ÒBÏ�Ð^Í3Ö:ñ@Ñ�Õ/Ï@Ì�ÒBÏ�Ñ@Ô8Ë^ÌÑBÎtÕ/÷@Ìëâ ò Ú@Ï�Õ=Ó8Ï:ÚHî8æBË Ò3Ï ØJÙ@Ñ:Ô8Î:Í@ÒHÑHÒBÏ Ú8ÏBÖBË ñ3ËHÐHÏBÐ Ú�Õ=Í)Ð:Í8Î^Í)ç:Ë ÏOÕ/ÑÚ�Õ/ÑBÎ:ÍHÓ@ÑBÐHÏHÔ8ÎJÏ ÍHÔ8Î^Ù3Í8Î^Í)çsÑãêwÓ8ËBÐHË Ñ Ò3Ë^Ì Ñ@ÔHÍ8ÐJÑHÍHÌëâaò Ó)Ë^Ô8ÎHÑBÛHÏBÐ Ú@ÑOÕ/Ñ Ëñ8ËHÐJÏ3ÐvÏOÕ/Ñùô�Ù)ÐìêQÒ3Ë^ÍBÌÞÏ�Ð:ÙHÍ)Î@Ë^ÌëêrËJÙÞÌ@Ï/�HÑùêQÑhÚ@Ñ�Õ6Î:Í�ÕaÒBÏÞÙ)ÐhÛtÕ=ÙHÚ)ËhÒHÏÎtÕ/û:Ì Ë:Ù Ø:Ù8ÑBÎtÕmË ËJ×/�HÏBÎBË:ÌëêxË ñ8ËHÐJÏ3Ð Ò:Í@íHÍ@Ñ Ì3Í8Ð^Ú@ÖHÏ@Ì3ÐJÏ:Ô)ÎJÏ Ø^Ù@Ï ñ@Ñ%çdÍ@ÑÐ^ÙHÍ8ÎBË^Ì>Ë:×��HÏBÎHË:Ì+Ô@Ï:ÌHÌ)Ï+ÛtÕ/ÙBÚ8ËìâóHÏ:Ú8Ë:ÍHÌ ÒHÏ:ÌBÌ@Ñ Ú�Õ=Í)ÐJÏ@Í�Õ/Ñ Ô)Ë^îBæBË ÒBÏ Ø:Ù@Ñ:Ô)Î^Í@Ò@ÑBÒHÏ Ì@Ù�ÕmÛ^ÍHÙ Ñ ÔHÙ3ÐJÏOÕ6Ñ:î8æBËÏ:ÌHÓ�ÕRÍ8ÎJÑèê ÒBË ÒHÏ8Ì@Ï��BË Ò@Ï ÐBÑ:Ô8ÎJÏOÕ ËJÌ Õ/ÏBÛ^ÍHÌ1ÎtÕ6Ë^Ì Ø:Ù8Ï Ñ@Ô8ÎJÏ:Ì Ï�Õ6ÑBÐÌHÍ8Ð^×)ËJÖ:Í@íBÑ@ÒBË^Ì Ú@ÏHÖHÑ8Ì Ú@ÏBÒOÕ/Ñ:ÌùêÞÙ8ÐHÑ çJÏHí Ø:Ù@Ï Ï:Ì8ÎJÑ:Ì Ì@Ï Ú@Ï�Õ/Ò:Í@ÑBÐèêhÏ�Õ/ÑBÐÒ:Í@Ý:öBÓ@Ï:ÍHÌ�ÒBÏ�Ó8ÑOÕHÕ/Ï8ÛHÑOÕ�Ë:ÙcÕ/Ï@ÚsÕ/Ï:Ì@Ï:Ô)ÎJÑ3ç^Ñ3Ð�Ù8ÐJÑ-Ò:Í8Ý@ÍHÓHÙ@ÖBÒBÑHÒHÏrÚBÑOÕ/ÑrÔ��8ÐJÏ�ÕmË^ÌÐ^ÙHÍ8ÎBË ÛtÕ6Ñ:Ô@Ò@Ï:Ìãâxä3ÌHÌ@Ñ ÔHÙ8ÐJÏ�Õ/Ñ@î@æBË Ï:ÌBÓ�Õ=Í8ÎJÑ ÏOÕRÑ ÝHÏ8Í8ÎJÑ Ó8ËHÐ ÐJÑOÕRÓ@Ñ:Ì ÏBÐÐJÑHÒHÏ@Í�Õ/Ñ:ÌnË^Ù_Ø:Ù8ÑHÖBØ:Ù@Ï�ÕqË^Ù8ÎOÕ6Ë_Ë^×/�HÏ3ÎHË�Ø^Ù@Ï�Ú)Ë^ÌHÌHÍB×BÍ@Ö:Í8Î@Ñ:ÌHÌ@Ï_Ñ_ÐJÑ�Õ=Ó@Ñ:î8æBËìâäBÌHÌ@ÑhÐJÑOÕ=Ó@Ñ8î@æBËìêqÑ�Ú�ÕmË^Ú)à^ÌHÍ8Î@Ëùê�åvÎJæ3ËxË^ÙwÐHÑ:ÍHÌvÑHÔ)Î^Í8ÛJÑÞØ^ÙBÏxÑxÚ�Õ6à^Ú�Õ=Í@ÑÏ:ÌHÓ�ÕRÍ8ÎJÑèâ ÊHæBËkÌ@ÏrÒ@Ï@ÌHÓ@ÑOÕmÎHÑkÑDÎJÏ:Ì@Ï-ÒHÏ+Ø:Ù@Ï+ËaÕ/Ï8Û^ÍBÌ8ÎtÕ6Ë-ÒHÏrÔ>�8ÐJÏOÕ6ËJÌ>ÎJÏ@ÔHñ@ÑÌHÙ8ÛJÏ�Õ=Í@ÒBË>ËaÕ/Ï3Û:ÍHÌ8ÎtÕ6Ë+ÒHÏ-Ì)Ë^ÔHÌãâ

Page 9: Logica Programacao Aplicada V2.2008

9

ïdÌhÚ�Õ=Í)ÐJÏ@Í�ÕmËxÌHÍHÌ)Î:ÏBÐJÑ:Ì�ÒHÏ�Ï:ÌBÓ�Õ=Í)ÎJÑwÔHÙ)ÐHåOÕ=ÍHÓ8ÑbØ^Ù@ÏwÌ@Ï�Ó8Ë^ÔHñBÏ@Ó@ÏBÐxÌ@æ3Ë�Ë^ÌÒBË^Ì�ÏBÛ^öBÚHÓBÍ8Ë^Ì+Ï�Ë^Ì+ÒBË^Ì+ÌHÙ8ÐJåOÕ'Í8Ë^ÌëêuÌHÙ�Õ6ÛJÍ@ÒBË^Ì+Ú8ËtÕuçJËJÖBÎHÑ-ÒHÏ���D1þHþkÑèâEìâ ïdÌÌHÍHÌ8ÎHÏBÐJÑ:ÌbÌ@æ)ËÞÌ@ÏBÐJÏBÖ:ñ8Ñ:Ô8Î:Ï:Ìëô+ÑBÐ^×)Ë^ÌyÑBÎtÕ/ÍH×BÙ@ÏBÐÞÌBö8Ð^×)ËJÖ8Ë^ÌyÑBË:ÌbÔ��8ÐJÏOÕ6ËJÌbüëêü8þìêuü8þHþèêuü8þHþBþkÏBÎ^Óùâ¬Ï-ÝBÑHíHÏBÐ+ÑaÕ/Ï@Ú�Õ/Ï@Ì@ÏHÔ8ÎJÑ:î8æ3ËQÒBË:Ì>Ë^Ù)ÎOÕ6Ë^Ì-Ó3ËHÐHË�Ì@Ï@Ô@ÒBËkÑÌ8ËHÐJÑ�ÒBÏ:ÌBÌ@Ï:ÌGF%Ú�Õ=ÍHÔBÓHÍBÚ@Ñ:ÍBÌ�F�â�äBÔ)ÎJæBË�ËÞÔ��)ÐJÏOÕ'Ë ��DIH�ÏOÕ/Ñ�Ñ�Ì)Ë@ÐJÑ�ÒHÏbÎOÕ6û:ÌÓ@Ï:ÔHÌãêuÓHÍBÔ@Ó8Ë�ÓBÍBÔ8Ø��@Ï:Ô1ÎJÑ:Ì+ÏDØ^Ù8Ñ3ÎtÕ6Ë�ÙBÔHÌùâóHÏ:Ú8Ë:ÍHÌÞÒ3Ë^ÌhÌBö8Ð^×)ËJÖ8Ë^Ìëê+çsÏ@Í8ËhÑwÍ@ÒBå:Í@ÑhÒBÏ Õ/Ï:Ú�Õ6Ï@Ì@Ï:Ô8ÎJÑ�Õ�Ë^Ì�Ô��3ÐJÏOÕ6Ë^ÌbÓ8ËHÐÖHÏBÎtÕ6Ñ:Ìëâ¬ú@Ì@ÑHÒBËkÚ@ÏHÖBË:Ì-Ú8ËBçHË^Ì-ñ)Ï:×�Õ/Ñ:Í@Ó8ËkÏ+ÛtÕ/ÏBÛ3Ëìê¬ÎHÑHÖrÌHÍBÌ8ÎJÏ3Ð:Ñ-ÒHÏ:Ù>ËtÕ=Í)ÛHÏBÐÑBË�ÌBÍHÌ8ÎHÏBÐHÑjÕ6Ë@ÐJÑ:Ô8Ë+Ë^Ô@ÒBÏ+Ë^Ì-Ô>�8ÐJÏOÕ6ËJÌ-üëêJDOêXü)þìêJD/þìêuü8þBþìêJD/þ@þìê«ü3þHþBþ�Ì@æ3ËÕ/Ï:Ú�Õ6Ï:Ì@Ï:Ô)Î:ÑHÒBË^ÌeÚ@Ï8ÖHÑ:ÌaÖHÏBÎOÕRÑ:ÌK�ëêML êMN êPOãêQèê+óëêSRìêqÕ/Ï:ÌHÚ)Ï@Ó8Î^Í)ç^ÑBÐJÏ:Ô)ÎHÏèâT@Ñ:Ì@ÏBÑHÒBË^ÌyÏBÐhÚ�ÕRÍHÔHÓBöHÚBÍ8Ë^Ì�Ú�Õ/Ñ3Î^ÍHÓ8ÑBÐJÏ:Ô)Î:Ï�Í8Û^Ù@Ñ@ÍHÌyÑBË�ÒBËhÌBÍBÌ)ÎJÏBÐHÑ�ÌHÙ8ÐJå�Õ=Í)ËË^ÙcÏBÛ^öHÚBÓHÍ8Ëìê,ÑaÒ:Í@ÝBÏOÕ6Ï:ÔHî8ÑjÐJÑ@ÍHÌaÔ8ËHÎH÷3çsÏHÖaåjØ^Ù@ÏjËnÌHÍ@Ì8ÎJÏBÐHÑhÕmËHÐJÑ:Ô8ËnÑBÖHåBÐÒHÏ Ì8ËHÐJÑ Ò3Ë^Ì Ô��)ÐJÏOÕmË^Ì F%Ú�Õ=ÍBÔ@ÓHÍHÚ@Ñ@ÍHÌ�F Ù8ÎJÍ8Ö:Í@íHÑ%çJÑ ÎHÑBÐ^×@å3Ð Ñ Ò:Í8ÝHÏOÕ/ÏHÔHî8ÑÒHÏ:Ì8ÎHÏ:ÌyÚ@ÑOÕ6ÑxÕ6Ï:Ú�Õ/ÏHÌ8Ï:Ô8ÎJÑOÕ�ËHÌjË^Ù8ÎtÕ6Ë:ÌyÔ��8ÐJÏ�ÕmË^ÌëâU)ËOÕ�Ï3ÜJÏBÐ^ÚBÖ3ËìôDË�Ô��8ÐHÏOÕ6ËH�H ÏOÕ/Ñ Õ/Ï@Ú�Õ/Ï:Ì@ÏHÔ)ÎJÑHÒBË Ó8ËHÐ3Ë Ì@Ï@Ô@ÒBË Ø^Ù@ÍHÔBñ@Ï:Ô)ÎHË:Ì ÐHÏ@Ô8Ë^Ì Ó@ÏBÐèê ÐHÑ:ÍHÌÓHÍHÔ8Ø��@Ï:Ô8ÎHÑ>ÐJÏ:Ô)Ë:Ì�ÒHÏHíEÐJÑ:Í@Ì+Ù8Ðèê ÐJÑ:ÍHÌ+Ù3ÐìâÊBËHÎJÑ:ðBÌ@Ï Ø^Ù8Ï ÔBÏ:Ì8ÎJÏ:Ì Ì3ÍHÌ)ÎJÏBÐHÑ:Ì ÏBÜ^ÍHÌ%ÎJÏBÐ Ë^Ì Ô��)ÐHÏOÕmË^Ì Ó@ñ@ÑBÐJÑBÒBË:Ì�3Ú�Õ=ÍBÔHÓHÍHÚ8ÑHÍHÌ��aÏèêrÔ)ËHÎHÏ^ðBÌBÏ_ÎJÑ3Ð^×@å3Ðìê-Ñ:Ì�Ì@Ï3ÐJÏHÖ@ñ@Ñ@ÔHî@Ñ@ÌbÏ@Ô8ÎtÕ/ÏeË^ÌbÌ@ÍHÌ8ÎJÏ3ÐJÑ:ÌÌHÙ8ÐJå�Õ=Í8ËhÏhÏBÛ:öHÚHÓBÍ8ËhÏ�ËwÌHÍHÌ)Î:ÏBÐJÑ�Û�Õ/ÏBÛBË ÕmËHÐJÑ:Ô)Ëèâ-ïdÌ�Ú�Õ=Í)ÐJÏ@Í�Õ'Ë^ÌÞÙHÌ@Ñ1çsÑBÐÓ8ËHÐHË�Ì@ö8Ð^×8ËHÖ3Ë^Ì_Ú�Õ=Í@ÔBÓHÍHÚ@Ñ:Í3Ì_ÑBØ:Ù@ÏHÖBÏ:ÌnÏBØ^ÙHÍ=çsÑHÖHÏ@Ô)ÎJÏ:Ì_ÑyÙ8ÐbÒ@ÏBíèê�Ó@ÏBÐèê>Ð^Í@ÖÏBÎ^ÓëâBêQÏ:Ô)Ø^Ù8Ñ:Ô8ÎHË�Ë^ÌV�@ÖBÎJÍ8ÐBË^Ì�ÙHÌ@Ñ%çsÑBÐxÓ)ËBÐHËx×@Ñ:Ì)ÏhÒBËxÌBÍBÌ8ÎJÏBÐ:Ñ�Ñ:Ì�ÖHÏBÎ�Õ6Ñ:ÌØ^Ù@Ï Õ/Ï@Ú�Õ/Ï:Ì8Ï:Ô8ÎHÑ3ç^ÑBÐ Ë^Ì Ô��)ÐJÏ�Õ6Ë:Ì Ù8Ðìê ÓHÍBÔHÓ8Ë ê ÒBÏHíëê ÓHÍBÔ3Ø��@Ï:Ô)ÎJÑèê Ó@Ï3ÐìêØ^ÙHÍHÔBñ@Ï:Ô8ÎBËJÌëê Ð:Í8Ö-ÏBÎ^ÓtâW4dÙBÑBÖ-Ñ�Õ/ÏHÖHÑ:î8æBËrÏ:Ô)ÎtÕ6Ï-ÏBÖHÏ:Ì�Xä1çdÍ@ÒBÏ:Ô8ÎJÏ3Ð:Ï:Ô8ÎJÏ Ô@æ3Ë Ì@Ï ÎtÕ/ÑBÎJÑ ÒHÏ Ù8ÐJÑ Ó8Ë^ÍHÔBÓHÍ@ÒHû@ÔBÓHÍ@Ñ Ë ÝBÑ8ÎHË ÒBÏ ÏBÖHÏ:ÌÙ8Î^Í@Ö@Í@íHÑOÕ6Ï8Ð�Ô��8ÐJÏ�ÕmË^ÌyÓ8ËHÐHË�ÚdÕ=ÍBÔHÓHÍBÚ@Ñ:ÍHÌãâEé^ÑBÐ^Ú8Ë:ÙBÓ8ËyËbÝHÑBÎBË�ÒBÏyÙHÌ@ÑOÕ6ÏBÐyË^ÌÓHñ@ÑBÐHÑHÒBË^ÌÞÎ@ÍHÚ8Ë^ÌwÒBÏxÔ��8ÐBÏOÕ6Ë^ÌhÌ8ÏBÐJÏHÖ:ñ8Ñ:Ô)ÎJÏ:Ì ß'Ð��@Ö)Î^ÍHÚ@ÖBË@ÌwÒHÏwÒHÏBíxÚ@ÑOÕ6ÑhË^ÌÌHÙ8ÐJå�Õ=Í8Ë^Ì>ÏkÏBÛHöHÚHÓHÍ8Ë@ÌrÏ+Ð��8ÖBÎ^Í3Ú@ÖBË^Ì�ÒHÏrÓ@ÍHÔHÓ8ËrÚ@ÑOÕ/ÑDË^Ì�ÛOÕ6ÏBÛHË:Ì�ÏaÕmËHÐJÑHÔ)Ë^Ì@áÚ@ÑOÕ/Ñ�Ï:ÌHÌ8ÑjÝBÙHÔHî@æBËùâDä3ÌHÌ@Ï:Ì�Ô��8ÐBÏOÕ6Ë^ÌqÏOÕ/Ñ8ÐjË@ÌjÙ8Î:Í@Ö:Í8í@ÑHÒBË^ÌqÏ3ÐjÒHÏ:Ó8ËOÕHÕ/û:Ô8ÓHÍ@ÑÒHÑ Ó8Ë:Ô@Ý:Í8Û^ÙdÕ/Ñ:î@æBË ÒBÑ Ú�ÕRÍ8ÐHÏ:Í�Õ6Ñ ÐJ÷BØJÙHÍBÔ@Ñ ÒBÏ Ó@ÑHÖBÓHÙ@ÖHÑ�Õ ÒBË ñ8ËBÐJÏBÐÚ�Õ=Í8Ð:Í8Î^Í)çHË ô Ë^Ì,ÒHÏHÒBË:Ì>ÒHÑ:ÌEÐJæBË:Ìãâ

1.2.1 Numeração posicional e numeração não posicional

õ ÏeË�Ú�Õ6Ë^×8ÖHÏBÐHÑyÒ3Ë^Ì_Ô��8ÐJÏ�Õ6Ë^ÌeÌ@Ï�Õ/Ï@ÌHÙ8Ð^ÍHÌ3Ì@ÏyÑ:Ú@Ï:Ô)Ñ:ÌnÏBÐ Õ/Ï:ÚsÕ/Ï:Ì@Ï:Ô)ÎJ÷^ð3Ö3Ë^ÌëêØ^Ù@ÑHÖ3Ø^Ù@ÏOÕ�ÌBÍBÌ8ÎJÏBÐHÑbÌ8ÏOÕmçdÍ�Õ'Í@Ñèê+Ô@æBË�ñ8Ñ3çsÏ:Ô@Ò)Ë�Ú�Õ6Ë^×8Ö@ÏBÐJÑ_ÑHÖ3Û^Ù)ÐyÏBÐ�ÙHÌ@Ñ�ÕqÙ8ÐÌHÍHÌ8ÎHÏBÐJÑ�ËJÙQË^Ù8ÎtÕ6ËùâDä3Ô8ÎtÕ/Ï8ÎHÑ:Ô8ÎBËìê£Ó8ËBÐjËcÒHÏ@Ì@Ï@Ô)çJËHÖ3ç^Í8ÐJÏHÔ8ÎBËjÒBË�ñ8ËHÐJÏ8Ðìê�ÏHÖHÏÝBË^Í>Ë^×�Õ=Í)ÛHÑHÒBËkÑjÕ/ÏHÑ@Ö:Í8íHÑOÕ£Ó@÷BÖ8ÓHÙ@ÖBË^Ì-Ó@Ñ@ÒBÑ+çsÏHíDÐJÑ:ÍBÌ-Ó8ËHÐ:Ú@ÖHÏ3Ü@Ë:Ìëâ ï�ñ8ËHÐHÏ3ÐìêÚ�Õ=Í8ÐHÏ:Í�Õ/Ñ3Ð:Ï:Ô8ÎJÏùêwÎJÏ)çsÏ Ø^Ù@Ï Ñ@×8Ñ:Ô@ÒBË^Ô8ÑOÕ Ñ ÒBÏ:Ú@Ï:Ô8ÒBû:ÔHÓHÍ8Ñ ÒHÑ@Ì ÐJæBË^Ì Ó3ËHÐBËÐJ÷BØ^ÙBÍHÔ@Ñ ÒBÏ Ó8Ë^Ô%ÎJÑBÛJÏBÐèâ ò�Ì ÓHÍ�Õ=ÓHÙBÔHÌ8Î�YHÔHÓHÍ@Ñ@Ì ÏBÜ^Í8Û@Í@ÑBÐ ÐH÷3ØJÙHÍHÔ8Ñ:Ì ÐHÑ@ÍHÌÏHÝ:ÍHÓBÍ@Ï:Ô8ÎHÏHÌëâ õ Ù�Õ6ÛJÏèê¡Ó8ËHÐkÍBÌHÌ8Ëèê Ëk÷:×8Ñ:Ó3ËìâäBÌHÌ@Ñ+ÐJ÷BØ^Ù3ÍHÔ@ÑrÌHÙ�Õ6Û^ÍBÙkÓ8Ë3ÐHË�Ú�ÕpËJÒ:Ù8ÎHËkÒHÏrÙ)ÐQÑ@Ú@ÏOÕRÝHÏ@ÍHî8ËJÑ3ÐHÏ:Ô8ÎHË-ÒBË�Ú�Õ6Ë^Ó@ÏHÌBÌ8ËÒHÏ�Ó)Ë^Ô8ÎJÑ3ÛHÏBÐìâW4sÙ@Ñ:Ô@Ò3ËkÏOÕ/Ñ+Ë^×�Õ'Í8ÛJÑHÒBËkÑ�Ó%Ë^Ô8ÎJÑOÕTÔ��8ÐHÏOÕmË^Ì>Ð^ÙHÍ)Î@Ë-ÛtÕ/Ñ@Ô@ÒHÏ@Ìëê Ëñ8ËHÐJÏ3Ð Ù8Î^Í8Ö:Í8íHÑ3ç^Ñ Ñ Ì8ÏBÛ^Ù@ÍBÔ8ÎHÏ ÎHå:ÓHÔHÍHÓ8Ñèô Í8Ñ Ó8ËJÖ%Ë^Ó@Ñ:Ô@Ò)Ë Ú@ÏHÒ�Õ/Ñ:Ì ÔHÙ8ÐÚ@ÏBØ^Ù8Ï:Ô8ËqÐHË^Ô8ÎHÏ�Ï�Ø^Ù@ÑHÔ8ÒBËjÏ@ÌHÌ@Ï�ÓHñ@Ï3ÛJÑ%çsÑ�ÎJÏ�Õ�Ñ�ÒHÏHíqÚ@ÏHÒ�Õ6Ñ:ÌëêTÓ8ËJÖBË:Ó@Ñ3çsÑHðBÌ@ÏÙ8ÐJÑ Ú@ÏBÒ�Õ/Ñ ÔHÙ3Ð Ì8Ï3Û^ÙHÔ8ÒBË ÐHËJÔ8ÎHÏ Ï Î^Í�Õ/Ñ%çsÑ3ÐdðBÌBÏ ÎHËJÒHÑ:Ì Ñ8Ì Ú@ÏHÒOÕRÑ@Ì ÒBËÚ�Õ=Í8ÐHÏ:Í�Õ6ËvÐ3Ë^Ô8ÎJÏèâZ4dÙ8Ñ:Ô@Ò3ËvË Ì8Ï3Û^ÙHÔ@ÒBËxÓHñ@Ï3ÛJÑ%çsÑvÑwÒ@ÏHíèêqÓ8Ë@ÖBË:Ó@Ñ3çJÑ^ðBÌ@ÏwÙ8ÐHÑÚ@ÏHÒOÕ6Ñ�ÔHÙ)Ð-ÎJÏOÕ6Ó@Ï:Í�Õ6Ë+ÐHË^Ô8ÎHÏ-Ï�Ì@ÏaÕ6ÏBÎ^Í�Õ6Ñ)çsÑBÐ-ÎBËJÒHÑ:Ì>Ñ:ÌkÚ8ÏBÒOÕ/Ñ@Ì�ÒBË�Ì@ÏBÛJÙBÔ@ÒBËÐHË^Ô8ÎHÏ�ÏqÑ:ÌHÌBÍ)ÐcÚ3ËtÕDÒ:Í8Ñ:Ô8ÎHÏèâ,ä%ÌHÌ@Ï�å�Ï3ÜJÑBÎJÑ3ÐHÏ:Ô8ÎJÏQË�ÐHÏ:Ó@Ñ@ÔHÍHÌ3ÐBË�ÒBË�÷:×@Ñ@Ó8ËìêØ^Ù@Ï+ÎJÏ3çsÏ�ÌHÙ@ÑDçsÏ�Õ=Ì@æ8Ë�Ú�ÕRÍ8Ð^Í8Î:Í/çsÑ�ÙHÌ8ÑHÒHÑ-Ô8Ë�ï¢ÕRÍ@Ï:Ô8ÎHÏ�RJåHÒ@Í8Ëìê§Ì@Ù�Õ6Û^ÍBÔ@ÒBË�Ú)ËtÕçJËJÖBÎHÑ ÒBË Ì@åHÓHÙ@ÖBË ����� Ñèâ)èâyï ÍHÔHÌ)ÎtÕ=Ù8ÐHÏ:Ô8ÎHË ÝBË^Í Ñ:Ú8Ï�Õ/ÝHÏ@ÍHî)ËJÑHÒBË Ú@ÏBÖBË:ÌÓHñHÍHÔ8Ï:Ì@Ï:Ìãê§Ï+Ë�Ù8Î^Í@Ö:Í)íHÑBÐrÑ3ÎJå�ñ)Ë��HÏèâ)ËtÕ çJËJÖ3ÎHÑ Ò3Ë Ì@åHÓHÙ8ÖBË L Òèâ)ìâHê ÌBÙ�Õ6ÛJÏèê Ô@Ñ [BÔ@Ò:Í8Ñèê Ñ ÔHÙ3ÐJÏOÕ6Ñ:î8æBËÚ8Ë^ÌHÍBÓHÍ8Ë^Ô8Ñ@Ö ÒBÏ ×@Ñ@Ì@Ï ü1þìê ÙHÌ@ÑHÒBÑ ÑBÎ^Ù@ÑHÖ3ÐHÏ:Ô8ÎJÏëâ äBÌ8ÎJÏ ÌBÍBÌ8ÎJÏBÐ:Ñ ÝBË^ÍÒ:Í)çdÙ8ÖBÛJÑHÒ3Ë Ô@Ñ ä3Ù�Õ6Ë:Ú@Ñ Ï8Ð ÎBËOÕRÔ8Ë ÒBÏ \ D�Òèâ)ìâ�Ú@ÏHÖBË�ÐJÑBÎJÏ%ÐH÷BÎ^ÍHÓ3Ë ÷�Õ/Ñ@×@Ï

Page 10: Logica Programacao Aplicada V2.2008

10

RHË^ñ@Ñ3ÐJÏHÒ T@Ï:Ô RJÙHÌHÌ8Ñ òdÖ ]Hñ)Ñ_^�ÑOÕ=ÍBÌ8Ð^Íùâ )ËtÕ ÍHÌBÌ8Ë Ë ÌHÍ3Ì8ÎJÏBÐJÑ Ý:Í8Ó8Ë^ÙÓ8Ë^ÔHñ8Ï:ÓHÍ@Ò3Ë�Ó8ËHÐ@Ë�ÌHÍHÌ)ÎJÏBÐHÑrÍHÔ@ÒBË:ð8ÑOÕ/÷:×@ÍHÓ8ËèêuÚ8Ë^ÍHÌ+ÌHÙ�ÕmÛ^ÍHÙ-Ô8Ñ�[HÔ8ÒHÍ@Ñèâ¬ÊHÑ�ËJ×�Õ/ÑÒHÏ òèÕ%`sÑ@×Hñ@Ñ3ÎJÑùê ÍHÔ8Î:Í8Î:Ù@ÖHÑHÒBÑ òùÕ%`sÑ:×Hñ8ÑBÎJÍa`sÑ ß'ÒHÏ H�H�b Òèâ)èâIáùê�Ñ:Ú@ÑOÕ6Ï:Ó@Ï ÑÝOÕ/Ñ:Ì8Ï�F)Ò@Ï�Ö@Ù)ÛJÑOÕ+Ú@ÑOÕ6Ñ�Ö:Ù)ÛJÑOÕ�ê�Ó@ÑHÒHÑ�Ù8Ð�çsÑHÖBÏ�Ò8ÏHí�çJÏHíHÏ@Ì�Ë�Ú�Õ/Ï:Ó@ÏBÒHÏ:Ô3ÎHÏ�Ftâ�HÌHÌ8Ë ÌHÍ8Û^ÔBÍ@Ý@ÍHÓ@Ñ Ë Ì8ÏBÛ^ÙHÍ@Ô)ÎJÏèôeÚ)ËtÕhÏ3ÜJÏBÐ^Ú@Ö3ËìêaÎBËHÐHÏBÐHËJÌ Ë Ô/�8ÐJÏOÕmË �������tâõ ÏBÛ^ÙBÔ@ÒBËkòëÕ%`sÑ@×Hñ@Ñ3ÎJÑùêEÓ8ÑHÒ@Ñ�Ô��8ÐHÏOÕmË�çJÑHÖHÏ�ÒHÏBí�çsÏHíBÏ:ÌQËaÚ�Õ6Ï:Ó@ÏHÒ3Ï:Ô8ÎJÏèâ õ ÏHÔ8ÒBËË Ú�Õ=Í8ÐJÏ@Í�Õ6Ë Ô/�8ÐHÏOÕ6Ë Ë ÒHÑ Ò@Í�Õ/Ï@Í8ÎJÑèêvË Ì@Ï3ÛJÙHÔ@ÒBË ÑBØHÙ@ÏHÖHÏ Ø^ÙBÏ Ï@Ì8ÎJ÷ �Ï:Ì8Ø^Ù8ÏOÕ/ÒHÑ+ÒBË�ÚdÕ=Í8ÐJÏ:ÍsÕ6Ëìê¬Ë+ÎJÏOÕ'Ó@Ï:Í�Õ6Ë � ÏHÌ8Ø^Ù@Ï�Õ6ÒHÑkÒ3Ë�Ì@ÏBÛ:ÙBÔ@ÒBËrÏrÑ:Ì@ÌHÍ8ÐrÚ8ËtÕÒ:Í@Ñ:Ô)ÎJÏèê«Ë�Ø^Ù8Ñ�Õ6ÎHËjÔ��8ÐHÏOÕ6Ëc�+çJÑBÖHÏqÒHÏHí�çsÏHíHÏHÌkË�ÎJÏ�Õ=Ó8Ï:Í�ÕmËìêXØJÙ8Ï�çsÑBÖHÏQÒHÏHíçsÏHíHÏ@ÌcËeÌ@Ï3Û^ÙHÔ@Ò3Ëèê,ÏjØ:Ù@Ï�çsÑBÖBÏaÒHÏHí�çJÏBíHÏ:Ì�ËeÚ�Õ=Í8ÐHÏHÍ�Õ6ËèâP=ËOÕ6ÎJÑ:Ô)ÎHËìêEÌ@ÏjËÚ�Õ=Í8ÐHÏ:Í�Õ6Ë çJÑHÖHÏ ÎOÕ/û:Ìëê Ù)ÐJÑ çsÏ@í Ø^Ù@Ï Ô8æBË ñ8÷ Ë^Ù8ÎtÕmË Ô��)ÐJÏ�Õ6Ë Ø^ÙBÏ ËÑ:Ô8ÎJÏ@Ó@ÏHÒHÏùê�Ë Ì@Ï3Û^ÙHÔ8ÒBËxç^ÑHÖHÏwÎOÕ=ÍHÔ)ÎJÑèê�Ë ÎJÏ�Õ=Ó8Ï:Í�Õ6ËvçsÑHÖBÏxÎtÕ6ÏBíHÏ:Ô3ÎHË^Ì�ÏxËØ^Ù@ÑOÕmÎHË çsÑHÖBÏ ÎOÕ/û:Ì Ð@Í@Öèâ ésÏ%ÐHË^Ìëê Ú)ËOÕ6ÎJÑ:Ô)ÎHË ô �����/� d �fe��1þ�eC�1þ@þ�eC�/þHþBþìâ8ÏOÕ=Ó8Ï:×@Ï^ð3ÌBÏ�Ø^ÙBÏ-ÑkÔ@Ù8ÐJÏOÕ6Ñ@î@æBË-åkÒHÏ@Ô8ËHÐ^ÍHÔ3ÑHÒHÑrÚ8Ë:ÌHÍHÓBÍ8Ë^Ô8ÑHÖrÚ8ËtÕmØJÙ@ÏkÙ3ÐrÐJÏHÌ)ÐHËÔ��8ÐJÏ�Õ6Ëìê�Ô8ËxÓ8Ñ:Ì8Ë�Ë �nÑ:ÌBÌHÙ8ÐHÏ_çs÷OÕ=Í3Ë^Ì_ç^ÑHÖ3ËtÕ/Ï:Ì�ÒBÏ:Ú@Ï:Ô8ÒBÏ:Ô@ÒBËhÒ@ÑhÚ8Ë^ÌHÍ@î8æBËØ^Ù@Ï Ë:ÓHÙBÚ@Ñëâ�ï Ø^Ù)Ï Ô@æBË�Ë^Ó8ËOÕ3Õ/ÏèêeÚ)ËtÕ�ÏBÜHÏ3Ð^Ú@ÖBËèêcÔ@Ñ ÔHÙ8ÐJÏOÕmÑ@î@æBË Õ6ËHÐHÑ:Ô8ÑèêË^Ô@ÒHÏ�ËcÌHö8Ð^×%ËJÖBËgJó_N�N�Nh�����bÕ6Ï:ÚsÕ/Ï:Ì@Ï:Ô)ÎJÑqËeÔ>�8ÐJÏOÕ6Ë�Ø:ÙBÑBÎtÕ6Ë:Ó8Ï:Ô8ÎBË^ÌqÏqÎtÕ=ÍBÔ8ÎJÑÏeÎtÕ/û:ÌjieË:×HÌ@Ï�ÕmçJÏeØ^Ù@ÏnÎBËJÒ3Ë^ÌcË^ÌkNmlpÌjç^ÑHÖHÏBÐ�Í)Û:Ù@ÑHÖBÐ:Ï@Ô8ÎJÏ_ÒBÏHíyÏeË:Ìn�7lpÌçsÑHÖHÏ3ÐcÌ@Ï)Ð^Ú�Õ/ÏQÙ8Ðo6�Ì)ËHÐHÏ:Ô8ÎJÏkË�Ø:Ù@ÏQÐ^Ù@ÒHÑ�åqÑ�Ë^Ú8ÏOÕ/ÑHî@æ3Ë�Ø@Ù@Ï�Ï3ÖHÏbÕ6ÏHÑHÖ:Í3íHÑèôÌ@Ï�Ù8ÐÞÌHö3Ð:×8ËJÖBË�Ý%ËtÕ�Ï:ÌHÓ�ÕRÍ8ÎHËbÑ:Ô3ÎJÏ:ÌyÒHÏyÙ8ÐyË^Ù8ÎOÕ6Ë�ÒBÏ_Ð:Ñ:Í8ËtÕrçJÑHÖBËtÕdêrÏBÖHÏÌHÙH×8ÎOÕ/Ñ:Í�Ò3ËkË:Ù3ÎtÕ6ËkÑ+Ø^Ù@Ñ@Ô)Î^Í@ÒHÑ3ÒHÏ-Ø^Ù8ÏjÕ/ÏHÚ�Õ/Ï@Ì@Ï@Ô8ÎJÑèô ËUrÌHÙH×8ÎOÕRÑ:Í-Ò8ËkórÌ@Ï:ÙçsÑHÖBËOÕ ß_D=þHþdð3ü8þHþHáp6 Ì8Ï Ý3ËtÕ Ï:ÌHÓ�ÕRÍ8ÎHË ÒHÏ:Ú)Ë^ÍBÌ ÒHÏ Ù8Ð ÌBö8Ð^×8ËJÖ3Ë Ø^Ù@ÏÕ/Ï:Ú�Õ6Ï:Ì@Ï:Ô)Î:Ñ�Ù8ÐrçsÑ@ÖBËOÕEÐJÑ:Í8ËOÕ,Ë:Ù�Í8Û^ÙBÑHÖèêXÏHÖHÏ�Ì8ËHÐJÑQÌ@Ï:ÙrçJÑHÖ3ËtÕ,Ñ�çsÑBÖBËOÕ>ÒBËË^Ù8ÎtÕmËeßqHBþ@þ�edü8þ>e^ü8þ�edü8þ:edüaedü:e^ü@áèâòÞÔBÙ8ÐJÏOÕ6Ñ@î@æBËeÚ3Ë^ÌBÍHÓHÍ)Ë^Ô8ÑHÖ�ÌHÍ8Û^Ô@Í8Ý:ÍHÓ8Ë^Ù�Ù8ÐHÑjÛOÕ6Ñ:Ô@ÒHÏ�Ï3çHËJÖ:ÙBî@æ3ËeÔ)Ë_Ú�Õ6Ë^ÓBÏ@ÌHÌ8ËÒHÏrÓ8÷HÖ:ÓHÙ8Ö8Ë^Ìëê§Ú)Ë^ÍHÌ�ÏdÕ/Ñ-ÑqÕ/Ï:Ú�Õ6Ï:Ì@Ï:Ô8ÎHÑ:îBæBË-ÒBË+ÐJÏ@Ó@Ñ:ÔBÍ@Ì8ÐHË-Ò3Ë-÷:×@Ñ@Ó8Ëìâò�Ú@Ï:Ì8ÑOÕ ÒBÑ Ï)çdÍ@ÒHÏ@Ô)ÎJÏ çsÑ:Ô8ÎJÑ)ÛJÏ3Ð ÒHÑ ÑHÒBË^î@æ3Ë Ò8Ë ÌBÍHÌ8ÎJÏBÐHÑ ÒBÏ ÔHÙ3ÐJÏOÕ/Ñ@î@æBËÚ8Ë^ÌHÍBÓHÍ8Ë^Ô8Ñ@ÖèêUÏ@Ì8ÎJÏcÌ)ËJÝ�Õ/Ï:ÙQÛtÕ/ÑHÔ8ÒHÏ�Õ/Ï:ÌBÍHÌ)ÎJû:ÔHÓBÍBÑaÚ3ËOÕrÚ@ÑOÕmÎJÏjÒ3Ë:Ì�ÛBËBçsÏ�ÕRÔ8Ë^ÌÏ:Ù�Õ6Ë:Ú@Ï:ÙHÌãê Ô@æBË Ú8ËOÕ ÐHËHÎ^Í1çHË^Ì ÎJå:ÓBÔHÍHÓ3Ë:Ìëê ÐJÑHÌ Ú)ËtÕ Õ/ÑHí3ø:Ï@Ì Ú8Ë:Ö:ö8Î:ÍHÓ)ËdðÕ/ÏHÖ:Í)Û^Í8Ë^Ì)ËJÌëê�Ú8Ë^ÍBÌeË�ÌBÍHÌ8ÎJÏBÐ@ÑeÏOÕ/ÑbÙ8Ð�Ú�ÕmËJÒ:Ù8ÎBË�Ò3Ë^Ìn÷OÕ/Ñ:×3Ï:ÌjÐ^ÙHîHÙBÖBÐJÑ:Ô)Ë:ÌëâïdÌ Ó�Õ=ÍBÌ)ÎJæBË^Ì Ï@Ù�Õ6Ë:Ú@Ï@ÙHÌ Ô@æBË Ú8ËHÒ:Í@Ñ3Ð Õ/Ï@Ó)Ë^ÔHñ@ÏHÓ8ÏOÕ Ø:Ù@Ï Ù)Ð ÌHÍHÌ3ÎHÏBÐJÑÍHÔ)çsÏ@Ô8ÎJÑHÒ3Ë�Ú@ÏHÖ8Ë:Ì�ÐHË:Ù�Õ6Ë^Ì�ÝBË:ÌHÌ8Ï+ÐJÏHÖHñ8ËtÕXØ^Ù@Ï-ËrÌHÍHÌ)ÎJÏ3ÐJÑ-Ï:Ù�ÕmËJÚ8Ï:ÙëâJr1Ë^Í-Ù)ÐJÑÛtÕ/Ñ:Ô8ÒHÏkÒ:Í3ÌHÚHÙ8Î:Ñ-Ï:Ô8ÎOÕ/Ï-Ë:Ì�Ñ:×@Ñ%Ø^ÙHÍHÌ8ÎHÑ:ÌrÏBÙ�Õ6Ë^Ú@Ï8ÙHÌëê Ø^Ù@Ï-ÑBÝ:Í�Õ6ÐHÑ)çsÑBÐ-Ø^Ù@ÏrÓ)ËHÐËxÙHÌ8ËvÒ3Ëv÷@×@Ñ:Ó)Ëìê-ËxÌHÍBÌ8ÎHÏBÐJÑÞÚ)Ë^ÌHÍHÓ@Í8Ë:Ô@ÑHÖÞÔ@æBËwÌHÍ)Û^ÔHÍ8Ý:ÍBÓ@Ñ3ç^ÑhÙ3ÐJÑ�ÛtÕ/ÑBÔ@ÒHÏçsÑ:Ô8ÎHÑBÛJÏBÐèê£Ï�Ë^ÌqÑHÖBÛBËOÕ=ÍHÌ8Î:Ñ@Ì�ßIÎJÏOÕ6ÐHË�Ø^ÙBÏcÚsÕ6ËBçsåBÐjÒBÏ�ÑHÖBÛBËtÕRÍ8ÎBÐBËìê£ÝBàtÕ6Ð:Ù8ÖHÑÌHÍHÌ8ÎHÏBÐJ÷BÎ:Í@Ó@ÑHá ÷OÕ/Ñ@×8Ï:Ì Ø^Ù@Ï ÒBÏHÝHÏ@Ô@Ò:Í@ÑBÐ Ù8Ð ÌHÍ8Ì8ÎJÏBÐJÑ Ø^Ù8Ï Ú1Ë^ÌHÌHÍH×BÍ@Ö:Í3ÎHÑ3çsÑÓ@÷HÖ:ÓBÙ@ÖBË^ÌqÕ/÷:Ú@Í@Ò3Ë^Ì-Ì)ËHÐJÏ:Ô)ÎHÏ�Ó8ËBÐ-Ë�ÙBÌ3Ë�Ò@ÏrÚ@Ñ:Ú8ÏBÖkÏ+ÖH÷:ÚHÍBÌãâJ�DÓ@ÖHÑOÕ'Ë-Ø^Ù8Ï+ËÌHÍHÌ8ÎHÏBÐJÑ ÐJÑ:Í@Ì ÏHÝ:ÍBÓHÍ@Ï:Ô)ÎHÏ Ú�Õ/Ï%çsÑHÖBÏ:Ó@Ï:Ùãê�ÐJÑBÌ Ë:Ì Î^ö)Î^Ù@ÖBË:Ì ÒBÏ Ô8Ë:×�Õ/Ï:Ì ÏÚ@Ñ:Ú@Ñ@ÌëêXÚ8Ë�ÕUÏBÜHÏBÐJÚ@ÖBËèêXÓ8Ë:Ô)Î^ÍHÔHÙ)ÑBÐQÑBÎHå�ñ8Ë��@ÏkÙ3Î^Í@Ö@Í@íBÑ:Ô@ÒBË+Ë�ÌHÍ3Ì8ÎJÏBÐJÑjÕ6ËHÐ@Ñ:Ô8ËÓ8ËHÐ ÒBËBÐ s8ËHæBËtLu�ëê_Ú8Ñ:Ú@Ñ BÍ8ËtN�Nh���ëêeÚ8Ë^ÍBÌ Ï:ÌBÌ8Ï:Ì Î^ö)Î^Ù@Ö8Ë:ÌãêbÚ8ËOÕwÌ@Ï�Õ/Ï3ÐÎtÕ/ÑHÒ@ÍHÓHÍ8Ë:ÔBÑ:ÍHÌëê_Õ/Ï:ÌHÍHÌ%Î^Í�Õ/ÑBÐ � ÍHÔ)ç^Ñ:Ì@æBËxÏ ÒBËHÐJÍHÔ8Ñ:î@æ3Ë Ò3Ë ÌBÍHÌ8ÎJÏ3ÐJÑ ÍHÔ3ÒBËdðÑOÕ/÷:×BÍHÓ8ËìâïdÌ Ô��)ÐJÏOÕ6ËJÌxÌ@æBË Ñ Õ/Ï:Ú�Õ/Ï@Ì@Ï:Ô)Î:Ñ:î@æBË ÒHÑxØ:ÙBÑ:Ô8Î^Í8ÒBÑHÒHÏ Ú�Õ'Ë^Ú�ÕRÍ@Ñ3ÐJÏ:Ô)ÎJÏ Ò:Í3ÎHÑèâ)ËtÕ6ÎHÑ:Ô8ÎHËèêvL�Ï�D�Ì@æBËeÏBØJÙHÍ)çsÑHÖBÏ:Ô8ÎJÏ@Ìëâ�ïdÌaÔHÙ8ÐJÏ�Õ6Ñ:ÍHÌaÌ@æBËaË:Ìn�%Ô8ËHÐJÏ:Ì��qÒBË^ÌÔ��8ÐJÏ�Õ6Ë^Ìëê Ú)ËtÕ ÏBÜJÏ3Ð^Ú8ÖBËìô Ù)Ðìê ÒBË^ÍBÌëê ÒHÏHíùê ÎOÕ/ÏHíBÏèê Ú�Õ=Í)Ð:Ï@Í�Õ6Ëèê ÒBË:×�ÕmËìêÐJÏBÎJÑBÒHÏ ÏBÎJÓëâeävË@Ì ÑHÖBÛ@ÑOÕ=ÍHÌ)ÐBË:Ì Ì@æ3Ë Ë^Ì ÌBö8Ð^×8ËHÖ3Ë^Ì�ØJÙ8Ï Õ/Ï8Ú�Õ/Ï:Ì@ÏHÔ8ÎJÑBÐxË^ÌÔ��8ÐJÏ�Õ6Ë^Ìëâc)ËtÕbÏ3ÜJÏBÐ:Ú@Ö3Ëìôaüëê êeü��Oê þ ß6ñHÍHÔ@Ò@ÙHð8ÑOÕR÷:×HÍBÓ8Ë:Ì@áèê�OtêwJóëêgR�Rß@Õ6ËHÐHÑ:Ô8Ë^Ì8á�ÏBÎ^Óãâ8ÏOÕ=Ó8Ï:×@ÏBÐBËJÌ�Ø^Ù@ÏhË:ÌwÑHÖBÛHÑ�Õ=ÍHÌ8Ð3Ë^ÌvÌ@æBËvÝBËtÕ6ÐHÑHÒ3Ë^ÌvÚ)ËtÕ_Ù8ÐJÑhÓ3ËHÐ^Ú8Ë:ÌHÍHî@æ%Ë�ÒHÏÙ8Ðìê ÒBË^ÍBÌ Ë^Ù ÐHÑ:ÍHÌ ÌBö8Ð^×8ËJÖ%Ë:Ì Ø^Ù8Ï Ì8Ï Õ/Ï:Ú8Ï3ÎJÏBÐìâ ^ñ@ÑBÐHÑ�Õ6ÏBÐHË:Ì Ï:Ì)ÎHÏ:ÌÌHö8Ð^×)ËJÖBË^ÌxÒBË ÑHÖ3ÛJÑ�Õ=ÍHÌ)ÐHË ÒHÏGx�y{z�|{}�~��ëâc)ËtÕbÏ3ÜJÏBÐ^Ú8Ö8ËìôjË ÑHÖBÛHÑOÕRÍHÌ8ÐHË DvåÝBËtÕ6ÐHÑHÒBË Ú8Ë�ÕyÙ8Ð Ì)à Ò:ö8ÛHÍ8ÎHËìê�ÏHÔ8Ø^Ù@Ñ:Ô)ÎHËxË �%ýBü åvÝBËtÕ6ÐHÑBÒ8Ë Ú8ËOÕnØ^Ù@Ñ3ÎtÕ6ËÒ:ö8Û^Í)ÎHË^ÌëâÊBËcÌHÍHÌ)ÎJÏ8ÐJÑ�ÒHÏ�ÔBÙ8ÐJÏOÕRÑ@î@æBË�ÒHÏ:ÓBÍ3ÐJÑHÖ�ÍBÔ@ÒBË^ð8ÑOÕ6÷H×HÍHÓ8Ë�Ì@æBËèê�ÑBËqÎBËJÒ3Ëìê�Ò@ÏHí�Ë^ÌÒ:ö8Û^Í)ÎHË^Ì>Ø:Ù@Ï-Ý8ËtÕ6ÐHÑBÐ+Ë^ÌrÑ3ÖBÛJÑOÕRÍ@Ì8ÐHË^Ìãô þìê§üëê ê��têWHìêJDOêuýëê��ãê�\ãê�bp6§Ô8ËÌHÍHÌ8ÎHÏBÐJÑ+Ò@ÏrÔHÙ)ÐHÏOÕ/Ñ:î@æ%ËaÕ6Ë@ÐHÑ:Ô@Ñùê§Ì@æBËrÌ@Ï8ÎJÏèô��ãê�L ê�N ê�OãêWèê ó-Ï�Rìâ

Page 11: Logica Programacao Aplicada V2.2008

11

ÊBË�ÌBÍHÌ8ÎJÏ3ÐHÑkÒHÏrÔBÙ8ÐJÏ�Õ/Ñ@î@æBËkÒHÏ@Ó3Í8ÐJÑHÖ+Ø^Ù@Ï-ÙHÌ@ÑBÐHË@Ìkñ8Ë��HÏùê¬Ë:ÌrÑBÖ3Û:ÑOÕ=ÍHÌ)ÐHË^Ì-Ì8æBËÕ/Ï:Ú�Õ6Ï:Ì@Ï:Ô)Î:ÑHÒBË^Ì Ú@ÏHÖBÑ Ó8ËBÐ:Ú8Ë^ÌHÍBîBæBË ÒBË:Ì Ò:ö8Û:Í8ÎBË^Ìëâ�HËHÐBË Ë^Ì Ô��8ÐJÏOÕmË^Ì Ì@æBËÍHÔ@Ý:ÍBÔHÍ8ÎHË:Ìùê+Ë^ÌyÑHÖBÛHÑOÕRÍHÌ8Ð@Ë^ÌbÚ)ËJÒHÏ3ÐÞÌ@ÏOÕjÓ8ËBÐ^Ú8Ë:Ì8ÎBË^ÌbÚ8ËtÕqØ:Ù8Ñ@Ô8ÎHË:ÌbÒ:ö8Û^Í)ÎHË:ÌÒHÏ:Ì@Ï��HÑOÕ�â�Ê3Ë ÌHÍHÌ1ÎJÏBÐJÑ�ÒBÏ ÔHÙ)Ð:ÏOÕ/Ñ:î8æBË Ú8Ë@ÌHÍHÓHÍ8ËHÔ@ÑHÖ Ñ ÕRÏ:Ú�Õ6Ï:Ì8Ï:Ô8ÎHÑ:î@æBË Ú)ËtÕÑHÖBÛJÑ�Õ=ÍHÌ8ÐBËJÌ å ×@Ñ:Ì)ÎJÑ@Ô8ÎJÏ Ú�Õ/÷8Î^ÍBÓ@Ñèê Ú3Ë:ÍHÌ Ó@Ñ@ÒBÑ Ò:ö3Û^Í)ÎHË Ò3Ë ÑHÖ8ÛJÑOÕRÍHÌ)ÐHËÕ/Ï:Ú�Õ6Ï:Ì@Ï:Ô)Î:ÑrÙ8ÐHÑDØ^Ù@Ñ:Ô1Î^Í@ÒHÑ@ÒBÏèâäBÌHÌ@ÑnÒ:ÍBÌ8Î^ÍBÔHî8æBËyÏ:Ô8ÎOÕ6ÏnÏ:ÌHÌ@Ï:Ì�ÎHÏOÕ6ÐHË^Ìaå_Í8Ð:Ú8ËtÕmÎ:Ñ:Ô8ÎJÏnÚ@Ñ�ÕRÑ�Ø^Ù@Ï_Ì@ÏnÏ3ç^Í8ÎJÏÓ8Ë^Ô@Ý@ÙHÌ@æBËrÔ8ËQÏ@Ì3Î^Ù@ÒBËkÒBÑ:Ì-×@Ñ:Ì8Ï8ÌkÔHÙ8ÐHåOÕ=Í@Ó8Ñ:ÌëêXÚ1Ë^ÍHÌ>Ë^Ì>ÐJÏ@Ì8ÐHË:Ì+Ò:ö8Û^Í)ÎHË^Ì>ÎHûBÐçsÑHÖBËOÕ£ÔHÙ)Ð:åOÕ=ÍHÓ)Ë-Ò:Í@ÝHÏdÕ/Ï:Ô8Î:Ï+ÏBÐ�×@Ñ:Ì@Ï:Ì>ÒHÍ@ÝHÏ�Õ/Ï@Ô8ÎJÏ@Ìëâïd×HÌ@Ï�ÕmçsÑ:î8æ8Ëìô�Ò:ÍHÌBÌBÏBÐHË^ÌbØ^Ù@ÏhËwÌHÍHÌ8ÎJÏ3ÐJÑvÒHÏwÔHÙ8ÐHÏOÕ6Ñ:î@æBË�ÒBÏ@ÓHÍ)ÐJÑBÖhÎJÏBÐvÒHÏHíÒ:ö8Û^Í)ÎHË^Ì_Ò:Í8ÝBÏOÕ/Ï:Ô)ÎHÏ:ÌëâU)ËtÕ�Ï)ÜHÎHÏ:ÔHÌ8æBËìê�Ú8ËJÒ8ÏBÐHË^ÌnÒ@ÍBíHÏOÕ�Ø^Ù8ÏnË�ÌBÍHÌ8ÎJÏ3ÐJÑyÒHÏÔHÙ8ÐJÏ�Õ/Ñ:î@æ3ËbÚ8Ë:ÌHÍHÓHÍ%Ë^Ô@ÑHÖeÒHÏ_×@Ñ8Ì8Ïj� êEÎJÏ8Ðn�_Ò@ö)Û^Í8ÎHË^ÌeÒ8Í@ÝHÏOÕ/Ï8Ô3ÎJÏ:Ìëê>Ú)Ë^ÍHÌcËÑHÖBÛJÑ�Õ=ÍHÌ8ÐBËnØ^Ù8ÏvÕ/Ï:Ú�Õ6Ï@Ì@Ï:Ô8ÎHÑnÑ_×8Ñ:Ì@Ïeå_Ì@ÏBÐ^Ú�Õ/ÏnÝBËOÕ6ÐHÑHÒBËbÚ@ÏBÖ%Ë�Ò@ö8Û^Í8ÎBËnØ^Ù@ÏÕ/Ï:Ú�Õ6Ï:Ì@Ï:Ô)Î:ÑeËbÚ�Õ=Í8ÐJÏ@Í�Õ6ËbÔ��8ÐJÏdÕmË ß/ü@áaÐJÑ@ÍHÌjËyÒ:ö8Û^Í)ÎBËnÐJÑOÕ=Ó@Ñ3Ò8ËtÕ�ÒBËaçsÑHí@Í8Ëß'þJáèâ äBÌ)ÎJÏ Ò:ö)Û^Í)ÎHË ÐHÑOÕ=Ó@ÑHÒ)ËtÕ ÒBË çsÑHíBÍ8Ë ÎJÏ)Ð Ù8ÐHÑ ËtÕ=Í)Û:Ï3Ð ×BÑ:Ì8ÎJÑ@Ô)ÎJÏÚ8ËJÖHû3Ð^ÍHÓ@Ñ Ô8Ñ ñBÍHÌ8ÎBàtÕRÍ@Ñ ÒBÑ ÐJÑBÎJÏBÐH÷BÎ^Í@Ó8Ñèâ ä%Ð^×)ËtÕ/Ñ Ñ ÛtÕ'Ñ:Ô8ÒHÏ Í@Ô)çsÏ@ÔHî8æBËÚ�Õ/÷BÎ:ÍHÓ@Ñ ÒBË íBÏOÕ6Ë Ì@Ï��8Ñ ÑBÎ�Õ=ÍH×HÙBö@ÒHÑ ÑBË:Ì ñHÍHÔ@ÒHÙBÌëê ÒHÏ:Ì@Ï8Ô)çJËJÖ3ç^Í8ÐJÏHÔ)ÎHË^ÌÚ@ÑOÕ=ÓBÍ@Ñ:ÍHÌ�Ë^ÙQÖ:Í8Ð^Í1ÎJÑHÒBË^Ì�ÒBË�Ó8Ë:Ô@Ó@Ï:Í8ÎBËjÒHÏ�íBÏ�Õ6ËcÌ8æBË�Ï3çdÍ@ÒHÏBÔ8ÎJÏ@ÌqÏBÐQçs÷OÕRÍ8Ë^ÌË^Ù8ÎtÕmË^Ì ÌHÍHÌ8ÎHÏ3ÐJÑ:Ì ÒHÏ ÔBÙ)ÐJÏOÕ/Ñ8î@æBË Ú@ÏBÖ3Ë ÐHÏ:Ô8Ë^Ì ÎHæBË Ñ:Ô8Î^Í3ÛBË:Ì Ø^Ù@Ñ@Ô3ÎHË ËÌHÍHÌ8ÎHÏBÐJÑ�ñ@ÍHÔ@Ò:ÙãâRJÑ:Ì Ú8ËtÕ6Ø:Ù@Ï Ì8Ï Ï:Ì1Î^ÍHÚHÙ@Ö)Ë^Ù Ñ ÔHÙ8ÐHÏOÕ/Ñ:î@æ3Ë Ú8Ë@ÌHÍHÓHÍ8Ë@Ô@ÑHÖ Ô@Ñ ×8Ñ:Ì@Ï ÒHÏHí�X ïÔ��8ÐJÏ�Õ6ËaÝ3Ë^Í�Ï:Ì@Ó8ËHÖ:ñHÍ8ÒBËaÑOÕ'×HÍ8ÎtÕRÑ�Õ=Í@ÑBÐJÏ@Ô8ÎHÏèêEÌ@Ï3ÐaÒ��%ç^Í@ÒHÑjÑBÖBÛ:Ù8ÐHÑèêEÚ8ËJÍHÌ�Ô@æBËñ@÷�Ø^Ù@ÑHÖ3Ø:Ù@ÏOÕjÕRÑHíBæBË�ÎJå:ÓHÔHÍ3Ó@ÑèêTÐJÑBÎJÏ3ÐJÑBÎ^ÍBÓ8ÑBÐJÏ:Ô)Î:ÏcÝ@ÑBÖHÑ:Ô8ÒBËìê£Ú@Ñ�Õ/Ñ�ËeÔ��3ÐHÏOÕ6ËÒHÏHí�Ì@ÏOÕXÎ@ËHÐJÑHÒ3ËrÓ8ËHÐHËDË�Ô/�)ÐJÏOÕmËr×@Ñ:Ì@Ïùâ�H÷èê ÌHÍ)Ð ê Ù)ÐJÑ Õ6ÑHí@æBË Ý:öHÌHÍBÓ)ËsðBÔ8ÑBÎ^Ù�Õ/ÑBÖùê Ë^Ù Ì@Ï��3Ñèê ÏHÌHÌ@Ï ÌBÍBÌ8ÎJÏBÐ:Ñ Ø:Ù@ÏÙ8Î^Í@Ö@Í@íHÑ Ô��8ÐHÏOÕ6ËJÌ Ð��BÖ3Î^ÍHÚ@Ö3Ë^Ì ÒHÏ ÒHÏHí Ï ÒBÏ ÓHÍHÔBÓ8Ë Ó)ËHÐHË Ô>�8ÐJÏOÕ6Ë:ÌJðB×BÑ@Ì@ÏèêÑHÒBËHÎHÑHÒBËcÚBÏHÖBË:Ì�ÏBÛ@öHÚHÓHÍ)Ë^Ìùê£ÌHÙ8ÐHåOÕRÍ8Ë^ÌëêYÛtÕRÏ3ÛHË^ÌqÏbÕ6ËBÐJÑ:Ô3Ë^ÌQÎHÏBÐ�Ù8ÐJÑ�Õ/ÑHíBæBËìôË^Ì-ÓBÍHÔHÓ8Ë�ÒHÏHÒBË:Ì>ÏBÐ�Ó)ÑHÒHÑ>ÐHæBËìâóHÑHÒBË:ÌvñHÍHÌ8Î3àtÕ=ÍHÓ8Ë:ÌvÔ)Ë^ÌÞÐBË^Ì8ÎtÕmÑBÐvØ^Ù@Ï Õ/ÏHÑHÖ3ÐJÏ@Ô8ÎJÏhÑhÐJÑ:Í8ËOÕRÍ@ÑhÒHÑ@ÌÞÎtÕ=ÍB×8Ë^ÌÍHÔ@Ò:ö)ÛJÏ:Ô@Ñ@ÌbÑ3ÐJÏOÕ=ÍHÓ)Ñ:Ô@Ñ:ÌbÙ3Î^Í@Ö@Í@í3Ñ3çsÑ�Ù8ÐhÌBÍHÌ8ÎJÏBÐHÑbÒHÏ�Ó8ËJÔ)ÎJÑBÛJÏ3Ð�×BÑ:Ì@ÏHÑHÒBÑ�Ô8ËÔ��8ÐJÏ�Õ6Ë ÒHÏ ÒBÏHÒBË:Ì�ÒHÑ:ÌwÐJæBË^Ìãâ�4dÙ@Ñ@Ì@Ï �1þ:� ÒHÏHÖBÏ@Ì Ù8Î:ÍBÖ:Í@íHÑ%çJÑ3Ð Ë ÌHÍ@Ì8ÎHÏBÐJÑÒHÏ:ÓHÍ)ÐJÑHÖèê�Ë^Ù8ÎOÕ6Ë^Ìw�1þa�yÙ8Î^ÍBÖ@Í@íHÑ%çsÑ3ÐjË:ÙqËaÌHÍBÌ8ÎHÏBÐJÑ�Ø^ÙBÍ@Ô@÷OÕ=Í)Ëwßm×@Ñ:Ì@Ï�ÓHÍHÔ@Ó)ËJáË^Ù�Ë�ÌHÍHÌ)ÎJÏBÐJÑ+Ø:ÙHÍHÔ8÷OÕ/Í8Ëdð)ÒHÏ@ÓHÍ8ÐBÑHÖeß6×@Ñ:Ì@Ï+Ø^ÙHÍ@Ô@íBÏHáèê Ë:Ù8ÎtÕ6Ë:Ìk�/þ��jÙ8Î^ÍBÖ:Í@íHÑ%çJÑBÐËbÌHÍHÌ8ÎJÏ3ÐJÑn×HÍHÔB÷�Õ=Í8Ë�ß/×BÑ@Ì@ÏeÒBËJÍHÌ8á_Ï_Ì)ËHÐJÏ:Ô8ÎHÏ_ü)þa�wÙ8Î^Í8Ö:Í8íHÑ3çHÑBÐnËbÌHÍHÌ8ÎHÏBÐJÑçdÍ8ÛJÏ@ÌHÍ8ÐJÑBÖjß/×@Ñ@Ì8ÏDçdÍHÔ1ÎJÏHá�Ï�ü��rË�ÌHÍHÌ)ÎJÏ8ÐJÑDÎJÏ�Õ=Ô@÷�Õ=Í8Ëjß/×@Ñ:Ì8ÏDÎOÕ/û:Ì8áèâäBÔ8ÎtÕ6ÏBÎJÑ:Ô)Î@ËìêeÑ:ÚBÏ:Ì8ÑOÕ�ÒBË ÌBÍHÌ8ÎHÏBÐHÑ ÒHÏ@ÓHÍ8ÐJÑHÖ Ì@Ï�ÕbË Ù8Î:Í@Ö:Í@í@ÑBÒBË Ô)Ë^Ì Ò@Í@Ñ:ÌÑBÎ^Ù@Ñ@ÍHÌqØ:Ù@Ñ:Ì@ÏqØ^Ù8ÏeÙ3ÔHÍ)çsÏOÕ'Ì@ÑHÖBÐ:Ï@Ô8ÎJÏèêUå�Ú8Ë^ÌHÌBö1çsÏHÖcÚBÏOÕRÓ@Ï:×8Ï�ÕkÑ�ÍHÔ8ÝHÖ:Ù@ûHÔBÓHÍ@ÑÒHÏ-Ë:Ù8ÎtÕmË^Ì-ÌHÍBÌ3ÎJÏBÐJÑ:Ì>ÒHÏrÔBÙ8ÐJÏOÕmÑ:î@æBË�Ô8Ë�Ù@Ì8ËkÒ:Í8÷OÕ=Í)Ëìô ËkÒ@Í@Ñ-å+Ò:Í)çdÍBÒ:Í8ÒBËkÏBÐçdÍHÔ8ÎHÏ Ï Ø^Ù@Ñ3ÎtÕ6Ë ñ8ËtÕ/Ñ:Ì ßRÒ3Ë^ÍBÌ �3×@ÖBË:Ó8ËJÌ�� ÒHÏ ÒBËJíHÏ ñ3ËtÕ6Ñ:Ì@áùê�Ñ ñ8ËtÕ/Ñ åÒ:Í)çdÍ8Ò:Í@ÒHÑvÏ%Ð Ì@Ï:ÌHÌ8Ï:Ô)ÎJÑhÐ:ÍHÔHÙ8Î3Ë^ÌwÏhË^ÌbÐ^ÍHÔHÙ3ÎHË^ÌhÏBÐxÌ@Ï@ÌHÌ@Ï@Ô3ÎJÑvÌ@Ï3Û^ÙHÔ@Ò8Ë:Ì76Ô8ËHÎJÑ:ðBÌ@ÏbÑ:öbÑ�ÍBÔ@Ò:ÍBÌHÓBÙ8Î^ö%çsÏBÖyÍHÔ@ÝHÖ@Ù@û:ÔHÓ@Í8ÑbÒBËÞÌHÍHÌ8ÎHÏ8ÐJÑbÒ:Ù)ËJÒBÏ:ÓHÍ)ÐJÑHÖ ß/×8Ñ:Ì8ÏÒBËJíHÏBáèâJÑ:×@ÏvÑBØ^ÙHÍwÙ8ÐHÑ ÓHÙ�Õ=Í8Ë:ÌHÍ8ÒHÑHÒHÏëôrË Ô8ËHÐHÏwØ^Ù@ÏhË^ÌxÚ8Ë8çHË^ÌvÒHæ3Ë�ÑBË^ÌvÔ��8ÐJÏ�Õ6Ë:ÌÚ8ËJÒHÏ�ÝHÑHíBÏ�Õ�Õ/ÏHÝHÏOÕmû:ÔHÓHÍ8ÑjÑ8ËcÌHÍ3Ì8ÎJÏBÐJÑ�ÒHÏjÔHÙ1ÐJÏOÕ/Ñ:î)æBË�Ø^Ù@Ï�Ï:Ì)ÎJÏ@Ì�Ù8ÎJÍ@Ö:Í@íBÑ3Ðìâ)ËBçJË:ÌrÒHÑ�òdÐJåOÕ6ÍHÓ@ÑkÚdÕ=Í8Ð^Í8Î:Í1çsÑ+ÒHÑ3çsÑBÐ�Ú@Ñ�Õ6Ñ-Ë�ÓBÍHÔHÓ8ËèêuÚ8ËtÕYÏBÜJÏ3ÐJÚ@ÖBËìê Ë�Ô)ËHÐJÏØ^Ù@Ï ÏBØ^ÙBÍ1çsÑHÖ:ÍBÑ � Ú8ÑHÖHÑ%çãÕ6Ñ �1ÐJæBËu� Ï ÑBË ÒHÏHíùê �)Ò@Ù@Ñ@Ì ÐJæBË^Ì��tê Ø:Ù@ÏÏ3çdÍ@ÒBÏ:ÔHÓHÍ8Ñ)çsÑ Ë ÙHÌ)Ë ÒBË ÌHÍBÌ)Î:ÏBÐJÑ Ø:ÙBÍHÔ@÷�Õ=Í8Ë â ÊHÑ Ö:öBÔ3Û^Ù@Ñ ÍBÔ)ÛJÖHÏ:ÌBÑèêxË^ÌÏBØ^ÙHÍ1çsÑHÖHÏ@Ô3ÎJÏ:Ì Ñ Ë:Ô@íHÏ Ï Ò3ËJí@Ï Ì@æBËìê Õ/Ï@ÌHÚ@Ï:Ó8Î:Í%çsÑBÐJÏ@Ô)ÎJÏèê�ÏHÖBÏ)çsÏ:Ô ß/Ù8Ð ÑÐJÑ:ÍHÌ8á�Ï_Îa^�ÏHÖ)çJÏ ßRÒBË^Í3Ì�ÑbÐJÑ@Í@Ì8áèêkÒHÏ3ç^Í8ÒBËhÑBËÞÙ@Ì8ËhÒ3ËwÌHÍBÌ8ÎHÏ3ÐJÑ�Ò@Ï:ÓHÍ8ÐHÑBÖèâRJÑ:Ì ÔHÍHÌHÌ)Ë Î:ÑBÐ^×@å3Ð Ë ÌHÍHÌ8ÎHÏBÐ:Ñ ÒHÏ:ÓHÍ)ÐJÑHÖ Ì8ËJÝOÕ6Ï Í@Ô8ÝHÖ:Ù@û@ÔHÓBÍ@Ñ ÒHÏ Ë^Ù8ÎtÕmË^ÌÌHÍHÌ8ÎHÏBÐJÑ:ÌãôUÔ8Ë�ÝOÕ/Ñ8ÔHÓ@û:Ìëê�Ë�ÏBØ^ÙBÍ%çsÑHÖHÏ@Ô8ÎJÏ�ÑBËjÔ��8ÐJÏ�ÕmËjË:Í)ÎJÏ:Ô8Î:Ñ�å�Ë�ØJÙ@ÑBÎOÕ/Ï^ðçdÍHÔ8ÛBÎìêqÖ:Í8ÎBÏOÕ/ÑHÖBÐHÏHÔ8ÎJÏÞØ:Ù@ÑBÎ�ÕmË�çdÍHÔ8ÎHÏ:Ìëê�ËvØ:Ù@ÏhÐHË:Ì)ÎtÕ/ÑvÑwÍBÔ@ÝHÖ:Ù8û:ÔHÓHÍ8ÑhÒBËÌHÍHÌ8ÎHÏBÐJÑDç^Í8ÛJÏ:Ì@Í)ÐJÑHÖèâ ÊBË�Ú)ËtÕmÎ^Ù)ÛJÙ@û:ÌëêuÔ8Ë:ÌHÌ)ËkË^Í1ÎHË�Ô@ÑEçsÏOÕ6ÒHÑHÒ@Ï+å�Ù8ÐHÑkÝBËOÕmÐJÑÒ:Ù@ÑHÖ�Ú8ÑOÕRÑ_Ø^Ù@Ñ3ÎOÕ6Ë�ÏyËÞÔ)Ë3çsÏbÚ�Õ6ËBçJåBÐ�Ò3Ë�ÖHÑ8Î^Í)Ð������%�_��B�Ø^Ù@ÏeØ:Ù@ÏOÕ�Ò:ÍBíBÏOÕÔ8ËBçJËèê�Ë^Ù Ì@Ï/�HÑèêÞÔ8ËBçHË ÓHÍHÓ8ÖBË êÞÚ�Õ6ËBçJÑ3çsÏHÖ3ÐHÏ:Ô8ÎJÏ Ú8ËtÕxÎJÏ�Õ%ð3Ì@Ï ÝHÏ:ÓBñ@ÑHÒBË Ë

Page 12: Logica Programacao Aplicada V2.2008

12

Ì@ÏBÛ^ÙBÔ@ÒBËbÓHÍBÓ@Ö3ËyÒHÏnÌ@Ï:ÙnÌHÍ3Ì8ÎJÏ8ÐJÑnÔHÙ)ÐJåOÕ=Í@Ó)Ëo6EËnØ^Ù@ÏaÐHË:Ì8ÎOÕ/ÑaÑnÍHÔ@Ý@Ö:Ù@û:ÔBÓBÍ@ÑÒBË�ÌBÍHÌ8ÎJÏ3Ð:Ñ+Ø^Ù8Ñ3ÎJÏOÕ=Ô@÷dÕ=Í8Ëaß6×@Ñ:Ì8ÏDØ^Ù@ÑBÎOÕ6Ë:áèâ

±³² ����" µ·¾mÃƵ�#K½KµÄ¶)¸Éµ�#mÅI¶BÇKº�.p½K¶ ºI¶B¾',m¼C�'"»µÄÃI½I¶ÊBË Ô8ËJÌHÌ8Ë Ð^ÙBÔ@ÒBËèê Ë Ð^ÙHÔ@Ò8Ë ÒBË^Ì ÒHÏHí ÒHÏBÒBË^Ìëê Ñ:Ì Ú�Õ=Í8ÔBÓHÍHÚ@Ñ@ÍHÌ ×@Ñ@Ì@Ï@ÌÔHÙ8ÐJå�Õ=ÍHÓ@Ñ@Ì�Ù8Î^Í8Ö@Í@íHÑHÒHÑ8Ì-Ì@æ8ËèôóHÏ:ÓHÍ)ÐJÑHÖrð>ÙHÌ@ÑBÒBÑrÔ8Ë+Ò:Í@Ñ�Ñ+Ò:Í8Ñ�6THÍHÔ@÷�Õ=Í@Ñèê-Ë:Ó8ÎJÑHÖ�Ïwñ8ÏBÜJÑ@ÒHÏ@ÓHÍ8ÐHÑBÖxð�ÙHÌ@ÑBÒBÑ:ÌÞÏBÐxÌ3ÍHÌ8ÎJÏBÐ@Ñ:Ì�ÒHÏÞÓ3Ë^Ô8ÎtÕ6ËHÖBÏhÏÌHÍHÌ8ÎHÏBÐJÑ:Ì>Ó8ËHÐ^ÚBÙ)ÎJÑ:ÓHÍ8Ë@Ô@Ñ:ÍHÌùâ

1.3.1 Sistema Decimal

ïbÌHÍHÌ8ÎJÏ3ÐHÑjÐJÑ:ÍHÌjÓ8Ë:ÔHñ8Ï:ÓHÍBÒBË 2 3cÏ�ÎJÑBÐ^×3åBÐaËeÐ@Ñ:ÍHÌcÔ@Ñ8Î:Ù�Õ/ÑHÖ�åjË_ÌHÍHÌ8ÎHÏ3ÐJÑÒHÏ:ÓHÍ)ÐJÑHÖèâWHË^Ô8Î:å3Ð�ü8þ�Ó@ÑOÕ6Ñ@Ó8ÎJÏOÕmÏ:Ì�ÎJÑ3Ð^×@åBÐkÓ8Ë^ÔHñ8Ï@ÓHÍ@ÒBË:ÌkÓ)ËBÐHËQÒ@ö3Û^Í8ÎHË:ÌrÏ+Ø:Ù@ÏÌ@æBËìô þìê§üùê ê��tê�Hìê�Dtê¬ýãê��tê�\èê�bùâõ æBË�ÙHÌ@ÑHÒBË@ÌkÚ@Ñ�Õ/ÑjÕ/ÏHÚ�Õ/Ï:Ì8Ï@Ô8ÎJÑOÕTÙ8ÐJÑrÍHÔ@ÝBËOÕ'ÐJÑ:î@æ3ËkÏBÐ�Ù8ÐkÝBËOÕ6ÐJÑ%ÎHË�Ó8Ë:ÔHñ@Ï:Ó8Í@ÒBËÓ8ËHÐHËeÚ8Ë:ÌBÍHÓHÍ8ËJÔ8ÑHÖèâ�ß ò�Ö3Û^Ù@åBÐ�ÎJÏ8ÐaÒ��1çdÍ@ÒBÑcÌ8Ë^×�Õ6ÏjÑeÚ3ÑHÖHÑ3çãÕmÑeÚ1Ë^ÌHÍHÓHÍ)Ë^Ô@Ñ@Ö/X@áèâ�-Ú8Ë:ÌHÍHÓHÍ8Ë@Ô@ÑHÖrÚ8Ë�Õ6Ø^Ù8ÏkÑrÚ)Ë^ÌHÍHî)æBËQÒ3Ë�Ó@ÑOÕ6Ñ@Ó8ÎJÏ�Õ/Ï-ÒHÏ@Ô8ËHÎJÑ�ÌHÙ@Ñ�Í8Ð^Ú8ËtÕmÎ�Y:Ô@ÓBÍ@ÑèâïdÌ Ó@ÑOÕ/Ñ:Ó1ÎJÏOÕ/ÏHÌ ÐJÑ@ÍHÌ � Ï:Ì1Ø^Ù@ÏOÕ/ÒBÑ Î@ÏBÐ ÐJÑ@ÍHÌ Í8Ð^Ú)ËOÕ6Î�Y:ÔBÓ@Í@Ñ Ø^Ù@Ï Ë^ÌÓ@ÑOÕ/Ñ@Ó8ÎJÏOÕ6ÏHÌ Ð:Ñ@ÍHÌ � Ò@Í�Õ/Ï:Í8ÎBÑèâ 1ËtÕ Ï8ÜJÏBÐ^Ú8Ö3Ëìê Ô8Ë Ô��8ÐJÏ�Õ'Ë ü êf�_H ËÓ@ÑOÕ/Ñ@Ó8ÎJÏOÕ6Ï-ÒHÏ>ÐJÑ:Í8ËOÕ£Í8Ð:Ú8ËOÕ6Î�Y:ÔBÓ@Í@Ñrå>Ë�ÒHö)Û^Í8ÎHËrürÏDËQÒ@Í)Û^Í8ÎHË�HkÎJÏ3Ð-ÐJÏHÔ)ËtÕÍ8Ð^Ú8ËOÕ6Î�Y:ÔBÓ@Í@ÑèâïdÌaÌHÍHÌ8ÎBÏBÐJÑ:Ì�Ñ:Ô@ÑBÖ8àHÛ^ÍHÓ)Ë^ÌjÚ�Õ6Ë:Ó8Ï@ÌHÌ@ÑBÐ_ÍBÔBÝBËtÕ6ÐHÑ@î8øJÏ:ÌjÙ8Î:Í@Ö@Í@íHÑHÔ@Ò3ËaËnÌHÍ@Ì8ÎHÏBÐJÑÒHÏ:ÓHÍ)ÐJÑHÖèê+Ù)ÐJÑjçJÏHícØ^Ù@ÏaÎJÑ8ÍHÌaÌHÍHÌ8ÎJÏ3ÐJÑ:ÌnÌ8æBËbÓ�Õ=Í@ÑHÒ3Ë:Ìn×@Ñ:Ì@ÏHÑ8ÔBÒBËeÎHËJÒ3Ë^ÌcË^ÌÌ@Ï:ÙHÌ>ÏHÖHÏ3Ð:Ï:Ô8ÎHË:Ì+Ô8Ë�Ì3ÍHÌ8ÎJÏ8ÐHÑrÔ8Ñ3Î^Ù�Õ/ÑHÖ+Ò@ÏrÓ)Ë^Ô)ÎJÑBÛHÏBÐìâò�ÖHåBÐbÒ@Ñ�Ô)ËHÎJÑ@î8æBË�Ú8Ë^ÌBÍBÓHÍ8Ë^Ô@Ñ8ÖeÏBÜ^ÍHÌ8ÎHÏyÑ:ÍHÔ@ÒBÑ_ÑbÔ)ËHÎJÑ:î@æ%Ë�Ú8ËHÖ:ÍHÔ)ËHÐ^Í@ÑBÖnØ:Ù@ÏÏ:Ô)çJËHÖ3çsÏjÑeÌ8ËHÐJÑ3ÎBàtÕ=Í@ÑjÒHÏeÚ8Ë8ÎJû@ÔHÓHÍ8Ñ:ÌcÒHÑc×@Ñ:Ì@ÏjÏBÐ_ÙBÌ)Ëìâ,ÊBËeÓ8Ñ:Ì8ËnÒHÑe×8Ñ@Ì@ÏÒHÏ:ÓHÍ)ÐJÑHÖ+Ñ-×@Ñ:Ì8Ï+årü8þùâ)ËtÕYÏBÜJÏBÐ:ÚBÖBËìê ËrÔ��8ÐJÏdÕ6Ë�ý�DIHìêf� ü@á���� Ú8ËJÒBÏrÌ@ÏOÕDÕ/Ï:Ú�Õ/ÏHÌ@Ï:Ô)ÎJÑBÒBË�Ô@Ñ-ÝBË�Õ6ÐJÑùô

654, 321) 10 = 6x102 + 5x101 + 4x100 + 3x10- 1 + 2x10- 2 + 1x10- 3 ( f or ma pol i nomi al )

ÊBËHÎJÏ:ðBÌ@ÏbØ^Ù8Ï��:ÙHÔ)Î@ËwÑBËwÔ��8Ð:ÏOÕmËxÔ@Ñ�ÝBËtÕ6ÐHÑÞÚ8Ë^ÌHÍBÓBÍ8Ë^Ô@ÑHÖãê�ÝBË^Í�Í@Ô@Ò:ÍHÓ@ÑBÒBÑhÑ×@Ñ:Ì@Ï ÏBÐ Ø^Ù@Ï Ë Ô��8ÐJÏ�Õ6Ë ÝBË^Í Õ/Ï:Ú�Õ6Ï:Ì@Ï:Ô8ÎHÑBÒBËìâ�ÊBËtÕ'ÐJÑBÖBÐJÏ@Ô8ÎJÏùêbØ^Ù@ÑHÔ@ÒBË Ì@ÏÎtÕ/ÑBÎHÑ-ÒHÑ+×@Ñ:Ì@Ï>ü8þìê Ë�ÍHÔ@ÒHÍBÓ@ÑHÒ3ËOÕ�ÒHÑ�×@ÑHÌ@Ï�Ú8ËHÒHÏ�Ì@ÏOÕ«ËHÐ^Í8Î:Í8ÒBËèâ

1.3.2 Sistema Binário

ï ÌHÍHÌ)ÎJÏBÐJÑv×@ÍHÔ8÷OÕ=Í)Ë�åèêqÚ�Õ6Ë8çsÑ%çJÏHÖBÐJÏ:Ô)ÎJÏùêQËvÐHÑ:ÍHÌwÍ3Ð^Ú8ËOÕ6ÎHÑ:Ô8ÎHÏvÒBÏ:Ú8Ë^ÍBÌwÒBËÌHÍHÌ8ÎHÏBÐJÑhÒHÏ@ÓHÍ)ÐJÑHÖëâ�ÊHÏ:Ì8Î@ÏvÌHÍ@Ì)ÎHÏBÐJÑèêQÑw×@Ñ@Ì@Ïwå Õ%d ÏbË^ÌhÓ@ÑOÕ6Ñ:Ó)ÎJÏOÕ6Ï:ÌÙ8Î^Í@Ö@Í@íHÑHÒ3ËJÌjÔ8ÑbÕ/Ï8Ú�Õ/Ï:Ì@ÏBÔ8ÎJÑ:î8æBËcÌ8æBËqþaÏqüëâUäBÌ8ÎHÏ:Ì�Ó8ÑOÕ/Ñ@Ó8Î:ÏOÕ/Ï@ÌyÕ/Ï:Ó8Ï@×@ÏBÐcÑÒHÏ:Ô8ËBÐ^ÍHÔ@Ñ@îBæBËkÒBÏPT��1é-Ø^Ù@Ï-ÌBÍ8Û^ÔBÍ8Ý:ÍHÓ@Ñ� �¡HÔ@ÑOÕ+`kÒ:Í)Û^ÍI¢!â)ËtÕ�ÏBÜJÏ3Ð^Ú8ÖBËìêjË Ô/�8ÐJÏ�Õ6Ë ü)þ^üãêÆþ^ü8á�£�Õ6Ï:Ú�Õ6Ï:Ì8Ï:Ô8ÎJÑ8ÒBË Ô8Ñ ÝBËtÕmÐBÑ Ú8Ë^ÌBÍHÓ@Í8Ë:Ô@ÑHÖÏBØ^ÙHÍ1çsÑHÖHÏ>Ñèô

101, 01) 2 = 1x22 + 0x21 + 1x20 + 0x2- 1 + 1x2- 2

101, 01) 2 = 4 + 0 + 1 + 0 + 0, 25 = 5, 25) 10

Page 13: Logica Programacao Aplicada V2.2008

13

òbÝ3ËtÕ6ÐJÑ�Ú8ËJÖBÍHÔ8ËHÐ^Í)ÑHÖ�ÎtÕ/Ñ:Ô@Ì8ÝBËtÕmÐJÑ�Ø^Ù8ÑHÖBØ^ÙBÏ�ÕrÔ��8ÐJÏ�Õ6ËjÏBÐ�Ø^Ù8ÑBÖBØ:Ù@Ï�Õr×BÑ:Ì@Ï�ÏBÐÙ8Ð�Ô��8ÐJÏOÕmËkÔ@Ñ�×8Ñ:Ì@Ï-Ò3Ï:ÓHÍ8Ð:ÑBÖèâúBÐxÔ��8ÐHÏOÕmËx×HÍBÔ@÷OÕRÍ8ËhÒHÏ3ç^ÏhÌBÏOÕjÖ:Í@Ò3ËxÓ@ÑOÕ6Ñ@Ó8ÎJÏOÕ/ÏbÑwÓ@ÑOÕ6Ñ@Ó8ÎJÏOÕRÏùâ-ïxÒ:ö8ÛJÍ)ÎHËÐJÑ:ÍHÌ Ñ Ï:Ì3Ø:Ù@ÏOÕ6ÒHÑ å Ì@ÏBÐ^Ú�Õ6Ï Ë ÐJÑ:ÍHÌ ÌHÍ8ÛJÔBÍ@Ý:ÍHÓ@Ñ%Î^Í)çJË ß'R õ T ð RHË:Ì8Îõ Í8Û^ÔBÍ@Ý:ÍHÓ8Ñ8Î^Í)çsÏ T{�1é�á Ï Ë ÐHÑ:ÍHÌ � Ò:Í�Õ/Ï@Í8Î:Ñ å Ì@Ï3Ð:Ú�Õ/Ï Ë ÐJÏ@Ô8Ë^ÌÌHÍ8Û^ÔBÍ@Ý:ÍHÓ8Ñ8Î^Í)çJË�ß_O õ T+ðZO8Ï@Ñ@Ì8Î õ Í8Û^ÔHÍ@Ý@ÍHÓBÑBÎ^Í1çsÏPT��1é�áèâïdÌ ÓHÍ�Õ=ÓHÙ3Í8ÎHË^Ì Ò:Í3Û:Í8ÎJÑ:ÍBÌ Ù)Î^Í8Ö:Í@íHÑ8Ð Ë ÌHÍHÌ8ÎHÏ3ÐJÑ ×HÍHÔ8÷�Õ/Í8Ëìê Ú8ËtÕmØ:Ù@ÏÓ8ËHÐ^Ú8ÑOÕ/ÑHÒ3ËJÌÞÓ8Ë@ÐÞË^Ì�Ñ:ÔBÑHÖBàBÛ^ÍBÓ)Ë^Ì Õ/Ï:Ú�Õ/ÏBÌ@Ï:Ô8ÎHÑ3ÐxÓHÍ�ÕRÓBÙHÍ8ÎHË:ÌyÐ:Ñ:ÍHÌÞÌ@Í8Ð^Ú8ÖHÏ@ÌëêÕ/ÏHÑHÖ@Í@íHÑ:Ô8Ò8Ë Ë^Ú@Ï�Õ6Ñ:î8øHÏ:Ì Ö3àBÛ^ÍHÓ8Ñ:Ì Ï Ñ�Õ=Í8ÎHÐJå)Î^ÍHÓ@Ñ:Ì�ÐHÑ:ÍBÌ Õ/Ñ:Ú3Í@ÒHÑBÐJÏHÔ8ÎJÏ Ó8ËHÐÐJÑ:Í8ËOÕ-Õ/Ï@Ì3ËJÖ:ÙHî8æ3ËkÏrÚsÕ/Ï:ÓHÍ@Ì8æBËìâ¤�¥�¦�§p¨ª©�«�¬�§tô�Ô��8ÐJÏ�Õ6ËvÒHÏ�Ò:ö)Û^Í8ÎBË:ÌhÔ@Ñ Õ/Ï@Ú�Õ/Ï:Ì@Ï@Ô3ÎJÑ:î@æ3ËwÚ8Ë^ÌHÍBÓBÍ)Ë^Ô@Ñ@Ö ß/Ô��3ÐHÏOÕ6ËÒHÏrÓ8ÑOÕ/Ñ:Ó)Î:ÏOÕ/Ï:ÌUØ^Ù@Ï-Ñ8Ú@ÑOÕ/ÏHÓ8ÏBÐrÔ)Ë+çdÍHÌ)ËtÕRá­�®>¥�¯�°�¦�¬�§ãôkØ:Ù@æBË Ú�Õ6àHÜ:Í8ÐBË�åhË�ç^ÑHÖBËtÕeÒBÑ Õ/Ï:Ú�Õ/Ï@Ì@Ï:Ô3ÎJÑ@î@æBËxÚ8Ë:ÌHÍHÓBÍ8Ë^Ô@ÑBÖvÒ3ËçsÑHÖBËOÕ-Õ/ÏBÑ@Ö-ÒBË+Ï3çsÏ:Ô8Î3ËaÕ/Ï8Û:ÍHÌ8ÎOÕ6ÑHÒBËìâ

1.3.3 Sistema Octal

ï_ÌBÍHÌ8ÎJÏBÐHÑ�ËHÓ8ÎJÑHÖ�ÙHÌ8Ñ�Ë^Ì�Ò:ö)Û:Í)ÎHË^ÌQþìêUüëê ê��OêJHìê±Dtê£ýëê²�QÏqËcöHÔ@Ò:ÍBÓ@ÏÒHÑr×8Ñ:Ì@Ï+åaÕ%d�\èâé�ÑBÐ^×8åBÐ�Ù)ÎJÍ@Ö:Í@íBÑ+ÑrÔ8Ë3ÎJÑ:î@æ8ËrÚ8Ë:ÌBÍHÓHÍ8Ë^Ô8ÑHÖ�Ï�Ú8ËHÖ:ÍHÔ)ËHÐ^Í8Ñ@Öèâ)ËtÕ ÏBÜJÏBÐ:Ú8ÖBËìê ÎtÕ/Ñ@ÔHÌ8ÝBËtÕmÐHÑ:î@æ8Ë ÒBË Ô��8ÐJÏOÕmË Ë^Ó8ÎHÑHÖ D)ýëêf� á>³ Ô8Ñ ÝBËOÕ6ÐJÑÚ8ËJÖ:ÍBÔ8ËHÐ^Í8Ñ@Ö-ÏDË:×8ÎJÏ:ÔHî)æBËkÒ8Ë-ÏBØ:ÙBÍ)çsÑHÖHÏ@Ô8Î:Ï-ÒBÏ:ÓBÍ8ÐJÑBÖèô

56, 32) 8 = 5x81 + 6x80 + 3x8- 1 + 2x8- 2

56, 32) 8 = 40 + 6 + 3x 1/ 8 + 2x 1/ 64 = 46, 40625) 10

1.3.4 Sistema Hexadecimal

ïbÌBÍHÌ8ÎJÏ3ÐJÑcñ@ÏBÜHÑHÒ@Ï:ÓHÍ8ÐHÑBÖeÙ)Î^Í@Ö:Í8íBÑ�Ë^Ì�Ò:ö8Û^Í8Î@Ë^ÌqþìêEüëê ê��tê�Hìê�DtêEýëê��ãê\èê´bèênò ê�Tãê�ìêhóèêxäãê r Ë:Ô@ÒHÏ ò ê�Tãê�ìêhóèêxäãê r Ó8ËtÕHÕ6Ï:ÌBÚ8Ë^ÔBÒHÏ3ÐÕ/Ï:ÌHÚ8Ï:Ó8Î^Í1ç^ÑBÐJÏ:Ô)ÎHÏkÑ�ü8þìêXüBüãêXü êXü��OêXüaH ê«ü�D�â¬ÊHÑ�Í@ÒHÏ:Ô8Î:Í8Ý:ÍHÓ8ÑHî@æBËkÒHÑr×8Ñ:Ì@ÏÚ8ËJÒHÏ3Ð�Ì@Ï�Õ�ÙHÌ@ÑBÒ3Ë^Ì>Ë^ÌDöHÔ@ÒHÍBÓ@Ï:Ì�Õ%ddüHý�Ë^ÙqÕ+d��^äqN�Ë^Ù�Õ$d��èâäBÌ8ÎJÏ ÌBÍHÌ8ÎHÏ8ÐJÑ å Ù8Î:Í)Ö:Í@íHÑHÒ3Ë ÏBÐ Ð^ÍBÓ�Õ6Ë^Ú�ÕmË^Ó@Ï:ÌBÌBÑHÒBËtÕ6Ï:Ì ÏÐ^ÍHÓ�ÕmË^Ó8Ë^Ô)Î�Õ6ËJÖHÑBÒ3ËtÕ/Ï:ÌDÚ@ÑOÕ/Ñ,ÐJÑ:Ú8ÏBÑBÐJÏ:Ô8ÎBËrÒHÏDÐJÏ3ÐHàtÕRÍ@Ñèâ)ËtÕ�ÏBÜHÏ8Ð^Ú@ÖBËèê�Ú@Ñ:ÌBÌ@Ñ�Õ�Ë�Ô��8ÐHÏ�ÕmË�D'ò��têpä3ü@á�µ,ÒBÑyÝBËtÕmÐJÑ�Ú)ËJÌHÍHÓHÍ1Ë^Ô@ÑHÖ�Ú8Ñ�Õ/Ñ_ËÌ@Ï:Ù>ÏBØ^ÙHÍ1ç^ÑHÖHÏ:Ô)ÎHÏrÔ@ÑDÝBËtÕ6Ð:Ñ�Ú8ËHÖ@ÍHÔ8ËHÐ^Í8ÑHÖ�Ï�Ú@Ñ�Õ/Ñ+Ñ-Ý3Ë�Õ6ÐJÑ+ÒBÏ:ÓBÍ8ÐJÑBÖèô

5A3, E1) H = 5x162 + Ax161 + 3x160 + Ex16- 1 + 1x16- 2

5A3, E1) H = 5x162 + 10x161 + 3x160 + 14x16- 1 + 1x16- 2

5A3, E1) H = 1280 + 160 + 3 + 0, 8750 + 0, 0625 = 1443, 8789) 10

Page 14: Logica Programacao Aplicada V2.2008

14

±³² ¶�·g½$.pºK¿·½HÇ'ºHº%¸$,pµ ¹Æ½K¿�ºp¾'ÃƵ·½JºI¾I¸-"»º�.K½p¶ ºK¶x�»�¼�|{½�¾�¿ ��|�À ~�¼�}�¾�¿ Á/»�Â

þ þHþHþBþ þ þü þHþHþ:ü ü ü þHþ^ü)þ � þHþ^üBü � �H þ^ü8þBþ H HD þ^ü8þ:ü D Dý þ^üHü)þ ý ý� þ^üHüBü � �\ ü8þHþBþ ü8þ \b ü8þHþ:ü üHü bü8þ ü8þ^ü)þ ü òüHü ü8þ^üBü ü�� Tü üHü8þBþ ü{H ü�� üHü8þ:ü ü�D óü{H üHüHü)þ üHý äü�D üHüHüBü ü�� r

±³² Ã�Ä'Åp¾�¹ º%"»¶)ÅKºI¶BÇmº�Æ'½p¶ÆºäBÌ8ÎJÑ�Ì@Ï:î8æ8Ëkå+ÒBÏ:Ì8Î^ÍHÔ)ÑHÒHÑ � Ó8Ë:Ô1çsÏOÕ=Ì@æ3ËrÏ:Ô8ÎOÕ/Ï+Ñ:Ì>Ò:Í1ç^ÏOÕ=Ì@Ñ@Ì+×8Ñ:Ì@Ï@Ì�2mü�3¢â

1.5.1 Decimal inteiro para base r

òÞÓ)Ë^Ô)çsÏ�ÕRÌ@æBËeÙ3Î^Í8Ö:Í@íBÑcÙ8Ð�ÐJåBÎBË:ÒBËeÓ8Ë^ÔHñ)Ï:ÓHÍ@ÒBËcÓ8ËBÐHËcÒ:Í)çdÍHÌ1øJÏ:Ì�ÌHÙHÓ@Ï@ÌHÌHÍ)ç:Ñ:ÌëâßRó õ á+Ï-Ñ+Ó8Ë^Ô)çJÏ�Õ=Ì@æBË+å-ÝHÏHÍ)ÎJÑ�Ì8ÏBÛ^ÙHÔ@Ò3ËrÑ:Ì+Ì@Ï3Û^ÙHÍBÔ8ÎJÏ@Ì�Õ/ÏBÛOÕ6Ñ:Ìãôü@áhÏHÝHÏ3Î^Ù@Ï�ÑhÒ@Í)çdÍBÌ@æ3ËvÒBËwÔ��)Ð:ÏOÕ6ËwÒ@Ï:ÓHÍ8ÐHÑBÖwÚ@ÏHÖBÑÞ×@Ñ:Ì@Ï Õ�â+ï Õ/Ï:Ì8ÎBËvÏ�ËØ^Ù8Ë^ÓBÍ@Ï:Ô8ÎHÏrÚ@ÑOÕ/ÓHÍ8ÑHÖ-ÒHÏ3çsÏ3Ð�Ì@ÏOÕTÓ8ËJÖBË:Ó@ÑHÒBËJÌjÕRÏ:ÌBÚ@Ï:Ó)Î^Í1çsÑBÐHÏHÔ8ÎJÏrÌ)Ë^×�Ë�Ô��8ÐHÏOÕ6ËÒHÏ:ÓHÍ)ÐJÑHÖ+Ï-Ì8Ë^×,Ñr×@Ñ:Ì)ÏjÕ�â á Õ/Ï:ÚBÏBÎHÏ^ðBÌ@Ï Ñ Ò@Í)çdÍHÌ8æ3Ëìê�Ò8Í)çdÍ@Ò@ÍHÔ@ÒBË Ë ØJÙ8Ë^ÓHÍ8Ï@Ô8ÎJÏ Ú@ÑOÕ=ÓHÍ)ÑHÖ Ñ:Ô8Î:ÏOÕRÍ8ËtÕÔ8ËBçsÑ3ÐJÏ:Ô8ÎHÏ-Ú@ÏHÖBÑ�×@Ñ:Ì@Ï¢â�)á�Ñ�Ò:Í1çdÍHÌ@æ3Ë�ÒHÏ)çsÏqÌ@Ï�Õ>ÝHÏ:Í8ÎJÑ�ÑBÎHåqØ^Ù8Ï�ËÇ�@ÖBÎJÍ)ÐHË�Ø^Ù8Ë^Ó8Í@Ï:Ô8ÎJÏ�Ï:ÔHÓ)Ë^Ô8ÎtÕRÑBÒBËÌ@Ï��HÑDÐJÏ:Ô)Ë�Õ�ÒBËDØ^Ù@Ï-Ñ>×@Ñ:ÌBÏùâäBÔ8ÎJæ3ËkË�Ô��8ÐJÏOÕKËQÓ8Ë^Ô=çsÏOÕ6Î^Í8Ò3ËQåDË^×8Î^Í8ÒBËkÝ@ÑHíHÏ:Ô8Ò3ËQÑ+ÖHÏ:Í8Î^Ù�Õ6Ñ-Ë:ÔBÒHÏ�ËkÒ:ö3Û:Í8ÎHËÐJÑ:ÍHÌvÌHÍ8Û^ÔHÍ)Ý:ÍHÓ@Ñ3Î:Í)çJË åÞË�Ø^Ù8Ë@ÓHÍ@Ï:Ô8ÎHÏ�È�ÏvËwÐJÏ:Ô)ËJÌxÌHÍ8Û:ÔBÍ@ÝHÍHÓ8ÑBÎ^Í)çJËxåvËÚ�Õ=Í8ÐHÏ:Í�Õ6ËÉ®>¥�¦�Êf§tâä)ÜJÏBÐ:Ú@ÖBËìô Ó8Ë^Ô)çJÏ�Õ=Ì@æBË+ÒBËkÒ@Ï@ÓHÍ8ÐHÑBÖrü{H�H�D)á���� Ú@Ñ�Õ6Ñ-Ñ�×@ÑHÌ@Ï�Dtâ

1445 | _5 0 289 | _5 4 57 | _5 2 11 | _5 1 2 Assi m: 1445) 10 = 21240) 5

Page 15: Logica Programacao Aplicada V2.2008

15

1.5.2 Conversão de fração decimal para base r

ÊHÏ:Ì8ÎHÏ Ó8Ñ:Ì8Ë Ñ ÝOÕ/Ñ@î8æBË ÒBÏ:ÓBÍ)ÐJÑHÖ ÒHÏ3çJÏ Ì8Ï�Õ Ð^Ù@Ö)Î^ÍHÚ@Ö:Í3Ó@ÑHÒHÑ Ú8ÏHÖHÑ ×8Ñ:Ì@ÏÒHÏ:Ì@Ï��HÑHÒHÑùâÞóBË Õ/Ï:ÌBÙ@ÖBÎJÑBÒ3Ë Ï8ÜHÎOÕ/Ñ:ö)ÐHË^Ì Ñ Ú@ÑOÕ6ÎJÏ ÍHÔ)ÎHÏ:Í�Õ/Ñ Ï çJËJÖBÎHÑBÐHË^Ì ÑÐ^Ù@ÖBÎ:ÍHÚ@Ö:ÍBÓBÑOÕ£Ú8ÏBÖHÑr×@Ñ8Ì@Ï-Ñ+Ú@ÑOÕmÎHÏ-ÝOÕ/Ñ@ÓHÍ3Ë^Ô@÷�Õ=Í8Ñ�Õ/Ï:Ì8ÎHÑHÔ8ÎJÏèâò�Ð^Ù8ÖBÎ^ÍHÚ8ÖHÍHÓ@Ñ:î8æ3Ëkå�ÍBÔ8ÎJÏOÕ@ÕmËHÐ^ÚBÍ8ÒHÑ+Ø^Ù8Ñ:ÔBÒBËrÌ@ÏDÎHÏBÐìôükðUË^Ó8ËtÕBÕRû:ÔHÓHÍ8Ñ+ÒHÏ�Ú8ÑOÕ6ÎJÏ>ÝOÕ/Ñ@ÓBÍ8Ë^Ô@÷OÕRÍ@Ñ-ÔHÙ8ÖHÑ�6 ðUË^×8ÎJÏ@Ô@î@æBË-ÒBÏrÙ8Ð�Ô��8ÐJÏ�ÕmËkÒBÏ@Ì@Ï��HÑHÒ3ËrÒHÏ+Ò:ö)Û^Í)ÎHË^Ì76�+ðDÚ@ÑOÕ6ÎHÏ�ÝOÕ/Ñ@ÓBÍ8Ë^Ô@÷�ÕRÍ@ÑjÕRÏ@Ú@ÏBÎ:Í)Î^Í)çsÑèâï_Ú�Õ=Í8ÐJÏ:Í�Õ'ËjÒ:ö8Û^Í8Î3ËjË:×8Î^Í@Ò8ËcÔ@Ñ�Ð^Ù8ÖBÎ^ÍHÚ@ÖHÍBÓ@Ñ:î@æ3Ëaå�Ë�Ð:Ñ:ÍHÌ�ÌHÍ)Û:ÔHÍ@Ý:ÍBÓ@ÑBÎ^Í=çJËìâï��@Ö3Î^Í8ÐHË�Ò:ö8Û^Í)ÎBËkå+ËDÐJÏ:Ô3Ë:Ì-ÌBÍ)Û^ÔHÍ@Ý:ÍBÓ@Ñ8Î^Í)çHËìâä)ÜJÏBÐ:Ú@ÖBËìô-ÎOÕ/Ñ:ÔHÌBÝ3ËtÕ6ÐJÑ�Õ�ËxÔ��8ÐHÏ�Õ6Ëhþìê DIHvÒHÑw×@Ñ8Ì@ÏhÒHÏ:Ó8Í8ÐJÑHÖÞÚ8ÑOÕ/ÑhÑh×BÑ@Ì@ÏË^Ó8ÎJÑBÖrÓ8ËBÐkD,Ò@ö)Û^Í8ÎHË:Ì>Ñ:Ú8àJÌ>ÑEç^ö�Õ6Û^Ù@ÖBÑèâ

0, 254 x 8 = 2, 032 = 2 + 0, 032 0, 032 x 8 = 0, 256 = 0 + 0, 256 0, 256 x 8 = 2, 048 = 2 + 0, 048 0, 048 x 8 = 0, 384 = 0 + 0, 384 0, 384 x 8 = 3, 072 = 3 + 0, 072 Ass i m: 0, 254) 10 ≈ 0, 20203) 8

ä)ÜJÏBÐ:Ú@ÖBËìô Ó8Ë^Ô)çJÏ�Õ6ÎJÏOÕuË�Ô��3ÐHÏOÕ6ËDþìêf����D1á ��� Ú@ÑOÕ/Ñ>×HÍHÔ8÷OÕ/Í8Ë 0, 375 x 2 = 0, 750 = 0 + 0, 750 0, 750 x 2 = 1, 500 = 1 + 0, 500 0, 500 x 2 = 1, 000 = 1 + 0, 000 Ë PARAR, FI COU ZERO Assi m: 0, 375) 10 = 0, 011) 2

ä)ÜJÏBÐ:Ú@ÖBËìô Ó8Ë^Ô)çJÏ�Õ6ÎJÏOÕuË�Ô��3ÐHÏOÕ6ËDþìê$\Há:ü)þkÚ@ÑOÕ6Ñ�×HÍHÔ8÷OÕ=Í)Ë

0, 800 x 2 = 1, 600 = 1 + 0, 600 0, 600 x 2 = 1, 200 = 1 + 0, 200 0, 200 x 2 = 0, 400 = 0 + 0, 400 0, 400 x 2 = 0, 800 = 0 + 0, 800 0, 800 x 2 = 1, 600 = 1 + 0, 600 0, 600 x 2 = 1, 200 = 1 + 0, 200 0, 200 x 2 = 0, 400 = 0 + 0, 400 Ë PARAR, É DÍ ZI MA Assi m: 0, 8) 10 ≈ 0, 1100110. . ) 2

1.5.3 Conversão entre um número decimal com par te inteira e par te fracionár ia para um número na base r

ükð�ò�Ú@Ö:ÍBÓBÑOÕYËDÐJåBÎHËHÒ3ËkÒHÑHÌ>Ò:Í1ç^ÍHÌ8øJÏ:Ì+Ì@ÙHÓ@Ï@ÌHÌBÍ)çJÑ:Ì-Ú8Ñ�Õ/Ñ-Ñ>Ú@Ñ�Õ6ÎJÏ�ÍHÔ8Î:Ï@Í�Õ/Ñèâ ðcò�Ú@Ö@ÍHÓ8ÑOÕjË�ÐJå3ÎHËJÒ3ËvÒBÑ:ÌyÐ^Ù8ÖBÎ^ÍHÚBÖ:ÍBÓ@Ñ:î)øJÏ@ÌhÌHÙBÓ@Ï@ÌHÌHÍ%çsÑ:Ì�Ú8Ñ�Õ/ÑhÑwÚ@Ñ�ÕmÎJÏÝOÕ/Ñ:ÓBÍ8Ë^Ô@÷�Õ/Í@Ñèâ

Page 16: Logica Programacao Aplicada V2.2008

16

ä)ÜJÏBÐ:Ú@ÖBËìô Ó8Ë^Ô)çJÏ�Õ6ÎJÏOÕuËkÒHÏHÓBÍ8ÐJÑBÖ�D��ãêf�EÚBÑOÕ/Ñ+Ñ�×@Ñ@Ì@Ï�×@ÍHÔ@÷OÕRÍ8Ñèâ

57 | _2 1 28 | _2 0 14 | _2 0 7 | _2 1 3 | _2 1 1 Assi m: 57) 10 = 111001) 2 0, 300 x 2 = 0, 600 = 0 + 0, 600 0, 600 x 2 = 1, 200 = 1 + 0, 200 0, 200 x 2 = 0, 400 = 0 + 0, 400 0, 400 x 2 = 0, 800 = 0 + 0, 800 0, 800 x 2 = 1, 600 = 1 + 0, 600 0, 600 x 2 = 1, 200 = 1 + 0, 200 0, 200 x 2 = 0, 400 = 0 + 0, 400 Ë PARAR, É DÍ ZI MA 0, 3) 10 ≈ 0, 0100110. . ) 2 Assi m: 57, 3) 10 ≈ 111001, 0100110. . ) 2

1.5.4 Conversão de base r para base decimal.

�qÕ/ÏBÑHÖ:Í@íBÑ@ÒBËkÑ3ÎOÕ/Ñ3çså:Ì,ÒHÑ�Ý3ËtÕ6ÐHÑ�Ú8ËJÖ:ÍBÔ8Ë@Ð^Í@ÑBÖèâ

1.5.5 Conversão da base binár ia para a base 2K

òjÝBËOÕ6ÐJÑ@î@æ3Ë�×HÍ@Ô@÷OÕ=Í8Ñ-ÒHÏ%çsÏrÌ@Ï�ÕYÒ:Í)çdÍBÒ:Í8ÒHÑ-Ï3ÐkÛOÕ=ÙBÚ8Ë^Ì>ÒHÏÌ]-×HÍ3Î:Ìaß'Ë:Ô@ÒBÏ�]>åÙ8Ð�Ô��8ÐJÏOÕKËcÍHÔ)ÎHÏ:Í�Õ'Ë�Ï�ÐJÑ:Í3ËOÕ+Ò3ËqØ^Ù8Ï�ü8áùê£Ý3ËtÕmÐJÑHÒ3Ë^Ì�ÑqÚ@ÑdÕ6Î^Í�Õ,ÒHÑrçdö�Õ'Û:Ù@ÖHÑÚ@ÑOÕ/ÑaÑaÏ:Ì8Ø:Ù@ÏOÕ/ÒBÑnÏcÒ@Ñ�ç^ö�Õ6Û^ÙBÖBÑnÚBÑOÕ/ÑcÒ:Í�ÕRÏ:Í8ÎJÑùâ+ä1ÐyÌBÏBÛ^ÙHÍ8ÒBÑjË^×8ÎJÏBÐBË^Ì�Ë^ÌÏBØ^ÙHÍ1çsÑHÖHÏ@Ô3ÎJÏ:Ì ßmÒHÏ:ÓHÍ8ÐBÑ:ÍHÌ Ï ñ@ÏBÜHÑHÒHÏ:ÓHÍ%ÐJÑ:ÍHÌ@á ÒBË^Ì ÛtÕRÙHÚ8Ë:Ì ÝBËtÕ'ÐJÑHÒBË:Ì ÏÓHñ@ÑBÐHÑBÐHË^Ì>ÍHÌ8ÎHË+ÒHÏ-ÝBË�Õ6ÐJÑ:îBæ3ËkÒBÏDÛtÕ=ÙHÚ)Ë^Ì�ßarfÍsáùâä)ÜJÏBÐ:Ú@ÖBËìô§Ó8Ë^Ô)ç^Ï�Õ6ÎJÏOÕXË�Ô��)ÐJÏ�Õ6Ër×HÍHÔ@÷�Õ=Í8Ërü8þ^üHü8þùêpü8þ^üHü+Ú@ÑOÕRÑrÑ-×8Ñ:Ì@ÏDïdÓ8ÎHÑHÖ-Ï�HÏBÜJÑBÒHÏ:ÓHÍ)Ð:ÑHÖèâ

8 = 23 Î k = 3 16 = 24 Î k = 4 10 110, 101 1 Î 010 110, 101 100 2 6 , 5 4 Assi m: 10110, 1011) 2 = 26, 54) 8

1 0110, 1011 Î 0001 0110, 1011 1 6 , 11 1 6 , B Assi m: 10110, 1011) 2 = 16, B) 16

Page 17: Logica Programacao Aplicada V2.2008

17

1.5.6 Conversão da base 2K para a base binár ia

ò Ó8Ë^Ô1çsÏOÕ=Ì8æ8Ë ÒHÑ ×@Ñ:Ì8Ï {Ï Ú8ÑOÕ/Ñ ×BÍHÔ@÷�Õ=Í3Ë Ú8ËJÒBÏ Ì@ÏOÕ ÝHÏ@Í8Î:Ñ Ó8ËHÐ Ù8ÐÕ/Ñ:ÓHÍ)Ë^ÓHöHÔBÍ3Ë ÌHÍ8Ð@Í@ÖHÑOÕ�âÉJÑHÒHÑxÒ@ö8Û^Í8Î@Ë Ë^Ó8ÎBÑHÖ ß'ËJÙxñ@ÏBÜHÑHÒBÏ:ÓHÍ3ÐJÑBÖHáxÒHÏ3çsÏ Ì8ÏOÕÏBÜ^Ú@Ñ@Ô@Ò:Í@Ò3Ë Ô)Ë Ì@Ï:Ù ÏBØ^ÙBÍ1çsÑHÖHÏ8Ô8ÎJÏ ×HÍBÔ8÷OÕ=Í8Ë Ó8Ë@Ð ÎtÕ/û:Ì ×HÍ3Î:Ì ß'Ë^Ó8ÎHÑ@ÖHá ÏØ^Ù@ÑBÎOÕ6Ë�×BÍ3Î^Ìjß6ñ8ÏBÜJÑHÒHÏ8ÓHÍ8ÐJÑ@ÖBáèâä)ÜJÏBÐ:Ú@ÖBËìô Ó8Ë^Ô)çJÏ�Õ6ÎJÏOÕuË�Ô��3ÐHÏOÕ6ËDË^Ó8ÎJÑHÖ�ü �têªH��DÚ8ÑOÕ/Ñ�×@ÍHÔ@÷OÕRÍ)Ëìâ

8 = 23 Î k = 3 123, 47 Î 1 2 3, 4 7 001 010 011, 100 111 Assi m: 123, 47) 8 = 1010011, 100111) 8

ä)ÜJÏBÐ:Ú@ÖBËìô Ó8Ë^Ô)çJÏ�Õ6ÎJÏOÕuË�Ô��3ÐHÏOÕ6Ë�ñ@ÏBÜJÑHÒBÏ:Ó@Í8ÐJÑBÖ�^ü��EÚ@Ñ�ÕRÑr×HÍBÔ8÷OÕRÍ8Ëìâ

16 = 24 Î k = 4 C13 Î C 1 3 12 1 3 1100 0001 0011 Assi m: C13) H = 110000010011) 2

1.5.7 Mapa de conversão

DECIMALINTEIRO BASE r

DECIMALINTEIRO BASE r

DECIMALFRACIONÁRIO BASE r

DECIMALFRACIONÁRIO BASE r

DS

FP

MS

FP

HEX (16) BIN (2) OCTAL (8)

HEX (16) BIN (2) OCTAL (8)

EX 4 Bits FG 3 Bits

FG 4 Bits EX 3 Bits

r3Í8Ûìâ§üëâpü±i�RJÑ@ÚBÑ-ÒHÏSHË^Ô)çsÏdÕ=Ì@æ8Ë-Ï:Ô8ÎtÕ6Ï�×@Ñ:Ì8Ï:Ìùâ

Page 18: Logica Programacao Aplicada V2.2008

18

O8ÏBÛJÏ@Ô@ÒHÑèôR õ iDÐ^Ù@Ö3ÎJÍHÚ@Ö:ÍBÓ8Ñ:î8øJÏ:ÌDÌHÙHÓBÏ@ÌHÌHÍ1çJÑ:Ì76ó õ i+Ò:Í)ç^Í@Ì8øJÏ:ÌDÌHÙHÓ@Ï:Ì3ÌHÍ)çsÑHÌ�6r�±i+ÝBËtÕmÐ:ÑrÚ8ËHÖ@ÍHÔ8ËHÐ^Í)ÑHÖp6äÐNgi+ÏBÜ^Ú8ÑHÔHÌ@æBË+ÏBÐo6rIÍÉi�r1ËtÕmÐ:Ñ:î@æBË+ÒHÏ+ÛtÕ'ÙHÚ8Ë

±³² Ñ�Ò'¾pµÄÇK½IÇpºK¶BÇKº�ÓJºIÇmµÁÇp½é�Ñ:Ô8ÎBË Ú@Ñ�Õ/Ñ Ø:Ù@Ñ:Ô8ÎJÍ8Ý:ÍHÓ@Ñ�ÕxÑ ÐJÏBÐHàtÕRÍ@Ñ Ú�Õ=ÍHÔBÓBÍHÚ@ÑHÖ ÒBË ÏBØ^ÙHÍHÚ)ÑBÐJÏ:Ô8ÎBË Ó)ËHÐHËÚ@ÑOÕ/Ñ�ÍBÔ@Ò:ÍHÓ@Ñ�Õ�Ñ�Ó@Ñ:Ú@Ñ@ÓHÍ@Ò@ÑHÒBÏ_ÒHÏbÑOÕ6Ð:ÑHíHÏ:Ô@Ñ%ÐJÏ:Ô8ÎHËùêkÌ@æBËÞÙHÌ8ÑHÒ3Ë^ÌnÐ��BÖBÎ^ÍHÚ8ÖBË:ÌÒHÏr×_`JÎJÏ:Ìãê¬Ó8ËHÐBËèôÔ ð ]HÍ8Ö8Ë ßKÐ:Í@Ö�ðUÒHÏ:ÓHÍ3ÐHÑHÖHáÕ ð RJÏ3Û:Ñ ßKÐ:Í@Ö:ñ@æBËrð>Ò@Ï@ÓHÍ8ÐHÑBÖHáÖ ð ÍdÍ)Û:Ñ ß6×BÍ@Ö:ñ@æBËrð>Ò@Ï@ÓHÍ8ÐHÑBÖHᢠð é�Ï�ÕRÑ ßKÎOÕ=Í@Ö:ñ@æ%Ë�ðDÒBÏ:ÓHÍ)ÐHÑHÖHá×HÍ8Î d þ-Ë^ÙDü×a`JÎJÏ d \r×HÍ)Î:ÌQd ³ d D1ý+Ó8ËHÐ:×HÍHÔ@Ñ@î)øJÏ:Ì�ß6Ô��8ÐJÏ�ÕmË^Ì@áüZ]H× d �×� d�ü)þ H-×a`JÎJÏ@Ì�ßf]HÍ@Ö3Ë^×a`JÎJÏBÌ@áü±R^× d £ � d�ü)þ HZ]H×a`JÎHÏ@ÌØd�üãâÆþ�H�\èâ'D��Bý+×_`JÎJÏ:Ì�ß%RJÏBÛHÑ:×_`JÎJÏ8Ì@áüQÍd× d /Ù � d�ü)þ H±R^×a`JÎHÏ@ÌØd�üãâÆþ����tâ$�aH^üëâ)\ H�×_`JÎ:Ï:Ì�ß'Í^Í8ÛJÑ8×a`JÎJÏ:ÌBá

±³² Ú>ÛÝÜ º$" Ã)ÞÄÃIµ·ÅI¶)0r)Ñ:î@Ñ+Ñ:Ì+Ó3Ë^Ô)çsÏ�ÕRÌ8øJÏ:Ì,Ñ:×@Ñ:Í3ÜBË�Ó)ËBÐZH�Ó8Ñ:ÌBÑ:Ì>Ñ:Ú)à^Ì>ÑDç^ö�Õ6Û^Ù@ÖBÑùô

11101110, 0111) 2 = X) 10 7638, 115) 10 = X) 16 6355, 731) 8 = X) 2 1573, 891) 16 = X) 8 1356, 11) 8 = X) 10 3F67, 5) 16 = X) 10

Page 19: Logica Programacao Aplicada V2.2008

19

Capítulo 2 - Álgebra de Boole.

I² ±�ß·¾I¸-" ÅpÇ',%&)(KÅò�ÌjçsÑOÕ/Í@÷3çsÏ@ÍBÌ_Ó8ËHÐ^Ù@ÔBÌ_Ó8ËHÐHËyË:ÌaÎ:ÍHÚ8Ë^ÌyÍHÔ)ÎJÏ@Í�Õ6Ë:Ì_ÏxÕ/ÏHÑ@ÍHÌxÕmÏHÖHÑ:ÓHÍ)Ë^Ô@Ñ8Ð^ðBÌ@ÏÑBÎtÕ/Ñ%çså:ÌyÒHÑ�÷HÖ3ÛHÏ:×�Õ6Ñ_ÎtÕ/Ñ@Ò:ÍBÓHÍ)Ë^Ô@ÑBÖèâUò�ÌeçsÑ�Õ=Í@÷%çsÏ@ÍHÌyÖBàHÛHÍHÓ@Ñ:ÌãêrÚ)ËtÕ/åBÐìê-Ú8ËtÕÑ:ÌHÌHÙ)Ð^Í�Õ/Ï3Ð Ñ@Ú@Ï:Ô8Ñ:Ì ÒBË^ÍHÌ çJÑHÖBËtÕ/Ï@Ìëê íHÏOÕmË Ï Ù8Ðìê Î:û3Ð ÑHÖBÛ^Ù3ÐJÑ@ÌÓ@ÑOÕ/Ñ@Ó8ÎJÏOÕRö@Ì8Î^ÍHÓ8Ñ@ÌrÒ:Í8ÝHÏOÕ/Ï@Ô)ÎJÏ:Ì�Ò@Ñr÷HÖ8ÛJÏ:×�Õ6Ñ-ÎtÕ/Ñ3Ò:ÍHÓHÍ8Ë@Ô@ÑHÖèâ�ò�ÌHÌ@Í)Ðìê«Ñ@Ô8ÎJÏ:Ì�ÒHÏÑ:Ú�Õ/Ï@Ì@Ï:Ô8ÎHÑ�Õ6ÐHË^ÌnË^ÌaË^Ú8ÏOÕ/Ñ@ÒBËtÕ6Ï:ÌnÖ3àHÛ^ÍHÓ8ËJÌbÚ�Õ6à^Ú�ÕRÍ8Ë^ÌyÒHÏbÙ8ÐJÑbÖ@ÍHÔ)Û^Ù@ÑBÛJÏ8Ð�ÒHÏÚ�Õ6ËHÛOÕ/ÑBÐJÑ@îBæBË Ï Ñ ÌBÙ@Ñ Ñ@Ú@Ö@ÍBÓ@Ñ:î@æ8Ë Ï3Ð ÑBÖ3ÛHËtÕ=Í)ÎHÐBË^Ì çHÑBÐHË^Ì Ô)Ë^Ì Ò@Ï3ÎJÏOÕ×�Õ/Ï3çJÏBÐJÏ:Ô)Î:ÏkÔ8ËrÑ:Ú�Õ/Ï@Ô8Ò:Í@íHÑBÒBËkÒBÑ-÷HÖBÛ:Ï:×�Õ6ÑrÚ@ÑOÕ/Ñ+ÒBË^ÍBÌ,çsÑHÖ3ËtÕ/ÏH̱ikÑ-÷HÖBÛJÏ@×�Õ/ÑÒBË�ÌBÍHÌ8ÎJÏ3Ð:Ñr×HÍBÔ8÷OÕ=Í8ËìâïdÌ Ó8Ë^ÔBÓ@Ï:Í8ÎHËHÌ ×@÷:ÌHÍHÓ)Ë^Ì ÒHÏ@Ì)ÎHÑ ÷HÖBÛJÏH×�Õ/Ñ ÝBËOÕ6ÑBÐ Ñ:Ú�Õ6Ï:Ì@Ï@Ô3ÎHÑHÒBË^Ì Ú@ÏBÖHÑÚ�Õ=Í8ÐHÏ:Í�Õ/Ñ çsÏBí ÏBÐ ü/\�D_H Ú8ËOÕ ÍsÏBËtÕmÛHÏ T8ËBËJÖ@ÏèêxÐJÑBÎJÏ3ÐH÷BÎ^ÍHÓ3Ë Ï Ý:Í8ÖBà^Ì3ËJÝ3ËÍHÔ8ÛJÖBû:Ìëâ ä)Ð ü�b��a\èê JÖBÑ:Ù@ÒBÏ ä8ÖI^dËHËJÒ õ ñ8Ñ:ÔHÔ)Ë^Ô Ñ:Ú8Ö:ÍHÓ)Ë^Ù Ñ ÎJÏBËtÕ/Í@Ñ Ï Ñ÷HÖBÛJÏ@×�Õ/Ñ � ÑBÔ@÷HÖ:ÍHÌ8Ï ÒHÏ ÌHÍBÌ)ÎJÏBÐ:Ñ:Ì ÎHÏHÖBÏHÝ��JÔHÍBÓ8Ë^Ì Ï Ú)ÏOÕ=Ó@Ï@×BÏ:Ù Ø^Ù8Ï Ë^ÌçsÑHÖBËOÕ/Ï:ÌnþhÏÞü�Ì@ÏbÑHÒBÑ:Ú8ÎHÑ3çsÑ3Ð � Ó)Ë^ÔHÓ@Ï@Í)ÎHË^Ì�Ó)Ë@ÐHËhÖ@Í8ÛJÑBÒBË�ÏbÒHÏ:ÌBÖ:Í8ÛJÑBÒ3ËìêçsÏOÕ/ÒBÑHÒHÏ:Í�Õ'ËkÏ+ÝBÑHÖ:Ì8Ëìâò�÷HÖ3ÛJÏ:×�Õ6Ñ�ÒHÏPT)ËHËJÖHÏEÎJÏBÐ�ÎOÕ/û:ÌDÓ@ÑOÕ/Ñ:Ó)ÎJÏ�Õ=öHÌ)Î^ÍBÓ@Ñ:Ì+×@÷@Ì@ÍHÓ@Ñ:Ìw2 êJ�:3ëôéëÕ/û:Ì,Ë^Ú@Ï�ÕRÑ:î8øJÏ@ÌãôXä�ßJâIáèêWïJúcß$eJá-ÏrÓ)ËHÐJÚ@ÖHÏ3ÐJÏ@Ô8ÎHËcßÐà áp6óBË^ÍHÌ+Ó@ÑOÕ6ÑHÓ8ÎJÏOÕ6Ï@Ìëô þ+Ïrüò�ÌqçsÑOÕ=Í8÷3çsÏ:ÍBÌaÌ8æBË_ÍHÔ@Ò:ÍHÓ8ÑHÒBÑ:ÌjÚ@Ï@ÖHÑ:ÌjÖHÏBÎ�Õ/Ñ:ÌjÒBËnÑHÖHÝBÑ:×BÏBÎHËèô�ò ê±Tùê²ìê,óèêäãê-âBâHâò�Ì�Ë^Ú8ÏOÕ6Ñ:î3øJÏ:Ì�Ö3àHÛ^ÍBÓ@Ñ@Ì äãê�ïJú Ï ÊIá^ï Ì@Ï3Ð:Ú�Õ/Ï Õ/Ï:ÌHÙ@Ö8ÎHÑBÐ çHÏ�Õ/ÒHÑHÒ@Ï:Í�Õ6ËxË^ÙÝHÑHÖ:Ì)Ë ß/üvËJÙ�þJáxØ^Ù@Ñ@Ô8ÒBË Ñ3çJÑ@Ö:Í@ÑHÒBÑ:ÌëâQòsÌ�Ë^Ú@Ï�Õ/ÑHî8øHÏ:Ì äãê�ïsú Ï Ê_á^ï Ì@æBËÐHË^Ì8ÎOÕ/ÑHÒHÑ@Ì+ÑrÌ8Ï3Û^ÙHÍ�Õ�â

I² �â%#Kº+" ½%&)(IÅ�ÛïdÚ@ÏOÕ6Ñ:î@æBËkä>Ï:Ô)ÎOÕ/Ï-Ò@Ù8Ñ:Ì,ç^Ñ�Õ=Í@÷%çJÏ:ÍHÌ�Ò3Ë�Î^ÍHÚ)Ë-ÖBàHÛ:ÍHÓ8Ëjß/×8ËHËHÖBÏHÑ@Ô8ËJá

A B A E B 0 ( F) 0 ( F) 1 ( V) 1 ( V)

0 ( F) 1 ( V) 0 ( F) 1 ( V)

0 ( F) 0 ( F) 0 ( F) 1 ( V)

õ à Ì8ÏOÕ/÷ çJÏOÕ/ÒHÑBÒBÏ:Í�Õ6Ë ß/ü@á Ì@Ï Î@ËJÒHÑ:Ì Ñ:Ìxç^ÑOÕ=Í@÷3çJÏ@ÍHÌ ÝBËtÕ/ÏBÐxçsÏOÕ/ÒBÑHÒHÏ:Í�Õ/Ñ@Ìß/ü@áèâ

Page 20: Logica Programacao Aplicada V2.2008

20

I² ��âq#pº'"»½'&)(pÅ�âqÒïdÚ@ÏOÕ6Ñ:î@æBË,ïsú-Ï@Ô)ÎtÕ/Ï+Ò@Ù@Ñ:ÌEçJÑOÕ=Í8÷%çsÏ:ÍHÌ>ÒBË�Î^ÍBÚ8Ë-Ö3àHÛ^ÍHÓ)Ëaß/×8ËBËHÖHÏBÑ:Ô8ËHá

A B A OU B 0 ( F) 0 ( F) 1 ( V) 1 ( V)

0 ( F) 1 ( V) 0 ( F) 1 ( V)

0 ( F) 1 ( V) 1 ( V) 1 ( V)

õ à�Ì8ÏOÕ/÷+Ý@ÑHÖ:Ì8Ë�ß'þJárÌ)Ï+ÎHË:ÒBÑ:Ì>Ñ@Ì,çsÑOÕRÍ@÷)çsÏ:ÍBÌ>ÝBËtÕ6ÏBÐ-Ý@ÑHÖ:Ì@Ñ@Ì�ßKþJáèâ

I² ¶�â%#Kº+" ½%&)(IÅ�!)ãIâïdÚ@ÏOÕ6Ñ:î@æBË�ÊHæBËrÌ)Ë^×�Õ/Ï>Ù8ÐJÑ,çJÑOÕ=Í8÷%çsÏHÖ-Ò3Ë�Î^ÍHÚ)Ë-ÖBàBÛ^ÍHÓ8Ëjß/×8ËHËHÖBÏHÑ@Ô8ËJá

A NÃO A 0 ( F) 1 ( V)

1 ( V) 0 ( F)

ò�ÌkË^Ú@ÏOÕ/ÑHî)øJÏ:Ì_ß�âIáqÏyß$esá�Ô@æBËqÚ8ËJÒBÏBÐaÌ8ÏOÕ>Ó)Ë^Ô@Ý:Ù@Ô@Ò@Í@ÒHÑ@Ì�Ó)Ë@ÐjÑ8ÌQË^ÚBÏOÕ/Ñ:î)øHÏ:ÌÚ�Õ6ËJÒ@Ù8ÎHË-Ï�ÑHÒ:ÍBî8æBËkÒHÑD÷HÖBÛ:Ï@×�Õ/ÑEÎtÕ/ÑHÒ:ÍBÓHÍ3Ë^Ô@ÑBÖèâòb÷BÖBÛJÏ@×�ÕRÑjÒ3ÏKT)ËBËJÖHÏQÎJÑBÐ^×8å3ÐcÚ3Ë^ÌHÌHÙBÍqÑBÖBÛ^ÙHÔHÌqÚ8Ë:Ì)Î^Ù@ÖHÑBÒ3Ë^Ì�Ï�ÎBÏBËtÕ/ÏBÐHÑ:Ì�Ø^Ù@ÏÏ:Ì8ÎJÑ@×@ÏHÖHÏ@ÓBÏBÐÞËJÌ�Ý:Ù@Ô@ÒBÑBÐHÏ:Ô8ÎHË:Ì�ÒBÑh÷HÖBÛJÏB×�Õ/ÑèâDòdÌÞÏBÜ^Ú�ÕmÏ:ÌHÌ8øJÏ@ÌãêkË^Ú@Ï�Õ/Ñ:î3øHÏ:ÌëêÚ8Ë^Ì8Î:Ù@ÖHÑHÒ3ËJÌ Ï ÎJÏBËOÕ/Ï3ÐJÑ:Ì Ú)ËJÒ@ÏBÐ Ì@ÏOÕ ÎHËHÒBË^Ì çsÏ�Õ=Í@ÝHÍHÓ8ÑHÒBË:Ì ÑBÎOÕ/Ñ3çså8Ì ÒHÏÏBÜJÏBÐ:Ú@ÖBË^ÌDÒHÏ-ÑBÖ3ÛHËtÕ=Í8Î3ÐHË^Ì+Ï+ÏBÐ�Ú�Õ6ËHÛtÕ6ÑBÐ:Ñ:Ì+Ô@Ñ+Ö:ÍBÔ8Û^Ù8Ñ8ÛJÏBÐ�äªoäBâ

I² Ã��IÅI¶ ¸å,p¿·½IÇ6ÅI¶õ æBËbÙ8ÐyÓ8Ë:Ô/�:ÙHÔ3ÎBË_ÒHÏnÑHÝ:Í�ÕpÐJÑ:î3øJÏ@ÌaØ:Ù@Ï_Ì@æBËyÑ:Ó8Ï@Í8ÎHË^ÌnÌ8ÏBÐyÔBÏ@Ó@Ï:ÌBÌHÍ@ÒHÑBÒBÏnÒHÏÒHÏBÐHË:ÔHÌ8ÎtÕ6ÑHî@æBËìâkT)Ë@ËJÖHÏwÒBÏHÝ:Í@ÔBÍHÙÞÑHÖBÛ:ÙHÔHÌwÚ8ËJÌ8Î^Ù8ÖHÑBÒBË^ÌÞØ:Ù8ÏxÌ@æBËhÑv×@Ñ:Ì@ÏhÒHÏÌHÙ@Ñ+÷HÖBÛJÏ@×�Õ/ÑèâóHÑHÒHÑ@Ìc�>çsÑOÕRÍ8÷3çsÏ:ÍBÌ�Ø:Ù8Ñ:ÍHÌ8Ø:Ù8ÏOÕvN ê�æeÏ�çìêTÚ@ÏOÕ6Î:Ï:ÔBÓ@Ï:Ô)ÎJÏ@Ì�ÑBËqÓ8Ë^Ô/�:ÙBÔ8ÎHË õ êÚ8ËJÒHÏ3ÐHË^Ì>Ò@ÏHÝ:ÍHÔBÍ�ÕYË^ÌDÌ@ÏBÛ^Ù@ÍBÔ8ÎJÏ@Ì+Ú8Ë^Ì8Î:Ù@Ö@ÑHÒBË:Ìëô­�®è°ªé�¥7°f®>§ãô¤ò�ÌHÌ8Ë@ÓHÍ@ÑBÎ^Í1ç^Í@ÒHÑ@ÒHÏ+ÒBÑ@Ì>Ë^Ú@Ï�Õ/ÑHî8øJÏ@Ì-ä>ÏEïsú

Z) X . (Y . Z (X . Y) .

Z) (Y X Z Y) (X

=++=++

ê ¥_ë�©�È�ì�§ãôíHËHÐ^Ù8ÎBÑBÎ^Í)ç^Í@ÒBÑHÒHÏ�ÒBÑ:ÌUË^Ú@ÏOÕ/Ñ@î8ø:Ï:Ì-ä,ÏDïJú

Y . XX . Y

X Y Y X

=+=+

îf¥�®>¯�¥7°f®>§ãô¡ÏHÖHÏBÐBÏ:Ô8ÎHËrÙBÔHÍ8Î:÷OÕRÍ8Ë�Ú@ÑOÕ/Ñ+Ñ>Ë^Ú@Ï�Õ/Ñ@î@æBËDïsúúBÐaÏHÖHÏBÐHÏ@Ô8ÎHËaåjÙHÔHÍ8ÎB÷OÕ=Í8Ë�Ø^Ù@Ñ@ÔBÒBËaÏHÖHÏèê£ÔHÙ)ÐJÑ�Ë^Ú@ÏOÕ/ÑBî@æBËìê-Õ/ÏHÖBÑ@ÓHÍ8Ë^Ô8Ñ:Ô@ÒBËJðBÌ@ÏÓ8ËHÐ+Ë^Ù8ÎtÕmËrÏHÖHÏ3ÐHÏ:Ô8ÎHË�N êUÕRÏ@ÌHÙ@Ö3ÎHÑrÔ8ËrÚ�Õ'à^Ú�ÕRÍ8Ë-ÏHÖBÏBÐJÏ@Ô3ÎHËQN â

X 0 X =+ ô þkåDË-ÏHÖHÏ8ÐJÏ@Ô8ÎBË�ÙHÔBÍ)ÎJ÷OÕ=Í3ËrÚ8ÑOÕ/Ñ+Ñ+Ë:ÚBÏOÕ/Ñ:î8æ3Ë+ïsú

Page 21: Logica Programacao Aplicada V2.2008

21

ï ©�ðu®�Êf§ãô¬Ï8ÖHÏBÐJÏ:Ô1ÎHË�ÙBÔHÍ)ÎJ÷OÕ/Í8ËrÚ8Ñ�Õ/Ñ-ÑDË^ÚBÏOÕ/Ñ@î@æ3Ë�äúBÐaÏHÖHÏBÐHÏ@Ô8ÎHËaåjÙHÔHÍ8ÎB÷OÕ=Í8Ë�Ø^Ù@Ñ@ÔBÒBËaÏHÖHÏèê£ÔHÙ)ÐJÑ�Ë^Ú@ÏOÕ/ÑBî@æBËìê-Õ/ÏHÖBÑ@ÓHÍ8Ë^Ô8Ñ:Ô@ÒBËJðBÌ@ÏÓ8ËHÐ+Ë^Ù8ÎtÕmËrÏHÖHÏ3ÐHÏ:Ô8ÎHË�N êUÕRÏ@ÌHÙ@Ö3ÎHÑrÔ8ËrÚ�Õ'à^Ú�ÕRÍ8Ë-ÏHÖBÏBÐJÏ@Ô3ÎHËQN â

X 1X . = ôuü+å+Ë-ÏBÖHÏBÐJÏ@Ô)ÎHË�ÙHÔ8Í8ÎJ÷OÕRÍ)Ë�Ú8Ñ�Õ/Ñ-ÑDË^Ú8ÏOÕ/Ñ@î@æ3Ë�äï ©ñ°�ÈèÊf§ãô¬ÒBÍHÌ8ÎtÕ=Í3×HÙ8Î^Í)ç^Í8ÒHÑHÒ@Ï+ÒHÏ�ä+Ì8Ë^×�Õ/Ï,ïsú

X . Z X . Y Z) X . (Y +=+ê ¥aòpÊ%§ãô¬Ò@Í@Ì8ÎtÕ=ÍH×3Ù8Î^Í)ç^Í8ÒHÑHÒHÏ�ÒBÏEïJúrÌ8Ë^×�Õ/Ï�ÑDË^Ú8ÏOÕ6Ñ:î@æBËkä

Z) Y) . (X (X (Y . Z) X ++=+ê�ó Ê�°@é�§ãôXä=Ü^ÍHÌ8ÎJû8ÔHÓHÍ@Ñ+ÒBÏrÙ3Ð-ÏHÖBÏ3ÐJÏ:Ô8ÎHËrÓ3ËHÐ^Ú8ÖHÏ3ÐJÏ:Ô)ÎHË4dÙ@ÑHÖ3Ø^Ù@ÏOÕ«Ø^Ù@Ï�Ì8Ï��HÑØN�ÏBÜ^Í@Ì)ÎJÏ�Ù)Ð�Ó8ËHÐ:Ú@Ö@ÏBÐJÏ@Ô8ÎBËkÒBÏØNkÎJÑHÖDØ:Ù@Ïùô

1XX

0XX

=+

=⋅

ïdÌkÚ)Ë^Ì8Î^Ù8ÖBÑHÒBË^Ì+ÒHÏkü+ÑkDUÎ:ûBÐ-ÏBØ^ÙHÍ1çsÑHÖHÏ@Ô)ÎJÏ:Ì�Ô@Ñr÷HÖ)ÛJÏ:×�Õ6Ñ+ÎtÕ/Ñ3Ò:ÍHÓHÍ8ËJÔ@ÑHÖùâ�s@÷Ë^Ì-Ú)Ë^Ì8Î^Ù8Ö@ÑHÒBË^ÌDý�Ï��EÌ@æBË�ÏBÜ^Ó8Ö@ÙHÌHÍ)çJË:Ì+ÒHÑ+÷HÖ3ÛJÏ:×�Õ/Ñ+Ò@ÏÌT8ËBËHÖHÏùâò�Ì Õ/ÏBÛOÕ/Ñ:Ì�Ú8Ñ�Õ/Ñ ßRáèê�2�3�Ï�ô>õbÌ@æBË_çs÷HÖ:Í@Ò8Ñ:Ì�Ô@Ñ�÷HÖ3ÛHÏ:×�Õ6Ñ�Ò@Ï�T8ËHËHÖHÏ�Ï�ÑË^Ú@ÏOÕ6Ñ:î@æBËkä,ÎJÏ3ÐrÚ�Õ=Í8Ë�Õ=Í@ÒHÑ@ÒBÏrÌ)Ë:×�Õ/Ï-ÑDËJÚ@ÏOÕ6Ñ:î8æBËDïsúèâö�¥7° ì�ð ÷�©�ð<¨{°�ì�ð�ì�¥ãô F õ Ï ÌBÙ@×HÌ8Î^Í)Î^ÙHÍ�ÕmÐBË^Ì ÔBÙ8ÐJÑ Ï3Ü:Ú�Õ/Ï:Ì@Ì8æ3Ë Ö3àHÛ^ÍHÓ@Ñ ËÌHö8Ð^×)ËJÖBË�ÒHÑ�Ë^Ú@ÏOÕ/Ñ8î@æBËQïsú�Ú8ÏHÖBËjÌHö8Ð:×8ËHÖBËjÒHÑQË^Ú@Ï�Õ6Ñ:î@æBËcänßRÏ�ç^ÍHÓ@Ï^ð/çsÏOÕ=Ì3ÑHáèêÌHÙH×HÌ)Î^Í8Î^ÙBÍ�Õ6ÐHË^Ì,ËQÒ:ö)Û:Í8ÎHË-þ�Ú)Ë�ÕEüjßRÏ+çdÍ3Ó@Ï^ð1ç^Ï�Õ=Ì@ÑHáùê¬Ï:Ô8ÎHæBË-Ë:×3ÎJÏOÕ/Ï3ÐHË^Ì-Ù)ÐJÑÔ8ËBçsÑ ÏBÜ^Ú�ÕmÏ:ÌHÌ@æBË êcÎ:Ñ3Ð^×@åBÐ çJÏOÕ6ÒHÑBÒHÏ:Í�ÕRÑèêaÒHÏ@Ô8ËHÐ^ÍBÔ8ÑHÒHÑ óHú/ò�O�Ò@Ñ ÏBÜJÚ�Õ/Ï:ÌBÌ8æBËËtÕ=Í8Û:ÍHÔ@ÑHÖùâqFä)ÜìâHô þ�eSN�dQN�ø Ú8Ë:Ì8Î:Ù@ÖHÑBÒBËÉ�

þUø üïsú�ß$e^áZø ä�ß�âIáüyâùN�dQN�ø Ú8Ë:Ì8Î:Ù@ÖHÑBÒB˱H

ä)ÜìâHô£ß�NÌe±æ�áSeZç�dØN�enß)æUe�çJáïsú�ß$e^áZø ä�ß�âIáß�Nwâ�æ�á_âWç�dØNxâUß)ævâ5çJá

I² Ñ�Û ¿ÄºK¼Oºg¾m¸ÉÅg¶@Çpº�"»ºK¿·½$&+ÅIºI¶B¿ÄÀIÂmµÁÃƽg¶ò�ÌyÕ/ÏHÖHÑ:î)ø:Ï:ÌqÖBàHÛ^Í3Ó@Ñ:Ì�Ú8ËJÒ@Ï3ÐeÌ)ÏOÕ�Õ/Ï:Ú�Õ/ÏHÌ8Ï:Ô8ÎJÑBÒHÑ@ÌqÑBÎtÕ/Ñ)çJå:ÌqÒHÏqÙ8ÐaÚ@ÏBØ^Ù8Ï:Ô8ËÓHÍ�Õ=ÓBÙHÍ8ÎHË Ö)àHÛ^ÍHÓ)Ë Ó)ËHÐ ÓBñ@Ñ%çsÏ:Ìãê ×@ÑBÎ:ÏOÕRÍ@Ñ Ï Ö�YBÐ^Ú3ÑHÒHÑèâ ò�Ì ÓHñ@Ñ%çsÏ:ÌÕ/Ï:Ú�Õ6Ï:Ì@Ï:Ô)Î:ÑBÐ Ñ@Ì çsÑOÕ6Í@÷3çsÏ:Í3Ì Ï Ñ Ì@Ñ:ö3ÒHÑèê ç:ÏOÕ/ÒHÑHÒ3Ï:Í�Õ/Ñ Ë:Ù ÝBÑHÖ:Ì@Ñèê åÕ/Ï:Ú�Õ6Ï:Ì@Ï:Ô)Î:ÑHÒHÑ�Ú8ËOÕ�Ù8ÐJÑ�Ö�Y8Ð:Ú@ÑHÒBÑèêYØ^Ù8Ï�Ë�Õ/Ñ�Ñ:Ó8Ï:Ô@ÒBÏOÕ6÷�ßKçsÏOÕ6ÒBÑHÒBÏ:Í�Õ6ËJáqË^Ù�Ì@ÏÐJÑ:Ô8ÎHÏOÕ/÷+ÑHÚ@ÑBÛJÑBÒBÑcßRÝHÑ3Ö:Ì8ËJáëâïdÌwÏHÖBÏBÐJÏ:Ô8Î3Ë^ÌwÒHÏ ÕRÏHÖHÑ:î)øHÏ:ÌwÖ3àBÛ^ÍHÓ@Ñ:ÌhÌ@æBË�Ù3Î:Í@Ö:Í@íBÑBÒBË^ÌvÚ8ÑOÕ/ÑhÑ:Ù)Ü^Í@Ö:Í8ÑOÕnÑçdÍHÌHÙ8ÑHÖ:Í@íBÑHî@æBËbÒHÏyÚ3Ë:Ì8Î^Ù@ÖHÑ3ÒBË^ÌeÏeÎJÏBËOÕ/ÏBÐJÑ:Ì¢êDÐJÑ:ÌeÎJÏBÐ�Ù)ÐHÑyÑ:Ú8Ö:ÍBÓ@Ñ:î@æ3Ë�×@Ï3ÐÐJÑ:ÍHÌ ÒHÏHÝ:ÍHÔBÍBÒHÑ Ï3Ð Ñ:ÓHÍ)Ë^Ô8ÑBÐJÏ@Ô8ÎHË^Ì Ï@ÖHå3ÎtÕRÍHÓ8Ë^Ì Ïùê Ó)ËHÐ ÑHÖBÛ^Ù)ÐJÑ:ÌÐHËJÒ:Í8Ý:ÍHÓ@Ñ@î3øJÏ:Ìëê Ó8ËHÐ3Ë Ö:ÍBÔ8Û^Ù@Ñ%ÛJÏBÐ ÒHÏ Ú�Õ6ËHÛ�Õ/ÑBÐHÑ:î8æBË ÒBÏ Ó1Ë^Ô8ÎtÕ6ËHÖHÑHÒ8ËOÕ/Ï:ÌÚ�Õ6ËHÛOÕ/ÑBÐJ÷%ç^Ï:ÍHÌëâ

Page 22: Logica Programacao Aplicada V2.2008

22

L�ÑOÕ=Í8÷3çsÏ:ÍBÌùô ^ñ@Ñ%çsÏ:Ì Ó)ËBÐ Ò3Ë^ÍHÌ Ï:Ì8ÎHÑHÒ8Ë:Ìß/ÓHñ8Ñ3çsÏ ÝHÏ:ÓBñ@ÑBÒHÑ ò�d^üëê ÓBñ@Ñ)çJÏÑ:×@Ï�Õ6ÎJÑ-ò�dHþJáùâ�HË@ÐjÏBÖHÑ:ÌQÐHË:Ô8Î:Ñ:ðÌ@Ï+Ñ-ÖBàHÛ@ÍHÓ@Ñ-Ò8Ñ:Ì-ÓHñ8Ñ%çsÏ:Ìãâ

A e A

õ Ñ:ö@ÒBÑèô O{YBÐ:Ú@ÑHÒHÑ>Ú@ÑOÕ/Ñ+ÌHÍHÔ@ÑHÖ@Í8íHÑ:î8æBËßRÖ�Y3Ð^Ú@ÑHÒHÑDÑ:Ó@Ï:Ì3Ñ�O_ddüãê Ö�Y3Ð^Ú8ÑHÒHÑÑ:Ú@Ñ3ÛJÑHÒHÑPO_dJþJá

L

ïdÚ@ÏOÕ6Ñ:î@æBËkäãô �>ÑDË^Ú@ÏOÕmÑ:î@æBË�ÖBàHÛ^ÍHÓ8Ñrä,Ï:Ô)ÎtÕ/ÏÑ:Ì>Ò:Ù@Ñ:Ì�çsÑOÕ=Í@÷1çsÏ:ÍHÌëâ = A . BA B

ïdÚ@ÏOÕ6Ñ:î@æBË,ïsúèô �kÑ�Ë^Ú8ÏOÕ/Ñ:îBæ3ËjÖ3àHÛ:ÍHÓ@ÑkïdÙQÏ@Ô8Î�Õ6ÏÑ:Ì>Ò:Ù@Ñ:Ì�çsÑOÕ=Í@÷1çsÏ:ÍHÌëâ

A

B = A + B

^Í�Õ=ÓBÙHÍ8ÎHËÖBàHÛ^ÍBÓ8Ëìô

ï�ÓBÍ�Õ=ÓHÙHÍ1ÎHËkÑ:Ì8ÌHÙ8ÐJÏ+Ñ�Ì@Ï3Û^ÙBÍHÔ8Î:ÏÝBËtÕmÐJÑèô

L+

V-

Lógica dechaves

Exempl o: Expr essão l ógi ca óHÑHÒHÑ+ÑrÌ8Ï8Û^ÙHÍHÔ)ÎHÏ-ÏBÜ^ÚsÕ/Ï:ÌHÌBæ3ËkÖ3àBÛ^ÍHÓ@Ñèê Ð@Ë^Ô8ÎHÏDË�ÓBÍ�Õ=ÓBÙ@Í8ÎHË-Ö3àHÛ:ÍHÓ8ËrÓ8ËHÐÓHñ@Ñ3çJÏ:Ìëê Ö/YBÐ^Ú@ÑBÒBÑ-Ïr×)ÑBÎJÏOÕ/Í8Ñèâä)Ü^Ú�Õ6Ï:ÌHÌ@æ3ËrÖBàHÛ:ÍBÓ@Ñèô

DDCBAL +⋅+⋅=D

C D

A B

L+V

-

I² Úf·pºIÅ+" ºg¼t½I¶Hº�"»ºK¿·½$&$ÅpºI¶B¿ÄÀIÂmµÁÃƽg¶

ú_û'ü>ýªû'þIÿ���� AA =

ú_û'ü>ýªû'þIÿ���� A...AAA =+++A

A� A

ú_û'ü>ýªû'þIÿ���� AAAA =⋅⋅⋅⋅⋅⋅ A A A � A

ú_û'ü>ýªû'þIÿ�� 11A =+A

1

� 1

Page 23: Logica Programacao Aplicada V2.2008

23

ú_û'ü>ýªû'þIÿ ��� 00A =⋅ A 0 � 0

ú_û'ü>ýªû'þIÿ���� A1A =⋅ A 1 � A

ú_û'ü>ýªû'þIÿ���� A0A =+A

0

� A

ú_û'ü>ýªû'þIÿ���� 0AA =⋅ A A � 0

ú_û'ü>ýªû'þIÿ���1AA =+

A

A

� 1

ú_û'ü>ýªû'þIÿ������ ABAA =⋅+A

A B

� A

ú_û'ü>ýªû'þIÿ������ABAA

BAAA

)BA(A

=⋅+=⋅+⋅

=+⋅ A

BA � A

ú_û'ü>ýªû'þIÿ������BABAA +=⋅+

A

A B

� A

B

ú_û'ü>ýªû'þIÿ������ BABA0BAAA)BA(A ⋅=⋅+=⋅+⋅=+⋅ú_û'ü>ýªû'þIÿ�����

AA =é�ÏBËtÕ6ÏBÐJÑ:ÌDÒHÏ-óBÏ�RHËtÕ6ÛBÑ:Ôëô�+Ó8ËBÐ^Ú8Ë^Ì)Î@Ë�Ú8ËOÕYÒ:Ù@Ñ:ÌDÚ@ÑOÕ'ÎHÏ:ÌëâF/ï�Ó)ËHÐ^Ú@ÖBÏ3ÐJÏ:Ô8Î@ËkÒHÏ�Ù8ÐJÑ�äpÌ)ËHÐJÑ�ä«ÒHÏ-ÏHÖHÏ3Ð:Ï:Ô8ÎHË:Ì�å�Í1Û^Ù@ÑHÖ-Ñ3Ë�ä Ú�Õ6ËJÒ:Ù3ÎHËoä ÒBË^ÌÌ@Ï:ÙHÌ+Ó8ËHÐ:ÚBÖHÏBÐJÏ@Ô)ÎHË^ÌëâfF

....DCBA)....DCBA( ⋅⋅⋅=++++F/ïbÓ8ËHÐ^Ú8ÖHÏBÐJÏ@Ô)ÎHËnÒHÏeÙ8Ð äpÚ�ÕmËJÒ@Ù8ÎHËpä>ÒBÏaÏHÖHÏBÐJÏ@Ô8ÎBË^ÌcåeÍ8Û^Ù8ÑHÖ � äpÌ8ËHÐJÑ�ä,ÒBË^ÌÌ@Ï:ÙHÌ+Ó8ËHÐ:ÚBÖHÏBÐJÏ@Ô)ÎHË^ÌëâfF

....DCBA)....DCBA( +++=⋅⋅⋅⋅

Exempl o: Mi ni mi zação

R^ÍHÔHÍ)Ð^Í@íHÏ>Ñ-ÏBÜ:Ú�Õ/Ï:ÌHÌ@æ%Ë�Ù8ÎJÍ8Ö:Í@íBÑ@Ô@ÒBË�Ú)Ë^Ì3Î^Ù@ÖBÑHÒ3Ë^Ì>Ï+ÎHÏ8ËtÕ/ÏBÐHÑ@Ìëâ

BCABC)1BC(ABCAC.B.AF

BCA)CBA(F

)BCA()CBA(F

)BCA()CBA(F

++=+++=+++=

+++++=

⋅⋅++⋅=

⋅⋅⋅+⋅=

Page 24: Logica Programacao Aplicada V2.2008

24

Exempl o: Mi ni mi zação

R^ÍHÔHÍ)Ð^Í@íHÏ>Ñ-ÏBÜ:Ú�Õ/Ï:ÌHÌ@æ%Ë�Ù8ÎJÍ8Ö:Í@íBÑ@Ô@ÒBË�Ú)Ë^Ì3Î^Ù@ÖBÑHÒ3Ë^Ì>Ï+ÎHÏ8ËtÕ/ÏBÐHÑ@Ìëâ

YF

)X1(YXYYF

YXYXXF

YX)YX(YX)YX(F

YXYXF

=

+⋅=⋅+=

+⋅+⋅=

+⋅+=+⋅⋅=

++⋅=

I² ��� ,'¾+&$ÅIºp¶�Æ'ÅIÅp¿·ºK½I¾p½K¶ï Ó8Ë^ÔHÓ8Ï:Í)ÎHËvÒBÏhÝ@ÙHÔHî8æBËw×8ËHË:ÖHÏBÑ:Ô@Ñ�å�ËÞÐJÏHÌ)ÐHËvÒHÑ�÷HÖ3ÛJÏ:×�Õ/Ñ_ÎtÕ/ÑHÒ:ÍBÓHÍ8ËJÔ8ÑHÖèâò�ÌHÌHÍ)Ðìê�Ø:Ù@ÑHÖBØJÙ8ÏOÕ-ÏBÜ:Ú�Õ6Ï:ÌHÌ@æ3ËaÑ@Ö3ÛJå:×�Õ=ÍBÓ@Ñ�Ú8ËJÒHÏ�Ì@ÏOÕ-Ó8Ë:ÔHÌHÍ8ÒHÏ�Õ/ÑBÒHÑcÓ8Ë@ÐHËcÙ8ÐJÑÝ:ÙHÔHî8æBË�×)Ë@ËJÖHÏHÑ@Ô8Ñèâ

Exempl o: Função Bool eana

óHÑHÒHÑ+Ñ-Ý@Ù@ÔHî@æBËèê Ñ:ÓHñ@ÏEË+ç^ÑBÖBËtÕXÒHÏ�rdßKþìêIüëêÆþHáBCBABA)C,B,A(F ++⋅+⋅=

Ï:Ô8ÎJæ3Ëìô1101010)0,1,0(F =++⋅+⋅=

8ÑOÕ/Ñ�Ù8ÐJÑ>Ý:ÙHÔHî8æ3Ë�Ó8ËHÐ�Ô,ç^Ñ�Õ=Í@÷%çJÏ:ÍHÌëê Ë�ÎHËHÎHÑHÖ+ÒHÏ�Ó8ËBÐJ×HÍHÔ@Ñ@î)øJÏ@Ì-Ú)Ë^ÌHÌHö)ç:Ï:ÍHÌÒHÏ+þ-ÏrüDå-ÒHÑBÒ3Ë�Ú8ËtÕ����3â ÊBË-Ï8ÜJÏBÐ^Ú8ÖBËìê§Ô_dC�tê Ö8ËHÛHË+ËrÔ��8ÐHÏ�Õ6ËrÒBÏÓ8ËHÐ^×BÍHÔ@Ñ:î)ø:Ï:Ì�å Ù dU\èâ

I² �· ½$.'ºg¿Á½g¶a¹Æº'"»ÇK½pÇ'º4dÙ@ÑHÖ3Ø^Ù@ÏOÕQØ:Ù8ÏyÌ@Ï��HÑyÑ_ÏBÜHÚ�Õ/Ï:ÌBÌ8æBË�×8ËHËJÖ@ÏHÑ@Ô@Ñèê�Ú)ËJÒ@Ï^ð3Ì@ÏeË^×8ÎHÏ�ÕqÙ)ÐJÑnÎJÑ:×8ÏHÖHÑÓ8Ë^ÔHñ8Ï:ÓHÍ@ÒBÑjÓ8ËBÐHËjÎBÑ:×@ÏHÖBÑ�ç^Ï�Õ/ÒHÑBÒHÏ�Ë^Ô8ÒHÏjÌ@Ï�Ñ:Ú�Õ/Ï:Ì8Ï:Ô)ÎJÑBÐ�ÎHËHÒ3Ë^ÌkË^Ì�çsÑHÖBËOÕ/Ï:ÌØ^Ù@Ï ÑxÝ:ÙHÔHîBæ3Ë Ú8ËBÒHÏ Ñ:Ì8ÌHÙ8Ð^Í�Õ_Ø^Ù@Ñ@Ô@ÒBË ÑHÌhçsÑOÕRÍ8÷3çsÏ:ÍBÌ Ñ:ÌHÌBÙ)ÐHÏBÐ ÎHËJÒHÑHÌ�Ñ:ÌÓ8ËHÐ^×BÍHÔ@Ñ:î)ø:Ï:Ì�Ú)Ë^ÌBÌHö1çsÏ:Í@ÌQÒHÏ�þoäIÌQÏ�ü�äpÌëâ«ïaÑ@Ù8ÎHËOÕ>ÒHÑ�ÎJÑ:×8Ï@ÖHÑ�çsÏOÕ/ÒHÑBÒHÏqÝBË:Í^ñ@ÑOÕ6ÖHÏ:Ì OBÙ8Î_^�Í@ÒBÛ óBËJÒBÛ@Ì8Ë^Ô ß6ü/\�� ðBü/\�b{\Háèê�ÐJÑ:ÍHÌ Ó8Ë:ÔBñ@Ï:ÓBÍ@Ò8Ë Ó8ËHÐHË O8Ï_^�ÍHÌJÑOÕHÕmËJÖèê ÏHÌHÓ�Õ=Í)ÎBËtÕ�ÒBË�Ó8Ë^Ô3ÎBË�ÍBÔ8ÝHÑ:Ô8Î^Í8ÖÉF'ò�Ö@ÍHÓ8ÏrÔ)Ë�)ÑHöHÌ�ÒBÑ@ÌQRJÑOÕ6Ñ3çdÍ@Ö:ñ3Ñ:Ì�FtâïdÌ-Ú8Ñ:ÌHÌ8Ë:Ì�Ú@ÑOÕ6Ñ+ÑrÓ�Õ'Í@Ñ:î@æ8Ë-ÒHÑEÎJÑ:×@ÏHÖBÑ-Ì@æBË+Ë:Ì-Ì8ÏBÛ^ÙBÍ@Ô8ÎJÏ:ÌãôtÕ=Í@Ñ@î@æBË-Ò@Ñ:Ì-Ó)ËHÖ:ÙHÔ@Ñ:Ì,ÒHÏ,çJÑOÕ=Í8÷%çsÏ:ÍHÌ â��Ó�Õ=Í@ÑBÒHÑjÙ8ÐBÑcÓ)ËHÖ:ÙHÔ@Ñ�Ú@ÑOÕ6Ñ�Ó8Ñ@ÒHÑ�çsÑOÕRÍ8÷3çsÏHÖèê�Ë^Ô8ÒBÏjÑ�ÐJÑHÍHÌ�ÌBÍ)Û^ÔHÍ@Ý@ÍHÓ@ÑBÎHÍ)çsÑå�Ó)ËJÖBË^Ó@Ñ8ÒHÑ�ÐHÑ@ÍHÌ � Ï@Ì8Ø^Ù@Ï�Õ6ÒHÑèâ õ ÏqÑ�Ý@ÙBÔHî@æBËQÎJÏBÐgÀ-çsÑOÕ=Í8÷%çsÏ:Í@ÌãêYË�Ô��3ÐJÏ�Õ6ËÒHÏ ÖHÍHÔHñ8Ñ:Ì ÒHÏ Ó8ËHÐ^×8ÍHÔ@Ñ:î8æBË å ���8ân� Ô@Ï:Ì)ÎJÑ Ó8ËHÖ@ÙHÔ@Ñ Ø^Ù@Ï Ó)ËJÖBË^Ó8ÑBÐHË^Ì Ë^ÌF/çsÏOÕRÌHÍHÔHñ)ËJÌ�FtâtÕ=Í@Ñ@î@æBË-Ò@Ñ:Ì-Ó)ËHÖ:ÙHÔ@Ñ:ÌDÍHÔ8Î:Ï�Õ6ÐJÏBÒ@Í@÷OÕ=Í@Ñ@Ì âÊHÏ:Ì8ÎHÑ:Ì Ó8Ë:Ö@ÙHÔ@Ñ:ÌwÌ@æBË Ó)ËHÖBË^Ó@ÑBÒBÑ:Ì Ì)ËHÐJÑ:ÌëêqÚ�Õ6ËJÒHÙ)ÎHË^ÌvÏ Ó3ËHÐ:Ú@ÖBÏBÐJÏ@Ô8ÎHË^ÌwØ:Ù@ÏÝHÑ:ÓHÍ8Ö:Í8ÎJÏ3Ð Ñ Ñ:Ô@÷HÖ@ÍBÌ@Ï Ò8Ë Õ6Ï:ÌHÙ@Ö8ÎJÑHÒBË Ý:ÍHÔBÑHÖùâ ï Ô��8ÐBÏOÕ6Ë ÒHÏ Ó8Ë:Ö:ÙBÔ@Ñ:ÌÒHÏ:Ú@Ï@Ô@ÒHÏ+Ò@ÑrÓ8ËBÐ:Ú@ÖHÏBÜ^Í)ÒHÑHÒHÏ>ÒHÑ+Ý@ÙHÔHî@æBË-Ï�ÒHÑ+Ï3Ü^Ú@Ï�Õ=Í@û@Ô@ÓHÍ@Ñ+ÒBÏ+Ñ:Ô@÷BÖ:ÍHÌ@Ïèâ

Page 25: Logica Programacao Aplicada V2.2008

25

�Õ/ÏHÏ@ÔHÓHñHÍ)Ð:Ï:Ô8ÎHË+ÒHÑ:Ì-Ó1ËJÖ:ÙHÔBÑ@Ì-ÍBÔ)ÎJÏOÕ6ÐJÏBÒ:ÍB÷OÕ=Í8Ñ:Ì âò�Ú@Ö:ÍBÓ@Ñ:î@æ3ËrÒBË^ÌDÚ8Ë^Ì8Î^Ù)ÖHÑHÒBËJÌ>ÏDÎHÏBËtÕ/ÏBÐHÑ:Ì�Ô@Ñ+Ï3Ü^Ú�Õ6Ï:ÌHÌ8æ8ËkÒHÏ>Ó@ÑBÒHÑ�Ó8ËJÖ:ÙHÔ3Ñèâïd×8ÎJÏ@ÔHî@æBË�ÒBË+çJÑBÖBËtÕ�Ò3Ñ-Ý:Ù@ÔBî@æBË�Ú@ÑOÕ/Ñ�Ó@Ñ@ÒHÑ�Ó8ËBÐ^×HÍBÔ@Ñ:î8æ8Ë âõ ÙH×HÌ)Î^Í8Î^ÙBÍ@î@æBË Ï Ó@÷HÖ:ÓBÙ8ÖBË Ò3Ë:Ì Õ6Ï:ÌHÙ@ÖBÎ@ÑHÒBË^Ì Ú8ÑOÕ=ÓHÍ8Ñ:ÍBÌ Ï@ÔHÓ)Ë^Ô3ÎtÕ/Ñ:Ô@Ò3Ë ÑÏBÜ^Ú�Õ6Ï:ÌHÌ@æ3ËrÝ:ÍHÔ8ÑBÖèâ

Exempl o: Tabel a ver dade

HË^ÔHÌBÍ@ÒHÏOÕ6Ï�Ñ-Ý@ÙBÔHî@æBË�rdßgò ê$Tãê)JáùâWRHË^Ô8ÎHÏ-ÌHÙ@ÑDÎHÑ:×@ÏBÖHÑEç^ÏOÕ/ÒHÑBÒBÏ+Ï-Ï@ÔHÓ8Ë^Ô8Î�Õ/ÏË^Ì�Õ6Ï:ÌHÙ@Ö3Î:ÑHÒBË^ÌãâCBABA)C,B,A(F ⋅⋅+⋅=

! " #B B.A B.A A C.B.A

$% % % & % & & % &% % & & % & & % &% & % % % & & % &% & & % % & & & && % % & & % % % %& % & & & % % % %& & % % % & % % && & & % % & % % &

Exempl o: Tabel a ver dade

F(A,B) A B A C= ⋅ + ⋅= ⋅ + ⋅= ⋅ + ⋅= ⋅ + ⋅

! " #A B⋅⋅⋅⋅ A.C A C⋅⋅⋅⋅

$% % % % % & &% % & % % & &% & % % % & &% & & % % & && % % % % & && % & % & % %& & % & % % && & & & & & &

I² ±('�Ósµ·¾KµÈ¸Éº%"»¼tÅI¶4dÙ@Ñ:Ô8ÒBË Ñ@Ì Ý@ÙBÔHî8øJÏHÌ T8ËBËHÖHÏHÑ:ÔBÑ@Ì Ý3ËtÕ/Ñ3Ð Ñ:Ú�Õ6Ï@Ì@Ï:Ô8ÎHÑ@ÒHÑ:ÌëêcçdÍ8ÐBËJÌ Ø:Ù@Ï Ï@ÖHÑ@ÌÚ8ËJÒHÏ3Ð�Ì@Ï�ÕTÒHÑ�Ì8ÏBÛ^ÙHÍHÔ1ÎJÏ-Ý8ËOÕ6ÐJÑùô

CACBACBA)C,B,A(F ⋅+⋅⋅+⋅⋅=Ë^Ô@ÒHÏ�ò ênT Ï Ì8æ3Ë ÑHÌ çsÑ�ÕRÍ@÷3çsÏHÍHÌ ÒBÑ Ý@ÙBÔHî@æBËèâ�RJÑ:Ìãê_ËJ×BÌ@ÏOÕmçJÑ:Ô@ÒBË Ë^ÌÎJÏOÕ6ÐBË^Ì

CBA ⋅⋅ ÏCBA ⋅⋅ ÒBÑhÏ3Ø^Ù@ÑHî@æBËèê�Ú)ËHÒHÏ^ðBÌ8ÏwÔ)ËHÎJÑ�Õ�Ø^Ù@ÏbÎ:ÏBÐHË^Ì�Ò3Ë^ÍHÌ

Ú�Õ6ËJÒ@Ù8ÎHË^Ì�Ï:Ô)çHËJÖ3çJÏ:Ô8ÒBË�ÎHË:ÒHÑ:ÌqÑ@ÌQÎtÕ/û@ÌQç^ÑOÕ=Í8÷3çJÏ:ÍHÌqÒBÑ�Ý:ÙHÔHî8æ3Ëìâ£äBÌ8ÎJÏHÌ�Ò3Ë^ÍHÌÎJÏOÕ6ÐBË^Ì Ì8æBË Ë Ø:Ù@Ï ÓBñ@ÑBÐJÑ3ÐBË^Ì Ð^ÍHÔHÍ8ÎHÏOÕ6ÐHË:Ìãâxä8Ô8ÎJæBËìêbÐ^ÍBÔHÍ)ÎJÏ�Õ'ÐHË^Ì Ì@æBË ËÚ�Õ6ËJÒ@Ù8ÎHË�ÑHÖBÛJå@×�Õ=ÍHÓ8Ë�Ø^Ù@Ï�Ó8Ë:Ô8ÎHå3Ð�ÎHËJÒBÑ@Ì�Ñ@Ìkç^ÑOÕ=Í8÷3çJÏ:ÍHÌãê£Ó8Ë@Ð�Ë:Ù�Ì@ÏBÐj×@Ñ�ÕHÕ/ÑÒHÏeÔ@ÏBÛHÑ@î@æBËìêUÒHÏcÙ8ÐJÑjÝ:ÙBÔHîBæBËèâ ïaÎJÏOÕ6Ð8Ë

CA ⋅ Ô@æBËaåeÙ8ÐjÐ^ÍHÔBÍ3ÎJÏ�Õ6ÐHË_Ú)Ë:ÍHÌÔ@æBËrÓ8Ë^Ô8ÎHå8ÐkÑEçJÑOÕ=Í@÷3çHÏHÖÌTùâ

Page 26: Logica Programacao Aplicada V2.2008

26

ò�Ì ÎJÑ:×8Ï@ÖHÑ:Ì çsÏ�Õ/ÒHÑBÒHÏ Ú)ËHÒHÏBÐ ÎJÑBÐ:×@åBÐ Ì@Ï�Õ Ï3Ü^Ú�Õ/Ï@ÌBÌ@Ñ:Ì ÑBÎOÕ/Ñ%çså:Ì ÒBÏ Ù8ÐJÑÌ8ËHÐJÑ3ÎHàtÕ=Í8Ñ�ÒHÏ�Ì@Ï:Ù3ÌqÐ:ÍHÔHÍ8Î:Ï�Õ6ÐHË:Ìëâ¬ò_ÏBÜ^Ú�Õ/Ï:ÌBÌ@æ3ËjØ:Ù@ÏbÕRÏ:Ú�Õ/Ï@Ì8Ï:Ô)ÎJÑ�ÑqÎJÑ:×8ÏHÖHÑçsÏOÕ/ÒBÑHÒHÏqå�ÓBñ8ÑBÐJÑHÒBÑ�Ý3ËOÕ6ÐJÑqÚ@Ñ@Ò�Õ6æBËìêYÏjÌ8Ï�Ñ�ÐJÏ:Ì%ÐJÑ�Ó)Ë^Ô8ÎHåBÐjÙ8ÐBÑ�Ì8Ë@ÐJÑBÎHàOÕRÍ@ÑÒHÏ+Ð:ÍHÔHÍ8ÎHÏ�Õ6ÐHË^Ìãê§Ú@Ñ:ÌHÌ)ÑBÐHË^ÌDÑrÓBñ8ÑBÐJ÷^ð8ÖBÑ�ÒHÏ+ÝBËOÕ6ÐJÑ�Ú@ÑBÒ�Õ/æBË-Ò@ÍHÌ{�:ÙHÔ)Î^Í)çsÑèâò ÝBËOÕ6ÐJÑ Ò@ÍHÌ/�:ÙHÔ1Î^Í)çsÑ å Ï:ÔBÓ3Ë^Ô8ÎtÕ6ÑHÒHÑ Ñ@ÌHÌ)Ë^ÓBÍ@Ñ:Ô8ÒBË Ñ Ó@ÑBÒHÑ Õ/ÏHÌHÙ@ÖBÎHÑHÒBËçsÏOÕ/ÒBÑHÒHÏ:Í�Õ'Ë ß6ü@á Ú8ÑOÕ6Ñ Ñ ÝHÙHÔHî@æ3Ë Ì@Ï:Ù Ð:ÍHÔBÍ8ÎJÏ�Õ6ÐBË ÏBØ^ÙHÍ1çJÑHÖHÏ:Ô3ÎJÏèâ ïÐ^ÍHÔHÍ)ÎJÏOÕ6ÐBËyånÝBËOÕ6ÐJÑHÒ3ËbÌBÙH×HÌ8Î^Í1Î:ÙHÍHÔ@Ò8Ë_ÏBÐbÓ@ÑHÒHÑeÏ@ÖBÏBÐJÏ:Ô1ÎHËbÓ8ËHÐjçsÑHÖ3ËtÕrþyÒHÑÖ:ÍHÔHñ8ÑhÒHÏÞÓ8ËHÐ:×HÍHÔ8Ñ:îBæBËwÒ@Ñ�Î:Ñ:×8ÏHÖHÑÞÚ@ÏHÖHÑÞÌBÙ@ÑbçsÑ�ÕRÍ@÷3çsÏHÖ�×@ÑOÕHÕRÑBÒHÑèêQÏhÚBÑ�Õ/ÑÓ@ÑHÒHÑ+ÏHÖHÏ3Ð:Ï:Ô8ÎHË�Ó8ËHÐ+çHÑHÖBËtÕYü�ÒBÑDÎJÑ:×@ÏBÖHÑëê¬ÑEçJÑOÕ=Í8÷3çsÏBÖ-ÌHÍ8Ð:Ú8ÖHÏ@Ìëâò�ÌHÌHÍ)ÐìêXÚ8Ñ�Õ/ÑkÑ+ÎHÑ:×@Ï@ÖHÑDçJÏOÕ/ÒHÑBÒ3ÏkÑrÌ@ÏBÛ^ÙHÍdÕ�ê«Ì@Ù8ÑkÝBËOÕ6ÐHÑ�Ú8ÑHÒOÕ6æ3ËkÒ:ÍHÌ��:ÙHÔ)Î^Í1çsÑåèô

! " # $ )�*,+-*/.�0�13254�6% % % %% % & %% & % &

CBA ⋅⋅% & & %& % % &

CBA ⋅⋅& % & &CBA ⋅⋅& & % &CBA ⋅⋅& & & & CBA ⋅⋅

CBACBACBACBACBAF ⋅⋅+⋅⋅+⋅⋅+⋅⋅+⋅⋅=4dÙ@Ñ:Ô8ÒBË Ñ:Ì�ÎJÑ:×8ÏBÖHÑ:ÌvçsÏOÕ/Ò@ÑBÒHÏ Ì@æ3Ë Ù8Î:Í@Ö:Í@íHÑBÒHÑ@Ì ÏBÐ ÑHÖ3ÛHËtÕ=Í3ÎBÐHË^ÌëêeÌ@æBË Ñ:ÌÌ8ËJÖ:ÙBî8øJÏ:Ì ×8Ñ:ÌBÏHÑHÒBÑ:Ì ÏBÐ Ð^ÍHÔ3Í8ÎJÏOÕ6ÐBË^Ì Ø^ÙBÏ Ì@æBË ÐJÑ:ÍBÌ ÝOÕmÏBØ��@Ï:Ô)ÎJÏBÐ:Ï@Ô8ÎJÏÙHÌ@ÑHÒBÑ:Ìëâ

I² ± ±f· ½'.pºI¿·½K¶_¹Æº+" Çp½KÇpºJ½$#K¿·µ·ÃI½IÇp½K¶�7H½K¿ÄÂgÅ'"»µÈ¸É¼ãÅI¶4dÙ@Ñ:Ô8ÒBËvÑÞÓ8Ë^Ô)Î^ÍHÔBÙ@ÑHî@æBËhÒHÏÞÙ8ÐwÓ8Ë^Ô{�:ÙHÔ8ÎBËhÒHÏwÓ8ËBÐHÑ:Ô@ÒBË^ÌyÒHÏwÙ)ÐvÑHÖ3ÛHËtÕ=Í%ÎHÐHËÒHÏ:Ú@Ï@Ô@ÒHÏbÒHÏ�Ù8ÐHÑeçsÏ�Õ=Í8Ý:ÍHÓBÑ:î8æBËbÒHÑ:ÌyÏHÔ8ÎtÕ/ÑHÒBÑ:ÌyÝBËtÕRÔ8Ï:ÓHÍ@Ò8Ñ:ÌbÚ8ÏHÖBËÞÙ@ÌHÙ@÷OÕRÍ8ËèêÝHÑHíHÏ3ÐdðBÌ@ÏaçJÏ�Õ=Í@Ý:ÍBÓ8Ñ:î8øJÏ:Ì_Ö%àHÛ^ÍHÓ8ÑHÌnÒHÏ:Ì8ÎHÑ:Ì_Ï:Ô)ÎtÕ6ÑHÒHÑ@Ì_Ïèê+ÒBÏyÑ@Ó8ËtÕ/Ò3Ë�Ó8ËHÐ�ÑÑ3çsÑHÖ@Í@Ñ:î@æ3Ë ê Ú8ËJÒ8ÏBÐ Ì@Ï�Õ ÎHËHÐHÑBÒHÑ:Ì Ò:Í)çsÏ�Õ=Ì@Ñ:Ì Ñ@î8øJÏ:Ì Ò@Í@ÝHÏ�Õ/Ï@Ô8Î:Ï:Ìëâ ä8Ì)ÎJÏÎtÕ/Ñ:×8ÑHÖ:ñ8Ë Ô)Ë�Õ6ÐJÑBÖBÐJÏ@Ô8ÎHÏ å ÝHÏ:Í3ÎHË ×@Ñ@Ì@ÏHÑHÒ3Ë Ô@Ñ Ï3Ü:Ú@ÏOÕ=ÍBû:ÔHÓHÍ8Ñ ÒBËÚ�Õ6ËHÛOÕ/ÑBÐJÑBÒ8ËtÕ�ê ÐHÑ:Ì-Ù8ÐBÑ+ÎJÑH×8ÏHÖHÑ£çsÏOÕ/ÒHÑBÒHÏ-Ú8ËHÒHÏ+Ñ��@Ù@ÒHÑ�ÕTÏBÐ+Ð:ÙHÍ)ÎHË^Ì+Ó@Ñ:Ì8ËHÌëâäBÌHÓ8ËHÖ:ñ@Ï:Ô8Ò8ËdðBÌ@Ï Ó8Ë^Ô)çJÏ:Ô@Í@Ï@Ô8ÎJÏ3ÐJÏ8Ô8ÎJÏ Ñ:Ì çJÑOÕRÍ@÷3ç^Ï:ÍBÌëê�Ú8ËJÒBÏ8Ð Ì)ÏOÕxÐ@Ë^Ô8ÎJÑBÒBÑ:ÌÎJÑ:×@ÏBÖHÑ:Ì ç^Ï�Õ/ÒHÑBÒHÏ ×@ÑBÌ8ÎJÑ:Ô)ÎHÏ Ï:Ì@Ó@ÖHÑOÕ6Ï:Ó@ÏBÒBËOÕ/Ñ:Ìãê ÐHË^Ì8ÎOÕ/Ñ@Ô8ÒBË ÝBËtÕ6ÐHÑ:ÌÏBØ^ÙHÍ1çsÑHÖHÏ@Ô3ÎJÏ:Ì�ÒBÏkÑ:Ô8÷HÖ:ÍBÌ@Ï-ÒBË^ÌqÕ/Ï:ÌHÙ8ÖBÎJÑHÒ)Ë^ÌëâYä1ÐkÑHÖ3Û^ÙHÔHÌ+Ó@Ñ:Ì8Ë:ÌùêuÑ-Ï:ÌHÓ8Ë:Ö@ñ@ÑÒHÏ+çJÑOÕ=Í@÷%çJÏ:ÍHÌ-ÚBÏOÕ6Ð^Í)ÎHÏ�Ù8ÐaÕ/Ñ@Ì1ÎJÏ:Í8Ë�×@ÏBÐkÚ�Õ/Ï:ÓHÍ3Ì8ËQÒ3Ë^Ì�ÏOÕBÕ6Ë^Ì+Ó3ËHÐJÏBÎ:Í@ÒBË:Ì�ÏBÐÏ:Ô8ÎtÕ6ÑHÒHÑ:Ì ÒHÏ ÒBÑBÒBË^ÌëêaÖHÏ3ç^Ñ@Ô@ÒBË Ú8ÑOÕ/Ñ Ë ÙHÌBÙ@÷OÕ=Í8Ë ÐJÏ:ÔBÌ8ÑBÛJÏ:Ô@Ì Ú�Õ/Ï@ÓHÍHÌ@Ñ:Ì ÏÏHÖHÑ:×)ËtÕ/ÑHÒBÑHÌ-Ì@Ï3Û:ÙHÔ@ÒBËDË�Ó8ËJÔ{�:ÙHÔ)ÎBËkÒHÏ�Í8Î:Ï:ÔHÌ+ÍBÔHÓ)ËtÕHÕ/Ï3Î:ÑBÐJÏ:Ô)ÎHÏ�ÍHÔ@Ý3ËtÕ6ÐJÑHÒ)Ë^ÌëâòwÌ@ÏBÛ^ÙHÍ�ÕQÌ@æBËnÐHË:Ì)ÎtÕ/ÑHÒ8Ë:ÌaÒBË^Í@ÌaÏBÜJÏ3Ð^Ú@ÖBËJÌnÒBÏjçJÑHÖ:Í@ÒBÑ@î@æBËyÒHÏaÏ:Ô)ÎtÕ/ÑHÒBÑ:ÌeÒHÏÒHÑHÒBË:Ìëê ÏBÜJÏBÐ:Ú8ÖBË^Ì Ï:Ì3ÎJÏ:Ì Ø^Ù@Ï ÔBæBË Ú�Õ/Ï:ÓBÍBÌ@ÑOÕ=ÍBÑBÐ ÒHÏ Ù8ÐJÑ Ñ:Ô8÷HÖ:ÍHÌ8Ï Ú8ËtÕÎJÑ:×@ÏBÖHÑ:Ì çsÏ�Õ/ÒHÑBÒHÏ Ú@Ñ�Õ/Ñ Ì8Ï�Õ/Ï8Ð Í8Ð:Ú@ÖHÏ8ÐHÏ:Ô8ÎJÑHÒ%Ë^Ìëê ÐHÑ@Ì Ú8ËOÕ ÍHÌBÌ8Ë ÐHÏ:Ì)ÐHËÏ:ÌHÓ8ËHÖ:ñHÍ@Ò3ËJÌ-Ú@Ñ�Õ6Ñ+ÐHË:Ì)ÎtÕ/ÑOÕRÏ3ÐkÑ£çsÑHÖ:Í@ÒBÑHÒ@Ï-ÒBÑ+Ñ:Ô@÷BÖ:ÍHÌ8Ïëâ

Page 27: Logica Programacao Aplicada V2.2008

27

Exempl o: Tabel a ver dade

úBÐnÑHÖBÛHËOÕ=Í8ÎHÐBËnÖBûnÒ3Ë^ÍHÌaÔ��8ÐHÏOÕmË^ÌcÏaÒHÏ3çJÏjçJÏOÕ=Í@Ý:ÍBÓ@ÑOÕ�Ì@ÏjË^Ì�ÒBË:ÍHÌaÔ��8ÐJÏ�Õ6Ë:ÌÌ@æBË�Ú8Ë^ÌHÍ3Î:Í)çJË^ÌkË^ÙqÔ@Ï3ÛHÑBÎ^Í)çHË:Ìëâ õ Ï�Ù)ÐcÝ3ËtÕ�Ú)Ë^ÌHÍ)Î^Í%çJË�Ï�ËqË^Ù)ÎOÕ6ËcÔ8ÏBÛJÑBÎHÍ)çJËÑeÌ@Ñ:ö@ÒHÑjåaÝHÑHÖ@Ì8ÑèâØRHË:Ô)ÎJÏaÑjÎBÑ:×@ÏHÖHÑ�çJÏ�Õ/ÒHÑHÒ@ÏaÚBÑOÕ/ÑcÓ@ÑHÒBÑnÙ%ÐJÑjÒHÑ:ÌaÌ@Ñ:ö8ÒBÑ:Ìçs÷HÖ:Í8ÒHÑ:ÌëôL�ÑOÕ=Í8÷3çsÏ:ÍBÌùôïdÌ�Ò8Ë^ÍHÌ+Ô��8ÐJÏOÕmË:Ìëô¬Ý_LsÑOÕ=ü>Ï+Ý_LdÑ�Õ ò�Ì,ç^ÑOÕ=Í@÷%çJÏ:ÍHÌ>Ö3àHÛ^ÍHÓ@ÑBÌëôu×ÐL�ü�Ï+×�L 1@Ï:Ì8ÎOÕ=ÍHî8øHÏHÌëô

)ËJÒHÏ8Ð�Ì@Ï�ÕTÚ8Ë^ÌBÍ)Î^Í)çJË^ÌEË^Ù+Ô8ÏBÛJÑ3ÎJÍ)çJË^Ìëâó:Ù@Ñ:Ì�Ì@Ñ:ö8ÒBÑ:Ìëô�r%üjßRÒBËHÍHÌ-Ú)Ë:ÌHÍ8Î:Í%çJË^Ì@á+Ï�r ßRÒ3Ë^ÍHÌ�Ô@Ï3ÛHÑBÎ^Í)çHË:Ì@á×�L�üëô ÌBÏ�ß'Ý_L�Ñ�Õ=ü-8JþJá ÏHÔ8ÎJæBË ×qL�üaddüëê Ì8Ï:ÔBæBË ×ÐL�üadJþo6 õ Ï Ý_L�Ñ�Õ=ü ÝBËtÕÐJÏ:Ô8ËOÕYØ^Ù8Ï�íHÏOÕmËr×�L�ü,åDçsÏ�Õ6ÒHÑHÒBÏ@Í�Õ6Ëeß6ü@áëâ×�L ô ÌBÏ�ß'Ý_L�Ñ�Õ 8JþJá ÏHÔ8ÎJæBË ×qL ddüëê Ì8Ï:ÔBæBË ×ÐL dJþo6 õ Ï Ý_L�Ñ�Õ ÝBËtÕÐJÏ:Ô8ËOÕYØ^Ù8Ï�íHÏOÕmËr×�L åDçsÏ�Õ6ÒHÑHÒBÏ@Í�Õ6Ëeß6ü@áëâ[ ® & [ ®�9 � & � 9 l3A60@4=A/f8A=G/()51<%% &&

% &% &

&%%%

%%% &

  $ 9 $6;%<«L)(BA6<s9p.8$ `B2/.X|).H9p<f ® (s9 &;: .«f ® (J9 9=<f ® (s9 & < .«f ® (J9 9 :  $ 9 $6;%<«L8.346<s9p.8$ `B2/.X|).H9p<ïdÙëê ÒHÏrÙ)Ð:Ñ-ÝBËOÕmÐJÑ+ÐJÑ8ÍHÌ�Ï8Ü:Ú@Ö:öBÓBÍ8ÎJÑèô

f ® (^9 & f ® (^9 9 � & � 9f ® (s9 &;>-?�%f ® (s9 &;>-?�%f ® (^9 &;@5%f ® (^9 &;@5%

f ® (s9 9 >-?�%f ® (^9 9 @5%f ® (s9 9 >-?�%f ® (^9 9 @5%

&%%%

%%% &ò�Ì8ËHÖ:ÙHî@æ3ËkÚ@ÑOÕ6Ñ+Ñ+ÎJÑ8×@ÏHÖHÑUçsÏOÕ6ÒBÑHÒHÏèê§Ú@Ñ�Õ/ÑDØ^Ù8ÑHÖBØ:Ù@ÏOÕYÙ8ÐkÒ3Ë:Ì+Ó@Ñ:Ì)Ë^ÌëêÎHËtÕ=Ô8Ñ^ðBÌ@Ïùôr3üQdeß�A-BDC�ß/×�L�ü@á3áFE�ß�A-BDCOßR×�L áBáË^Ùr3üQdeßRÊ_á:ïãßRÝ_L�Ñ�ÕRü58JþJáBárä�ß6ÊIá^ïùß'ÝIL�ÑOÕ 8HþJá@ár d�×�L�üGE-×�L Ë^Ùr deßRÝ_LdÑ�Õ=ü58JþHáHEjß'ÝIL�ÑOÕ 8HþJá

Exempl o: Tabel a ver dade

úBÐQÑBÖBÛHËtÕRÍ)ÎHÐHË�ÎJÏBÐQÙ%ÐJÑ�Ú8ÏBØ:Ù@Ï:Ô)ÑkÏ:Ô8ÎOÕ/ÑHÒ@Ñ-ÒHÏ-ÒBÑHÒBË^Ì+Ó8ËHÐ-Ë:ÚHî8øHÏHÌ-ÒHÏ-ÖHÏ8ÎOÕ/Ñ:ÌÏBÐ ÐHÑ:Í��HÌHÓBÙ@ÖBË Ë^Ù Ð^ÍBÔ��HÌHÓHÙBÖBËèâ�ï ÖHÑHî)Ë Ò@Ï Ï:Ô3ÎtÕ6ÑHÒHÑ ÒHÏ ÒHÑ3ÒBË^Ì ÒHÏ%çsÏ Ì8ÏÕ/Ï:Ú@Ï3Î^Í�Õ Ï:Ô8ØJÙ@Ñ@Ô8ÎHË Ë ÙHÌHÙ@÷OÕ6Í8Ë Ô8æBË Ò:Í8Û^Í8ÎHÑOÕ ä Nmä ß'ÐJÑ:Í��BÌHÓHÙ8Ö8ËJá Ë^Ù ä Üoäß'Ð^ÍHÔ��HÌHÓHÙ8Ö8ËJáèâ RHË^Ô8ÎHÏ-Ñ+ÎJÑ:×@ÏBÖ3Ñ+çsÏOÕ6ÒHÑHÒ@Ï+Ø^Ù@Ï+ÏBÜ^Ú�ÕRÍ8ÐHÏkÑrÓ8Ë:Ô)ÎJÍHÔHÙHÍ8ÒHÑHÒBÏ-ÒHÏÏBÜJÏ:ÓBÙHî@æBË�ÒBËkÖBÑ@î8ËìâL�ÑOÕ=Í8÷3çsÏ:ÍBÌùôò�ÖHÏ8ÎtÕ/Ñ+Ò@Í8Û^Í8ÎHÑBÒHÑrÚ@Ï8ÖBË�ÙBÌBÙ@÷OÕRÍ3ËìôuÓ�O)ÏBÎOÕ/Ñò�Ì,ç^ÑOÕ=Í@÷%çJÏ:ÍHÌ>Ö3àHÛ^ÍHÓ@ÑBÌëôu×�O3ü�Ï+×�O 1@Ï:Ì8ÎOÕ=ÍHî8øHÏHÌëôïcÖHÑ@î8Ëqå�ÏBÜHÏHÓHÙ8ÎJÑBÒ3Ë�Ô3ËBçJÑBÐJÏ@Ô8ÎHÏ�Ì@Ï�ÑkÖHÏBÎOÕ6ÑqÝ3ËtÕ,Ò@Í@ÝHÏ�Õ6Ï:Ô8ÎJÏ-ÒHÏ�ä NmäÏ-Ò:Í8ÝHÏOÕ/Ï@Ô3ÎJÏ-ÒBÏjäÆÜoäHâïQÖHÑHî8Ëkå>ÍHÔ8ÎJÏ�ÕBÕ6ËHÐ^ÚHÍ3ÒBË�Ì8Ï+Ñ+Ö@ÏBÎtÕ/Ñ+ÝBËOÕgä�Nmä Ë^ÙjäÆÜpäBâúBÐJÑ-Ì@Ñ:ö@ÒBÑ�r3üëô¡Ó8Ë^Ô8Î^Í8ÔHÙ@Ñ+Ñ+ÏBÜHÏHÓHÙ8ÎJÑOÕXË-ÖHÑ@î8Ë�r3ü:ddüëê¡Ì@Ï:Ô@æ3Ë�r)üQdHþ×�OBüëô¬Ì@Ï�ß6Ó�O8ÏBÎOÕ6ÑrÍ8Û^Ù3ÑHÖ-Ñ�ä NmäÆá�Ï:Ô8ÎJæ3Ër×�OBüØd�üëê¬Ì@Ï@Ô8æBË�×�O3üSdkþp6×�O ô¬Ì@Ï�ß6Ó�O8ÏBÎOÕ6ÑrÍ8Û^Ù3ÑHÖ-Ñ�äÆÜoäÆá�Ï:Ô8ÎJæ3Ër×�O d�üùêuÌ@Ï@Ô8æBË�×�O dkþp6

Page 28: Logica Programacao Aplicada V2.2008

28

×�OBü ×�O r3ü õ Í8Û^ÔHÍ@Ý@ÍHÓ8ÑHÒBËþþ üü

þ üþ ü

üþþðHðHð

ÊHÏBÐVä Üoä§Ô@Ï3ÐVä�Nmä@ôuÓ8Ë@Ô8Î^ÍHÔHÙ)ÑäÆÜoä Ð:ÍHÔ��BÌHÓBÙ@ÖBËèô¬Ú@÷OÕ/Ñä Nmä ÐHÑ:Í��BÌHÓBÙ@ÖBËèô¬Ú@÷OÕ/ÑÊHæBËkÑ@Ó8Ë^Ô)ÎJÏ@Ó@Ïèô Ñ�ÖHÏBÎ�Õ/Ñ-åEË^ÙÐ^ÍHÔ��HÌBÓHÙ@ÖBÑDË^Ù,ÐJÑHÍ��HÌHÓ3Ù@ÖHÑ

ò�ÏBÜ:Ú�Õ/Ï:ÌBÌBæBËkÒBÏ�Ó8Ë^Ô8Î@ÍHÔHÙHÍBÒBÑHÒHÏDÝ:ÍHÓ@Ñèôr3üQdeß�A-BDC�ß/×�OBü)áHáFE�ß;A-BDCjß6×�O áHá → BA ⋅ïdÙëê§Ú@ÏHÖBË>ÎJÏBËtÕ6Ï3ÐJÑ-ÒHÏDóHϱRBËtÕ6ÛHÑ@Ôëôr3üQdIA-BDC�ß/×�OBüJC�K+×�O á → BA +ïdÙëê Ñ:ÍHÔ@ÒBÑëê¬ÒHÏ>Ù8ÐJÑ-Ý%ËtÕ6ÐJÑ,ÐJÑ:ÍBÌ>ÏBÜ^Ú@Ö@öHÓ@Í8ÎJÑùôr3üQdeß/Ó�O)Ï8ÎtÕ/Ñ+Ò@Í@ÝHÏOÕ/Ï8Ô8ÎJÏ�ÒBÏ�ä�N ä E Ó�O8ÏBÎOÕ/Ñ+Ò:Í8ÝHÏOÕ6ÏHÔ8ÎJÏ+ÒBÏjäÆÜoäÆá

I² ±× �Û Üƺ�" Ã)ÞÄÃgµÁÅg¶�" ºp¶ Åp¿ ¹ µÄÇmÅI¶ ü@á�R:ÍHÔHÍ8Ð:Í8íHÏ-Ñ>ÏBÜ^Ú�Õ/Ï8ÌHÌ@æBË-Ù8Î^Í8Ö@Í@íHÑ:Ô@Ò3ËrÚ8Ë^Ì3Î^Ù8ÖHÑHÒ3Ë^Ì>ÏDÎJÏBË�Õ6ÏBÐHÑ:Ìëâ

DCBAF

DCADCBF

DCADCBF

)D(CADCBF

⋅⋅⋅=

⋅⋅⋅⋅⋅=

⋅⋅⋅⋅⋅=

⋅⋅+⋅⋅=

á�R:ÍHÔHÍ8Ð:Í8íHÏ-Ñ>ÏBÜ^Ú�Õ/Ï8ÌHÌ@æBË-Ù8Î^Í8Ö@Í@íHÑ:Ô@Ò3ËrÚ8Ë^Ì3Î^Ù8ÖHÑHÒ3Ë^Ì>ÏDÎJÏBË�Õ6ÏBÐHÑ:Ìëâ

CBAF

)A1(C)C1(BAF

CCACBABAF

CCACBAABAF

)CA()CBA(F

CACBAF

CACBAF

+⋅=+⋅++⋅⋅=

+⋅+⋅⋅+⋅=+⋅+⋅⋅+⋅⋅=

+⋅+⋅=

⋅⋅+⋅=

⋅++⋅=

�)á�R:ÍHÔHÍ8Ð:Í8íHÏ-Ñ>ÏBÜ^Ú�Õ/Ï8ÌHÌ@æBË-Ù8Î^Í8Ö@Í@íHÑ:Ô@Ò3ËrÚ8Ë^Ì3Î^Ù8ÖHÑHÒ3Ë^Ì>ÏDÎJÏBË�Õ6ÏBÐHÑ:Ìëâ

DACABAF

DABA)11B(CAF

DACABACABCAF

DACABA)AB(CAF

DACABAABCAF

⋅+⋅+⋅=⋅+⋅+++⋅⋅=

⋅+⋅+⋅+⋅+⋅⋅=

⋅+⋅+⋅++⋅⋅=

⋅⋅⋅⋅⋅+⋅⋅⋅=

Page 29: Logica Programacao Aplicada V2.2008

29

HJá�R:ÍHÔHÍ8Ð:Í8íHÏ-Ñ>ÏBÜ^Ú�Õ/Ï8ÌHÌ@æBË-Ù8Î^Í8Ö@Í@íHÑ:Ô@Ò3ËrÚ8Ë^Ì3Î^Ù8ÖHÑHÒ3Ë^Ì>ÏDÎJÏBË�Õ6ÏBÐHÑ:Ìëâ

BADCF

B)1BA(A)1BA(DCF

DCABBADCBAF

DCAB)BA(DCBAF

DCAB)BA()DC(BAF

++⋅=

++⋅⋅++⋅⋅⋅=

⋅+++⋅+⋅⋅⋅=

⋅+++++⋅⋅⋅=

⋅+⋅⋅++⋅⋅⋅=

D)á�R:ÍHÔHÍ8Ð:Í8íHÏ-Ñ>ÏBÜ^Ú�Õ/Ï8ÌHÌ@æBË-Ù8Î^Í8Ö@Í@íHÑ:Ô@Ò3ËrÚ8Ë^Ì3Î^Ù8ÖHÑHÒ3Ë^Ì>ÏDÎJÏBË�Õ6ÏBÐHÑ:Ìëâ

CBAF

CB)BDC1(AF

BADACACBAF

BADACACB)CB1(AF

A)BDC(CBCABAAF

ABDC)BA()CA(F

A)BDC()BA()CA(F

⋅+=

⋅++++⋅=

⋅+⋅+⋅+⋅+=

⋅+⋅+⋅+⋅+++⋅=

⋅+++⋅+⋅+⋅+=

⋅⋅⋅++⋅+=

+⋅⋅+⋅⋅⋅=

I² ± ��Û×ܹº'"»Ã$Þ·ÃƵ ÅI¶�#'" Å$#pÅK¶¹¸»ÅI¶ü@á�RBË^Ô8ÎJÏ>Ñ:Ì>ÎHÑ@×@ÏHÖHÑ:Ì�çsÏOÕRÒBÑHÒHÏDÒHÑ:Ì�Ï3Ü^Ú�Õ/Ï:ÌBÌ8øHÏ:Ì>Ñ:×@Ñ@Í3ÜHËìâÑHá

BA)B,A(F +=×@á

BA)B,A(F +=Ó@á

BA)B,A(F ⋅=ÒHá

BA)B,A(F +=ÏHá

BA)B,A(F ⋅=ÝHá)CB(A)C,B,A(F +⋅=

ÛJáBABA)B,A(F ⋅+⋅=

ñ@áBABA)B,A(F ⋅+⋅=

Í@áF(A,B,C) A A B AC= + ⋅ += + ⋅ += + ⋅ += + ⋅ +

�HáF(A,B,C) A B C= ⋅ += ⋅ += ⋅ += ⋅ +

á�R:ÍHÔHÍ8Ð:ÍBíHÏ-Ñ@Ì>ÏBÜ^Ú�ÕmÏ:ÌHÌ8ø:Ï@Ì�Ñ@×8Ñ:Í8ÜHËrÙ8ÎJÍ@Ö:Í8íHÑ@Ô@ÒBËrÚ8Ë:Ì3Î^Ù@ÖHÑBÒ3Ë^Ì>ÏDÎJÏBËtÕ/Ï)ÐJÑ:ÌëâÑHá

DCAFspRe

)DCB()CBA(DACAF

⋅⋅=∴

⋅⋅⋅⋅+⋅⋅+⋅=

×@áDCBAFspRe

DC)CB(ADCBAF

⋅⋅⋅=∴

⋅⋅+⋅⋅⋅⋅⋅=

Page 30: Logica Programacao Aplicada V2.2008

30

Ó@áDAFspRe

)DAA(CDA)BD(DAF

+=∴

⋅+⋅++++⋅⋅=

ÒHáDCBAFspRe

DB)DACA(F

+++=∴

⋅⋅⋅+⋅=

ÏHáCBFspRe

BCBAF

⋅=∴⋅+⋅=

ÝHá)CA(BFspRe

BACBAF

+⋅=∴

⋅+⋅⋅=

ÛJáCBAFspRe

)CB(ACBAF

⋅+=∴

+⋅+⋅⋅=

ñ@áCBAFspRe

)CA()BA(F

++=∴+⋅+=

Page 31: Logica Programacao Aplicada V2.2008

31

Capítulo 3 – Programação estruturada em ‘C’.

�m² ±IÄ6Åp¾KÃIºIµÈ¸ ÅI¶BÇKº��+" ÅpÂ'"»½I¼t½$&$(pÅ�Û ¶ ¸ " ,K¸å,'"»½IÇK½

3.1.1 Definições

ÊHæBËaÏBÜ^ÍBÌ)ÎJÏcÙ8Ð:ÑjÒHÏHÝ8ÍHÔHÍHî@æ%Ë_ÙBÔ@Í)çsÏOÕRÌ@ÑHÖBÐHÏ@Ô8ÎJÏ�Ñ:Ó@Ï:Í3ÎHÑcÚ@ÑOÕ/Ñ�Ñ�Ú�Õ6ËHÛOÕ/ÑBÐJÑBî@æBËÏ:Ì8ÎtÕRÙ8Î^Ù�Õ6Ñ@ÒHÑp6�òsË Ó3Ë:Ô8ÎtÕ/÷�ÕRÍ8ËìêaÏ3Ü^ÍHÌ8Î:ÏBÐ çs÷�Õ=Í@Ñ:Ì Ï:ÌBÓ8ËHÖHÑ:Ì Ò3Ï Ú@Ï:ÔBÌ@ÑBÐJÏBÔ8ÎHËØ^Ù@Ï+ÑrÓ8Ë:Ô@Ó@Ï:Í8Î:Ù8ÑBÐìâÊBË Ì@Ï@Ô8Î^Í@Ò8ËxÐJÑ:ÍHÌ Õ/Ï:Ì8ÎOÕRÍ8ÎHËìêQË Ó8Ë:ÔHÓ@Ï:Í8Î3Ë ÒHÏ Ú�ÕmËHÛtÕ/Ñ3Ð:Ñ:î@æ3Ë Ï:Ì8ÎtÕRÙ8Î^Ù�Õ'ÑHÒHÑÒ:Í@íhÕ/Ï:ÌBÚ@Ï:Í8ÎBË � ÝBËOÕ6ÐJÑaÒBË_Ú�Õ6ËBÛtÕ/ÑBÐHÑnÏcÒBË_Ú�Õ6Ë^Ó@Ï:Ì@Ì)ËnÒHÏaÓ8ËJÒ:ÍBÝ:ÍHÓ@Ñ@î@æ3Ëìâ��Ù8Ð Ó8Ë^Ô{�HÙHÔ8ÎHË ÒBÏ Ó3Ë^Ô)çsÏ@ÔBî8øJÏ:Ì ØJÙ@Ï Ë Ú�ÕmËHÛ�Õ/ÑBÐHÑHÒ3ËtÕ Ú8ËJÒHÏ Ì@Ï3Û^ÙHÍ�Õ Ú8ÑOÕ/ÑÚ�Õ6ËJÒ@Ù@í:Í�ÕhË Ó)àJÒ:Í8Û@Ë Ï:Ì)ÎOÕ=Ù8Î^Ù�Õ6ÑHÒBËìâjò�Ì Õ/ÏBÛOÕ6Ñ:Ì ÒBÏ Ó)ËHÒ:Í@Ý:Í@Ó)Ñ:î@æBË Í3Ð^Ú)øJÏBÐÖ:Í8Ð^Í)ÎJÑ:î8øHÏHÌ Ì3Ë^×�Õ/Ï Ë ÙHÌ)Ë ÒHÑ:Ì Ï:Ì8ÎtÕRÙ3Î^Ù�Õ/Ñ@Ì ×8÷:ÌHÍHÓ8Ñ@Ì ÒBÏ Ó8ËJÔ8ÎtÕ6ËHÖBÏèêÏ:Ì8ÎtÕRÙ8Î^Ù�Õ6ÑHÌ-ÒHÏrÓ8ËHÐJÚ)Ë^ÌHÍHî8æ3ËkÐHËBÒ:Ù@ÖHÑOÕ�ÏkÒ3Ë^ÓHÙ3ÐJÏ@Ô8ÎJÑ@î@æ3Ëìâ�BËBÐQÏ@Ì3ÎJÏkÌBÏ:Ô8Î^Í8Ò3ËìêÑrÚ�ÕmËHÛtÕ/Ñ3Ð:Ñ:î@æBË+Ï:Ì8ÎtÕ=Ù1Î^Ù�Õ/Ñ@ÒBÑ-Ï@Ô8ÝBË^Ó@ÑDË^Ì�Ì@Ï3Û^ÙBÍHÔ8ÎHÏ:Ì,Î@à^ÚHÍHÓ)Ë:ÌëôL �Õ6ËHÛOÕ/ÑBÐJÑ@î8æBË Ì@Ï8Ð ÍHï éJï ßRÏ3Ö:Í8Ð^ÍHÔ8Ñ:î@æ8Ë Ó8ËHÐ^Ú@ÖBÏ3ÎJÑ Ë:Ù Ú@ÑOÕ6ÓHÍ@ÑHÖ ÒBËÓ8ËHÐJÑ@Ô@ÒBË�ÍBï+éJï^á�6L �Õ6ËHÛOÕ/ÑBÐJÑ@î8æBË Ó8ËHÐ Ñ:Ú@Ï@Ô8Ñ:Ì ÎOÕ/ûHÌ Ï:Ì8ÎtÕRÙ8Î^Ù�Õ6Ñ@Ì ×B÷:ÌHÍHÓ@Ñ8Ì ÒBÏ Ó)ËJÔ8ÎtÕ6ËJÖBÏèôÌ@ÏBØ��8û:ÔHÓHÍ8ÑùêuÌ@Ï@ÖBÏ:î@æBË+ÏrÍ8ÎHÏ�Õ/Ñ:î8æ3Ëo6L r1ËtÕ6ÐHÑ-ÒHÏ>Ù8Ð�Ú�ÕmËHÛtÕ/Ñ3ÐHÑ-Ï:Ì)Î�Õ=Ù8Î:Ù�Õ/ÑHÒBËo6L ò�Ú@Ö:ÍBÓ@Ñ:î@æ3Ë ÒHÏ Ó8Ë^Ô/çsÏ:ÔHî8øHÏ@Ì ÒBÏ Ó)ËJÒ:Í@Ý:Í3Ó@Ñ:î@æBË Ï@Ì8ÎOÕ=Ù8Î^ÙsÕ/ÑHÒ@Ñ Ñ Ù)ÐJÑÖ:ÍHÔ8Û:Ù@ÑBÛJÏ3Ð-ÒHÏ-Ú�Õ6ËHÛtÕ6Ñ3ÐJÑ:î@æ3ËrÏ:ÌBÚ8Ï:ÓHö@Ý:ÍBÓ@Ñùâä)Ð Ù)Ð Ì@Ï:Ô)Î^Í@ÒBË ÐJÑ:ÍBÌ ÑBÐ^Ú8ÖBËìêaÑ Ú�Õ6ËHÛ�Õ/ÑBÐJÑ@î@æBË Ï@Ì)ÎtÕ=Ù)Î^Ù�Õ/ÑHÒ@Ñ å ÒHÍ�Õ=Í8Û:Í@ÒHÑÎJÑ:Ô8ÎBËQÑBË:Ì>ÐJåBÎBË:ÒBË^Ì�ÒHÏrÚ�Õ6ËHÛtÕ6Ñ%ÐJÑ:î@æBË�Ó8Ë@ÐBË � Ý3ËtÕ6ÐJÑ-Ò3Ë�Ú�Õ6ËHÛOÕ6Ñ8ÐJÑèâ��8Ð^Ú8Ö:ÍBÓ@ÑÌ@ÏBÛ^ÙBÍ�Õ_Ù8ÐJÑ�ÐJÏ3ÎHËJÒ3ËJÖ3ËHÛ^Í8ÑvÏ:Ì8Î�Õ=Ù8Î^Ù�ÕRÑHÒHÑvÚ8Ñ�Õ/ÑÞËtÕmÛJÑHÔHÍ@íBÑOÕcËxÚ�ÕmË��HÏBÎ@ËxÏvÑÍ8Ð^Ú@ÖBÑ:Ô8ÎJÑ@îBæBËkÒ3ËrÚ�Õ6ËHÛ�Õ/ÑBÐJÑëâ ïdÌUÎHà^ÚHÍHÓ)Ë^Ì+Ï:Ô1çJËHÖ3çdÍ8ÒBË^Ì>ÍHÔHÓ@Ö@Ù8ÏBÐèôL �Õ6ËHÛOÕ/ÑBÐJÑ@î8æBË-Ð@ËHÒ:Ù@ÖHÑ�Õ�6L 1@ÏHÝ:ÍBÔ@ÑBÐJÏ@Ô)ÎHË-Û�Õ/ÑHÒ:Ù@ÑBÖ�ß/Ì8ÎHÏHÚ�^�ÍBÌ8ÏjÕ/ÏBÝ:ÍHÔ8ÏBÐ:Ï:Ô8ÎHáp6L Ê:ö)çsÏ@ÍHÌ�ÒBÏ+Ñ:×HÌ3ÎOÕ/Ñ:î@æ3Ëp6L �Õ6ËHÛOÕ/ÑBÐJÑ@î8æBË-Î@Ë:ÚJð8ÒBË_^�Ô�Ï�×3ËHÎHÎBËBÐdðBÙHÚëâ

3.1.2 Objetivos

ï Ú�Õ=ÍHÔHÓBÍHÚ@ÑBÖ Ë^×{�HÏBÎ:Í)çHË ÒBÑ Ú�Õ6ËHÛtÕ6ÑBÐJÑ:î8æ3Ë Ï:Ì8ÎtÕRÙ)Î^Ù�Õ/ÑHÒ8Ñ å Ú�Õ6ËJÒ:Ù@í@Í�Õ Ù)ÐÚ�Õ6ËHÛOÕ/ÑBÐJÑ ÒBÏ ÑBÖBÎJÑ Ø@Ù@ÑHÖ:Í8ÒBÑHÒ@Ï Ñ ×8Ñ:Í)ÜHË ÓBÙHÌ)ÎHËìê Ú�Õ6Ë^Ú8ËOÕ/ÓBÍ8Ë^Ô8Ñ:Ô@ÒBË Ù)ÐJÑÒ:ÍHÌHÓBÍHÚ@Ö:ÍBÔBÑ-ÒHÏ>Ú�Õ6ËHÛtÕmÑBÐJÑ:îBæ3Ë�Ú8Ñ�Õ/ÑrÓ8Ë:ÔHÌBÏBÛ^ÙBÍ�ÕdôL RJÏHÖ:ñ3ËtÕ/ÑOÕXÑrÓ8Ë:Ô8Ý:Í@Ñ:×HÍ3Ö:Í@ÒHÑBÒBÏ-Ò3ËkÚ�Õ6ËHÛOÕ/Ñ3ÐJÑp6L ò�Ù8ÐJÏHÔ8ÎJÑOÕXÑ-ÖHÏ3Û:ÍH×HÍ@ÖHÍ8ÒHÑHÒHÏDÒBËrÚ�Õ6ËHÛtÕ/Ñ3ÐJÑ�6L R^ÍHÔHÍ3Ð^Í@íHÑ�ÕYÑrÓ)ËBÐ^Ú@ÖHÏBÜHÍ@ÒHÑHÒBÏ+ÒBË-Ú�Õ6ËHÛtÕ6ÑBÐHÑp6L õ Í8Ð^ÚBÖ:Í@Ý:ÍBÓ8ÑOÕ�ÑEÐJÑ:ÔHÙ8Î@Ï:ÔHî@æ3Ë-ÒBË-Ú�Õ6ËHÛtÕ6ÑBÐHÑp6L ò�Ù8ÐJÏHÔ8ÎJÑOÕXÑrÚ�ÕmËHÒ:Ù8Î^Í)çJÍ@ÒHÑHÒBÏ+ÒBË-Ú�Õ6ËHÛtÕ6ÑBÐHÑHÒBËOÕ�6L äBÌ8ÎJÑH×@ÏHÖHÏ@Ó8ÏOÕ£Ù)ÐHÑ+ÐJÏBÎ8ËJÒBËJÖ3ËBÛ^Í@Ñ>Ò:ÍHÌHÓHÍBÚ@Ö@ÍHÔ@ÑBÒHÑ+ÒHÏ-Ú�ÕmËBÛtÕ/ÑBÐHÑ@î@æ8Ëìâ

3.1.3 Propr iedades

ò�ÌbÓ@ÑOÕ6Ñ:Ó8ÎJÏOÕ6öHÌ8Î^ÍHÓ)Ñ:ÌnÐJÑ:Í@ÌbÔ8ËBÎJ÷3çJÏ:ÍHÌyÒHÏ�Ù)ÐÞÚ�Õ6ËHÛ�Õ/ÑBÐJÑ�Ï:Ì)ÎOÕRÙ8Î^Ù�Õ/ÑHÒBËhÌ8æBËèôÌHÙ@Ñ_ÝBË�Õ6ÐJÑyñHÍ8Ï�Õ/ÑOÕ6ØJÙBÍ@íHÑHÒHÑ_ÏaË�Ó)Ë^Ô/�:ÙHÔ3ÎHË Õ6ÏHÒ:Ù8í:ÍBÒBËbÒHÏyÌ@Ù@Ñ@ÌnÏ:Ì8ÎOÕ=Ù8Î^Ù�Õ6Ñ:Ì

Page 32: Logica Programacao Aplicada V2.2008

32

×@÷:ÌHÍBÓ@Ñ:Ì ÒBÏ Ó)Ë^Ô8Î�Õ6ËHÖHÏùâ òdÖBåBÐ ÒHÏ:ÌHÌ3Ñ:Ìëê Î@ÑBÐ^×@å3Ð Ì@æBË Ó8Ë^ÔHÌHÍ8ÒHÏOÕRÑBÒHÑ:ÌÚ�Õ6Ë^Ú�Õ=Í@ÏHÒBÑ@ÒHÏ:Ì Í8Û^Ù@Ñ3ÖBÐJÏ:Ô8ÎBÏ Í)Ð^Ú8ËtÕ6Î:Ñ:Ô8ÎHÏ:Ìãê Ñ Ï:Ì)ÎtÕ=Ù8Î:Ù�Õ/Ñ Ò@Ï Ó3Ë^Ô8ÎtÕmËJÖHÏÚ@ÑHÒOÕmË^ÔHÍ@íBÑ@ÒHÑèê Ë^Ì Õ/Ï3Ø^ÙHÍ@ÌHÍ8ÎBË^Ì ÒHÏ Ú�Õ6Ë8ÛtÕ/ÑBÐJÑ@î8æBË Ï Ñ@Ì Ó8ËJÔ)çJÏ:ÔHî8øJÏ@Ì ÒHÏÏ:Ì8Î^Í8ÖBËìâ ò Ì3ÏBÛ^ÙHÍ�Õdê Ù8Ð Õ/Ï@ÌBÙ8ÐHË ÒHÑ:Ì Ú�ÕmË:Ú�Õ=Í@ÏBÒHÑBÒHÏ:Ì ÒHÏ Ù8Ð Ú�Õ6ËHÛ�Õ6ÑBÐJÑÏ:Ì8ÎtÕRÙ8Î^Ù�Õ6Ñ@ÒBËìâMONI~QPON:|/»�x�¾ax�»SRvðaËwÚ�ÕmËBÛtÕ/ÑBÐHÑ�å�Ò:Í)çdÍ8Ò@Í@ÒBËhÏ3ÐÞÙ8ÐhÓ8Ë^Ô{�:ÙHÔ)ÎHË�ÒBÏbÐHàJÒ:Ù3ÖBË^ÌÒ:ÍHÌHÚ)Ë^Ì8ÎHË:Ì�ÏBÐ�Ù8ÐJÑqñHÍBÏ�Õ/ÑOÕ6Ø:ÙHÍ8ÑQØ^Ù@Ï�ÒHÏHÝ:ÍBÔ@Ï�ÌHÙ@Ñ@ÌyÕ/ÏBÖHÑ@î8øJÏHÌqÖ3àHÛ:ÍHÓ@Ñ:Ì�Ï�ÒHÏÎJÏBÐ^Ú)ËkÒHÏ>ÏBÜJÏ:ÓBÙBî@æBËìâMONI~QPON:|/»�x�¾ax�» � ð Ë Ý@Ö:Ù8ÜBË ÒHÏ ÏBÜJÏ:Ó@ÙHî8æBË ÒHÏ ÐBà:Ò:Ù@ÖBË Ú@ÑOÕ/Ñ ÐHàJÒHÙ8ÖBËÕ/Ï:Ì8ÎOÕ=ÍHÔ8ÛHÏJðBÌ@ÏÞÑÞÙ8ÐhÏ:Ì8ØJÙ@Ï3ÐJÑÞÌHÍ8Ð:Ú@ÖHÏ:ÌãêkÝH÷:ÓHÍ8Ö�ÒHÏhÏ:Ô8Î@Ï:Ô@ÒHÏOÕ^ê�Ô8ËhØ^Ù8ÑHÖbËÓ8Ë^Ô8ÎOÕ6ËJÖHÏ ÒHÏ3çJÏ Ì@Ï�ÕwÚ8Ñ:ÌHÌ@Ñ@ÒBË ÚBÑOÕ/Ñ Ë ÐBàJÒHÙ@ÖBË ÏBÐ Ì@ÏHÙ �HÔ@ÍBÓ8Ë Ú3Ë:Ô8ÎHË ÒHÏÏ:Ô8ÎtÕ6ÑHÒHÑèêjÌ)Ñ:Í�Õ_Ò8ËxÐHàHÒ:Ù8ÖBË ÒHÏwÌ@Ï:Ù��BÔHÍHÓ8Ë Ú)Ë^Ô)ÎHË�ÒHÏ�Ì@Ñ@ö8ÒHÑvÏ ÕRÏBÎHËtÕRÔ@ÑOÕÌ@ÏBÐ^Ú�Õ/Ï-Ñ3Ë�ÐHàJÒ@Ù8ÖBË-Ø:Ù8Ï+ËkÓBñ@ÑBÐBË:ÙëâMONI~QPON:|/»�x�¾ax�»UTrð>ÑrÓ8ËJÔHÌ)ÎtÕ=ÙBî@æ%ËQÒBË-ÐHàHÒ:ÙBÖBËkårÚ@ÑHÒOÕpË^ÔHÍ@íHÑ3ÒHÑkÒBÏ-Ñ:Ó8Ë�Õ/Ò3Ë�Ó8ËHÐÑ:Ì�Õ/ÏBÛOÕ/Ñ:Ì_ÎtÕ/ÑBÒ@ÍHÓHÍ)Ë^Ô8Ñ:ÍHÌbÒBÏeÐHËJÒ:Ù@ÖBÑOÕ=ÍBíBÑ:î@æBËèê-ÏbÑHÌyÏ:Ì8ÎtÕRÙ8Î:Ù�Õ/Ñ@Ì�×@÷:ÌHÍBÓ@Ñ@ÌÒHÏrÓ)Ë^Ô8ÎtÕmË:ÖHÏrÌ8æ3ËkÖ:Í8Ð@Í8ÎJÑHÒ@Ñ@Ì�Ñ>Ì@ÏBØ��@û@ÔHÓ@Í@Ñèê§Ì8ÏHÖHÏ@î@æBËèê¬Í8ÎJÏ�Õ6Ñ:î8æBË-Ï-ÒHÏ:Ì=çdÍ8ËìâMONI~QPON:|/»�x�¾ax�» V ð å Õ/ÏBØ^Ù8Ï�Õ=ÍBÒHÑ Ñ ÒBË^ÓHÙ)ÐJÏ:Ô8ÎJÑBî@æBË Õ/ÏHÖHÑ3Î:Í)çsÑ ÑBË Ó8àJÒ:Í)ÛHËÝBË^Ô8ÎHÏèê Ú@ÑdÕ/Ñ ÒBÏ:ÌHÓ�Õ/Ï%çsÏOÕ Ñ Ý:ÙHÔBî@æBË Ò3Ë Ú�ÕmËHÛtÕ/Ñ3Ð:Ñ Ó8ËHÐ8Ë Ù8Ð ÎHËJÒBË ÏÒHÏ:ÌHÓ�Õ/Ï3çsÏ�Õ�êEÚ8Ñ�Õ/ÑqÓ@ÑHÒHÑQÐHàJÒ@Ù@Ö3ËèêUÌHÙ@Ñ�Ý:ÙHÔBî@æ3ËìêUÌBÙ@Ñ�Ï@Ì8ÎOÕ=Ù8ÎJÙ�Õ/Ñ�ÒBÏjÒ8ÑHÒBË^ÌQÏÌHÙ@Ñ�Õ/ÏHÖHÑ@îBæBË�Ó)ËBÐ-Ë^Ù8Î�Õ6Ë^ÌDÐBàJÒ:Ù8Ö3Ë^Ì�ÒBËrÚ�Õ6ËHÛOÕ/Ñ3ÐJÑèâ

3.1.4 Estruturas Básicas de Controle

ò�Ì ÎtÕRû:Ì Ï:Ì8Î�Õ=Ù8Î^Ù�Õ6Ñ@Ì ×@÷HÌBÍHÓ@Ñ@Ì ÒHÏ Ó)Ë^Ô)ÎtÕ6Ë:ÖHÏ Ú@Ñ�Õ/Ñ Ñ Ó8Ë:ÔHÌ8ÎOÕ=ÙHî@æ3Ë ÒHÏÚ�Õ6ËHÛOÕ/ÑBÐJÑ@Ì+Ï:Ì8ÎOÕRÙ8Î^Ù�Õ/Ñ3ÒBË^ÌëôW »�XQY�Z�À/¼�|/¾ ð å ÙHÌ8ÑBÒHÑ Ú@ÑOÕ/Ñ Ó8Ë^Ô8ÎOÕ6ËJÖHÑ�ÕvÑ ÏBÜJÏ:ÓHÙBîBæBË ÒBË ÚsÕ6ËHÛtÕ/Ñ3ÐJÑèênË:ÌÓ8ËHÐJÑ@Ô@ÒBË^ÌnÌ8æBËyÏ3ÜJÏ:ÓHÙ)ÎHÑHÒBË^ÌnÔ@ÑjÐHÏ:Ì8ÐJÑcËtÕRÒHÏBÐ_ÏBÐnØ:Ù@ÏnÑ@Ú@ÑOÕ/Ï@Ó)ÏBÐbÔ8ËbÓ8àJÒ@Í8ÛHËÝBË^Ô8ÎHÏèâò�Ì Ï:Ì3ÎtÕRÙ8Î^Ù�Õ/Ñ@Ì ÒHÏ Ì@ÏHÖHÏHî8æBËìê Í8Î:ÏOÕ/Ñ:î)æBË Ï ÒHÏ@Ì)ç^Í8Ë Ì8æ3Ë ÙHÌ@ÑBÒHÑ:Ì Ú8ÑOÕ/ÑÑHÖBÎJÏ�Õ/ÑOÕ�ËvÝHÖ@Ù8ÜHËhÒHÏ�ÏBÜHÏ:ÓHÙ@î@æ3ËvÒBËwÚ�Õ6ËHÛOÕ6ÑBÐJÑhÒBÏÞÌHÙ@Ñ�ËOÕ/ÒBÏBÐwÌ@ÏBØ��@Ï:ÔHÓ8Í@ÑHÖÔ8ËtÕ6ÐHÑHÖèâW »�¿/»�[�\�~�ð,å�ÙBÌ8ÑHÒHÑrÚBÑOÕ/Ñ+ÎHÏ:Ì8ÎBÑOÕEÙ)ÐJÑrÓ8Ë:Ô@Ò:ÍHîBæ3ËQÏèê Ï:Ô8ÎHæ3Ëìê«Ò3Ï:Ú@Ï:Ô@Ò@Ï:Ô@Ò3ËkÒHÏÌ@ÏOÕ Ë ÎJÏ:Ì3ÎJÏ çsÏ�Õ/ÒHÑHÒBÏ@Í�Õ6Ë Ë^Ù ÝHÑBÖ:Ì8Ëìê Ù)Ð Ò8Ë^Ì ÒBËHÍHÌ Ó8Ë:Ô/�:ÙHÔ%ÎHË^ÌÑHÖBÎJÏ�Õ=Ô@ÑBÎ:Í%çJË^Ì>ÒBÏrÍHÔHÌ1ÎtÕ=ÙHî3øHÏ:Ì>å+ÏBÜJÏ:ÓBÙ8Î:ÑHÒBËèâ¡/}�»]NI¾�[�\�~bð�åeÙHÌ@ÑHÒBÑeÚ@ÑOÕ/ÑcÏBÜ:Ï@ÓHÙ8ÎJÑ�Õ�Ù)ÐyÓ3Ë^Ô/�:Ù3Ô8ÎHËnÒHÏeÍHÔHÌ)ÎOÕ=ÙHî8øHÏ:ÌcÏBÐ_Ù8ÐÔ��8ÐJÏ�Õ6Ë_ÍHÔ8ÎJÏ@Í�Õ6ËnÒHÏ�çsÏHíHÏ@ÌnðaÍBÌ8ÎHËnåèê,Ú@ÑOÕRÑaÓ8Ë^ÔHÌ8Î�ÕRÙHÍ�Õ�Ù8ÐeÖHÑHî8ËvßRÖBËHËJÚ@áùâÊHÑnÖ:ÍHÔ8Û:Ù@ÑBÛHÏBÐ��I���ÏBÜ^Í@Ì)ÎJÏBÐeÎ�Õ/û@ÌnÝ3ËtÕ6ÐJÑHÌ_×8÷@ÌHÍHÓBÑ:ÌeÚ8ÑOÕ/ÑnÑaÏ:Ì8ÎOÕ=Ù8Î^Ù�Õ6ÑnÒHÏÍ8ÎJÏOÕ6Ñ:î@æBËèô_^�`ba�cedãê�f�gih/^�`ba�ced>Ïkj�gDl�â

3.1.5 Formato Padronizado do Módulo

úBÐ Ú�Õ'ËHÛOÕ/ÑBÐHÑ Ï:Ì8ÎtÕRÙ)Î^Ù�Õ/ÑBÒ3Ë å Ù3Ð Ú�ÕmËHÛOÕ/ÑBÐ:Ñ ÐBËJÒ@Ù@ÖHÑ�Õ�â )ËOÕRåBÐìê Ï3Ð Ù8ÐÚ�Õ6ËHÛOÕ/ÑBÐJÑ+Ï:Ì8ÎtÕ/Ù)Î^Ù�Õ/ÑBÒ3ËkË-ÐHàHÒ:Ù8Ö8ËìêuÑ@ÖHåBÐ-ÒHÏ�Ì@Ï3Û:ÙHÍ�Õ�Ñ@ÌcÕ6ÏBÛtÕ6ÑHÌ-×@÷:ÌBÍHÓ@Ñ@Ì�ÒHÏÐHËJÒ:Ù8ÖHÑOÕ=Í8í@Ñ:î@æBËèêYÎJÏ3ÐeÌBÙ@Ñ�Ý3ËtÕ6ÐHÑ�ÐJÑ:ÍBÌ�ÖHÍ8Ð^Í)ÎJÑBÒHÑèâ¬òyÍ3Ð^Ú8Ë^ÌBÍBî@æ3ËjÒHÏ�Õ/ÏBÛOÕ/Ñ:ÌÒHÏ�ÝBËtÕmÐJÑ8ÎHËbÕ=Í8ÛHËtÕpË^Ì@Ñ:ÌqÚ@ÑOÕ6Ñ�Ñ�Ó8Ë^ÔBÌ8ÎOÕ=ÙHî8æBË�ÒHÏ�Ù)ÐjÐ3àJÒ:Ù@ÖBË�Ï:Ì1ÎtÕ=Ù8Î^Ù�Õ/ÑHÒ8ËjåÙ8Ð Ë:Ù8ÎtÕmË ÐJÏ:Í)Ë ÒHÏ ÌBÍ8Ð^Ú@Ö:Í)Ý@ÍHÓ@ÑOÕ Ñ Ï@Ì8ÎtÕ=Ù)ÎJÙ�Õ/Ñ Ò8Ë Ú�ÕmË@ÛOÕ/ÑBÐHÑèâ ä)ÖBÑ:ÌÚ@ÏOÕ6Ð:Í8ÎJÏBÐ+Ø^Ù@Ï+Ë�Ú�Õ6Ë@ÛtÕ6ÑBÐJÑBÒBËOÕTÓ8Ë^ÔHÓ@ÏHÔ8ÎtÕ6ÏrÌHÙ@Ñ+ÑBÎJÏ:ÔHî)æBË�Ô)Ë�Ó)ËJÔ)ÎJÏ��@Ò3ËQÏrÔ8æBËÔ@Ñ-Ý3ËtÕ6ÐJÑ>ÒBË�Ú�ÕmËHÛtÕ/ÑBÐBÑèâ

Page 33: Logica Programacao Aplicada V2.2008

33

ò�Ì Õ/ÏBÛOÕ6Ñ:Ì Ú@Ñ�Õ6Ñ Ñ Ó8Ë^ÔHÌ1ÎtÕ=Ù@î@æ3Ë ÒHÏ Ù8Ð ÐBàJÒ@Ù@ÖBË Ï:Ì)ÎtÕRÙ8Î^ÙsÕ/ÑHÒBË ÌBæ3Ë Ñ:ÌÌ@ÏBÛ^ÙBÍHÔ8ÎJÏ@ÌùôL úBÐhÐHàHÒ:Ù@ÖBËhÎHÏBÐxÙ8д�@ÔHÍBÓ8ËxÚ)Ë^Ô)ÎHËvÒBÏhÏ:Ô8ÎtÕ6ÑHÒHÑhÏwÙ)Ð��HÔHÍBÓ)ËxÚ8Ë^Ô8ÎBËvÒHÏÌ@Ñ:ö@ÒBÑèâL úBÐeÐHàJÒHÙ8ÖBËnånÙ8ÐHÑnÏ@Ì8ÎOÕ=Ù8Î^Ù�Õ6ÑnÓ3ËHÐ^Ú@ÖBÏBÎJÑ_ð�ÏBÜJÏ:Ó8Ù8ÎJÑeÙ8ÐJÑc�HÔ@ÍBÓ@ÑcÎJÑOÕ'ÏHÝHÑÖBàHÛ^ÍBÓ@ÑrÔ8ËrÚ�Õ6Ë@ÛtÕ/Ñ3ÐJÑ+Ï-å+Ö:Í8Ð:Í3ÎHÑHÒBËrÚ@ÏHÖBËrÌ8Ï:Ù-Ú3Ë^Ô8ÎBË-ÒHÏ-Ï@Ô8ÎOÕRÑHÒBÑ-ÏrÌ8Ï:ÙÚ8Ë^Ô8ÎBËkÒHÏ>Ì@Ñ:ö@Ò@ÑùâL ò�Ì Ï:Ì8ÎtÕ=Ù)Î:Ù�Õ/ÑHÌ ×@÷8ÌHÍHÓ@Ñ:Ì ÒBÏ Ó8Ë^Ô)ÎtÕ6ËJÖHÏ ÖBÏBÛ:Ñ:ÍHÌ Õ6Ï:Ì8ÎOÕ=ÍBÔ3ÛJÏ3ÐdðBÌ@Ï �

Ì@ÏBØ��8û:ÔHÓHÍ8ÑùêDÌ8ÏHÖHÏ:îBæ3Ëxß'ÑHÒBÐ^Í)Î^ÍBÔ8ÒBËsðBÌ@ÏjÏBÜHÎHÏ:ÔBÌ8øJÏ@Ì@áèêEÍ8ÎJÏ�ÕRÑ:î@æBËjÏjÒHÏ:Ì)ç^Í8ËÚ@ÑOÕ/ÑDË�Ú)Ë:Ô8ÎHËrÒBÏrÌ@Ñ@ö8ÒHÑ-Ò3Ë�ÐHàHÒ@Ù@ÖBËìâ

3.1.6 Estrutura de Controle do Programa

ä)Ü^ÍHÌ)ÎJÏxÙ8ÐHÑ Õ/ÏHÖHÑ@î8æBË�ÒHÏwÓBñ@ÑBÐHÑHÒBÑvÏ:Ô8ÎOÕ/ÏhÒBË^ÍBÌÞÐBàJÒ:Ù8ÖBË:Ìëê�ò Ï´TëêqÏ3Ð Ù8ÐÚ�Õ6ËHÛOÕ/ÑBÐJÑ Ï@Ì8ÎtÕRÙ8Î^Ù�Õ/Ñ@ÒBËìêyÌ@Ï Ë ÐHàJÒHÙ@ÖBË ò Õ/Ï3Ø^ÙHÍHÌBÍ)ÎJÑ Ë ÐHàHÒHÙ@ÖBË T Ú8ÑOÕ/ÑÏBÜJÏ:ÓBÙ8ÎJÑOÕYÌHÙ@Ñ+Ý@ÙHÔHî@æ3ËèâóBË Ú8Ë^Ô8ÎBË Ò3Ï ç^ÍHÌ8ÎHÑ ÒHÑ Ï:Ì)Î�Õ=Ù8Î^Ù�Õ6Ñ ÒBË Ó)Ë^Ô8ÎtÕKËJÖHÏ ÒBË Ú�Õ6Ë@ÛOÕ/ÑBÐJÑèêxÍBÌ)ÎHËÌHÍ8Û^ÔBÍ@Ý:ÍHÓ8Ñ+Ø^ÙBÏ+Ë-ÐHàHÒ:Ù@Ö3Ë,ò�ÓHñ)ÑBÐJÑ-Ë+ÐHàJÒHÙ@Ö3Ë�TãâW4dÙ8Ñ:Ô8ÒBË-Ë-ÐHàHÒHÙ@ÖBË,ò�ÓHñ8ÑBÐHÑËxÐHàJÒHÙ@Ö3Ë TëêkË Ó8Ë^Ô%ÎtÕ6ËJÖHÏhÒBË�Ú�ÕmËHÛtÕ/Ñ8ÐHÑxåxÚ@Ñ@ÌHÌ@ÑBÒBË�ÒBËbò Ú8ÑOÕ/ÑvËtTãêqËÓ8àJÒ:Í)ÛHËQÒ3Ë�Trå+Ï:Ô8ÎHæ8Ë�ÏBÜ:Ï:ÓBÙ8ÎJÑ3ÒBËQÏ+Ø^Ù@Ñ@Ô8ÒBËQÏBÌ8ÎJÏkÓ%ËHÐ^Ú@ÖHÏ3ÎHÑ�Ì3Ù@ÑkÏBÜHÏ:ÓHÙ@î8æBËìêÚ@Ñ:ÌHÌ8Ñ+ËrÓ3Ë^Ô8ÎtÕmËHÖHÏ-ÒHÏ£çJËJÖ8ÎHÑ-Ñ3Ë+ÐHàJÒ:Ù8ÖBËEò âïjÐBàJÒ:Ù@ÖBËròvß'ÐBàJÒHÙ@ÖBË�ÓBñ@ÑBÐHÑHÒBË�Õ6á�åqÒHÏ:Ô8ËBÐ^ÍHÔ8ÑHÒ3ËcÚ@ÑHÍqÒ%Ë�ÐHà:Ò:Ù@Ö3ËÇTyß'ÐHàJÒ@Ù@ÖBËÓHñ@ÑBÐHÑHÒBËJá>Ï+Ë+ÐBàJÒ:Ù@ÖBËPT�å>ÒHÏ:Ô)ËBÐ^ÍHÔ@ÑHÒ3ËrÝ:Í@Ö@ñ8Ë-ÒBË+ÐHàHÒHÙ@ÖBËUò âò�Ì Ú�Õ=ÍHÔBÓHÍBÚ@Ñ:ÍBÌ ÕmÏBÛtÕ/Ñ:Ì Ú@Ñ�Õ/Ñ Ë ÝBÖ:Ù8ÜHË ÒHÏ Ó8Ë:Ô8ÎtÕ'ËJÖBÏ Ò@Ï Ù3Ð Ú�Õ6ËHÛtÕRÑ3ÐJÑÏ:Ì8ÎtÕRÙ8Î^Ù�Õ6Ñ@ÒBË�Ì8æ3ËìôL ä)Ü^ÍHÌ)ÎJÏrÙ)Ð-ÏrÌ%ËHÐJÏ:Ô8ÎHÏ�Ù8Ð+Ð@àJÒ:Ù8Ö3ËaÕ/Ñ@Í@íèê Ï8Ð�Ù)ÐrÚ�Õ6ËHÛOÕ6ÑBÐJÑ�Ï@Ì8ÎOÕ=Ù8Î:Ù�Õ/ÑHÒ3Ë âL ò�ÏBÜHÏ:ÓHÙHî8æ3ËkÒBË-Ú�Õ6ËHÛOÕ6ÑBÐJÑ+Ò@Ï3çsÏ>Ó8ËHÐJÏ:î8ÑOÕTÓ8Ë@Ð+Ë+ÐHàJÒ:Ù8Ö3ËaÕ/ÑHÍ8íèâL ïbÓ8Ë^Ô8ÎtÕmËHÖHÏaÒBËeÚ�Õ6ËBÛOÕ/ÑBÐJÑaÒBÏ%çsÏcÌ@ÏOÕ�Ú@Ñ:Ì8Ì@ÑHÒBËeÚ@ÑOÕ6ÑeÙ)ÐaÐHàJÒ@Ù@Ö%ËyÏ3ÐbÌ8Ï:ÙÚ8Ë^Ô8ÎBËkÒHÏDÏ:Ô8ÎtÕRÑBÒHÑ-ÏDÒHÏ3çsÏ+Ì@Ñ:Í�ÕYÒBË-ÐBàJÒ@Ù@ÖBËrÏ3ÐrÌ@Ï:Ù+Ú)Ë^Ô8ÎHË�ÒHÏ�Ì@Ñ@ö@ÒHÑèâL ï�Ó8Ë^Ô8Î�Õ6ËJÖHÏwÕ/Ï3Î@ËtÕ=Ô@ÑnÌ8ÏBÐJÚ�Õ/ÏcÑBËnÐBàJÒ:Ù@ÖBËbÓBñ@ÑBÐHÑHÒ3ËtÕ�ê,Ø^Ù8Ñ@Ô@ÒBËaËnÐHàJÒ:Ù8ÖBËÓHñ@ÑBÐHÑHÒBËrÓ)ËHÐ^Ú@Ö@Ï3ÎJÑ-ÑDÏBÜJÏ:ÓBÙ@î@æBËèâÊHÑ Ö:ÍHÔ8Û^Ù3ÑBÛJÏBÐ �I�� Ë Ð@àJÒ:Ù8ÖBË Ý@Í@Ö:ñ8Ë Ú3ËJÒBÏ ÓBñ8ÑBÐJÑOÕxË ÐHàJÒ@Ù8ÖBË Ú8Ñ:Í Ë^ÙëêÑ:ÍHÔ@ÒBÑèêuÙ)Ð�ÐHàJÒ@Ù8ÖBË�Ú)ËHÒHÏrÓ@ñ8ÑBÐJÑ�ÕYÑrÌHÍ,Ð:Ï:Ì8ÐBËìâ

3.1.7 Documentação

ò ÒBË^ÓHÙ8ÐHÏHÔ8ÎJÑ@î@æBË å Ù8ÐJÑ Ú@ÑdÕ6ÎJÏ Ï:ÌHÌBÏ@ÔHÓHÍ@ÑBÖ ÒHÏ Ù8Ð Ú�Õ6ËBÛOÕ/ÑBÐJÑ ×8Ï3ÐdðÏ:Ì8ÎtÕRÙ8Î^Ù�Õ6Ñ@ÒBËìâ ä8ÖBÑ å Ò:Í�ÕRÍ8Û^Í8ÒHÑ Ñ ÎOÕ/û@Ì ÔBö)çsÏ@ÍHÌ ÒHÏ Ó3ËHÐ:Ú�Õ/ÏBÏ:ÔHÌ@æ3Ë ÒBËÚ�Õ6ËHÛOÕ/ÑBÐJÑùôL ÍsÖBË^×BÑHÖL ïãÕ6ÛJÑHÔHÍ@íHÑ@î8æBËkÒ3ËrÚ�Õ6ËHÛ�Õ/ÑBÐJÑL �HÔHÌ8Î�Õ=ÙHî@æ3Ë-ÒBËrÚ�Õ6ËHÛtÕ/Ñ)ÐJÑJÑHÒHÑ�ÔHö)çJÏ@Ö�ÌHÙHÓ@Ï:Ì3ÌHÍ)çJËjÝBË�ÕRÔ@Ï:Ó8Ï�Ù8ÐJÑ�çdÍ@Ì@æBË�ÐHÑ:ÍHÌqÒHÏ3Î:ÑHÖ:ñ@ÑBÒBÑ�ÒBËeÚ�Õ6ËHÛtÕRÑ3ÐJÑÏbÎHËJÒBË:ÌnË^ÌyÎtÕ/ûBÌ�ÔHö)çJÏ@ÍHÌ�Ì@æ3ËhÔ@Ï@Ó@Ï:ÌHÌ8÷�Õ=Í8Ë^ÌbÚBÑOÕ/Ñ�Ñ�ÌHÙ8ÑÞÓ)ËBÐ^Ú�Õ/ÏHÏ:ÔHÌ8æ3ËhÏÐJÑ:ÔHÙ)ÎJÏ:ÔHî8æ8Ëìâ

Page 34: Logica Programacao Aplicada V2.2008

34

�m² �m6¼C.mµÁºg¾p¸Éºp¶8Çmº�#f" ÅpÂ'"»½I¼t½$&)(mÅƲ8ÑOÕ/Ñ Ì@Ï Ï:Ì3Ó�Õ/Ï3çsÏdÕ Ù)Ð Ú�ÕmËHÛtÕ6Ñ8ÐJÑ å Ô@Ï:Ó@Ï@Ì@Ì@÷OÕ=Í)Ë Ú@Ñ@ÌHÌ8ÑOÕ Ñ ÖBàHÛ^ÍBÓ@Ñ ÒBËÚ�Õ6Ë^×8ÖHÏBÐJÑhË@ÙwÝHÖ:Ù8ÜBËHÛOÕ/ÑBÐHÑxÚ@ÑOÕmÑxÙ8ÐJÑvÖ@ÍHÔ8Û^Ù8ÑBÛHÏBÐvØ:Ù@ÏhË�Ó8ËBÐJÚHÙ8ÎJÑBÒBËtÕnÌBÏ��HÑÓ@Ñ:Ú@ÑBí ÒBÏ Ï:Ô8ÎJÏ:Ô)ÒHÏOÕ�â ú8ÐHÑ Ö:ÍHÔ8Û^Ù8ÑBÛJÏ8Ð ÒHÏ%çsÏ ÎJÏOÕ Ù)Ð Ó)Ë:Ô/�:ÙHÔ3ÎHË ÒHÏÍHÔHÌ8ÎOÕ=ÙHî8øHÏHÌëê Ì@ÏBÐ�Y:Ô)Î^ÍHÓ@Ñ Ï ÌHÍHÔ8ÎHÑBÜJÏ Ú�Õ'à^Ú�ÕRÍ@Ñ@Ì Ø^Ù@Ï Ú8Ë^Ì3ÌHÍH×HÍ@ÖHÍ8ÎJÏ3Ð ÑÚ�Õ6ËJÒ@ÙHî@æBË�ÒHÏrÙ)ÐrÚ�Õ6ËHÛ�Õ/ÑBÐJÑ>ÏBÜJÏ@ÓBÙ8ÎJ÷3çsÏBÖèâä)Ü^ÍHÌ)ÎJÏBÐ Ð@ÙHÍ8ÎJÑ:Ì Ö:Í@Ô)Û^Ù@ÑBÛHÏ@ÔHÌ ÒHÏ Ú�Õ6ËBÛtÕ/Ñ8ÐJÑ@î@æBË Ô)Ë ÐJÏ�Õ=Ó@ÑHÒ3Ë ÑBÎ^Ù@Ñ@ÖBÐJÏ:Ô)ÎHÏèâÊ:Ù8ÐJÑ Õ/÷@ÚHÍ@ÒBÑ Ö:ÍBÌ8ÎJÑ3ÛJÏ3Ð Ú)ËJÒHÏ3Ð Ì@Ï�Õ ÓBÍ8ÎJÑHÒ@Ñ@Ìëôbò�ÒHÑëê�ò^ÖBÛHËJÖëêbò�ÌBÌ@ÏBÐ^×BÖ>`ìêT=ò õ �aìê�TJämé@ò ê�ìê��e/e�ê�:ÖBÑOÕ=Í8Ë@Ôëê�HÖ:ÍHÚHÚ@Ï�Õ�ê�@Ë^×)ËJÖèê¬óHÏHÖ@ÚBñHÍëêuäBÍ@ÝHÝHÏ@Öèê�ä%ÖHÝèêr1ËtÕ6Î:ñëê�r1ËOÕ6ÎOÕ/ÑHÔëê�s@Ñ)çJÑèê�OBÍHÌHÚëêWRHËJÒ@Ù@ÖHÑ^ð ê�RHËHÒHÙ@ÖHÑ^ð��Oê ï^×@ÏOÕ6Ë^Ôtê ïd×{�HÏ:Ó8Î^Í%çsÏ:ðìê 8Ñ:ÌHÓ8ÑHÖèê 3ÏOÕ6Öèê �Õ'ËJÖBËBÛìê õ Í8Ð^Ù8ÖHÑèê õ Ð:ÑBÖHÖBÎJÑBÖ:ÿãê�é�Ó@Ö^ðméOÿãêvÏ Ð^ÙHÍ8ÎHÑ:ÌëêÐ^ÙHÍ8ÎHÑ:Ì>Ë:Ù3ÎtÕ/Ñ:Ì�ß'ÐJÑ:ÍBÌ>ÒHÏ ��D1þ+Ö:ÍHÔ8Û^Ù8ÑBÛ:Ï:ÔHÌ8áèâóHÑ�ÐJÏ:Ì8ÐHÑjÝ3ËtÕ6Ð:ÑjÏBÜ^Í3Ì8ÎJÏBÐ�Ð^ÙHÍ)Î@Ë^ÌjÓ8ËHÐ^Ú3Í@ÖHÑHÒBËOÕ6Ï:Ì�Ò:Í@ÌHÚ)Ë^ÔHö)çJÏ@ÍHÌãêEÔ8ËjÐ^ö@ÔBÍ8ÐHËÙ8Ð ÚBÑOÕ/Ñ Ó@ÑHÒHÑ Ù8ÐJÑ Ò@Ñ:Ì Ö:ÍHÔ)ÛJÙ@ÑBÛJÏ@ÔHÌ ÓBÍ8Î:ÑHÒHÑ@Ìëâ�)Ñ�Õ/Ñ Ñ Ö:Í3Ô8Û^Ù@ÑBÛHÏBÐ n)plÏ:Ì8ÎJæ3Ë Ò@ÍBÌHÚ8Ë^ÔBö%çsÏ:ÍHÌ ÝHÑ@×�Õ=ÍHÓ8Ñ8Ô8ÎJÏ:Ìa�^ÝBËtÕRÔ@Ï@Ó@ÏHÒ3ËOÕ/Ï:Ì Ó8ËHÐ Ó8ËBÐJÚBÍ@ÖHÑHÒ3ËtÕ/Ï@Ì ÏÑBÐ^×HÍ8Ï:Ô8ÎJÏ@Ì ÒHÏ Ú�Õ6ËHÛ�Õ6ÑBÐJÑ:î8æ3Ë Ð:ÙHÍ)ÎHË ÏBÝ:ÍHÓ@Í@Ï@Ô8ÎJÏ:Ìãô��8Ð^Ú�Õ=ÍBÌ@Ïèêcó�saÍ��ãêjï^Ú8Ï:Ôo�ÑBÎ^Ó)ËHÐìê õ `JÐJÑ:Ô)ÎHÏ:Óëê¬Ï%Î^ÓëâúBÐJÑ ×8ËJÑ Ú@ÑOÕ'ÎJÏ ÒBË^Ì Ú�Õ6ËHÛOÕ6ÑBÐ:Ñ:Ì Ñ:Ú�Õ6Ï:Ì@Ï:Ô)ÎHÑHÒBË^Ì Ô8Ë ÎJÏBÜBÎHË ÝBË^Í ÎJÏ:Ì8ÎHÑHÒHÑÙ8Î^Í@Ö@Í@íHÑ:Ô8Ò8ËrËkó�saÍ��I��1/���@ó:ä�ßa�6ï�Ó8ËHÐJÚHÍ@ÖBÑHÒ3ËtÕ>�Uó3ï õ � ×HÍ)Î^Ì�Ï�ÑBÐ^×HÍ8Ï:Ô8ÎHÏ-ÒHÏÚ�Õ6ËHÛOÕ/ÑBÐJÑ@îBæBË 1/���8ó:ä Ò:ÍHÌHÚ8Ë@Ô@ö)çsÏ:ÍBÌ Ô@Ñ �HÔ8ÎHÏ�Õ=Ô@ÏBÎHá Ï Ë Í����{Lu�@ó^äß/Ó8ËHÐ:ÚHÍ@ÖHÑBÒ8ËtÕ ÍsÊ8ú>���e�e Ó8ËHÐ Ñ3Ð^×HÍ8Ï:Ô8ÎJÏ Lh�@ó^ä8á ÎJÑBÐ^×8åBÐ Ò:ÍBÌHÚ)Ë^ÔHö%çsÏ:ÍHÌ Ô@Ñ�HÔ8ÎJÏ�Õ=Ô@ÏBÎèâïdÌ Ï3ÜJÏBÐ^Ú@Ö3Ë^Ì Ï@ÔBÓ8Ë^Ô8Î�Õ6ÑHÒBË^Ì Ô)Ë ÎHÏBÜHÎHË Ì@Ï Ó)Ë^ÔHÓ@Ï:Ô1ÎtÕ/ÑBÐ ÏBÐ Ú�Õ'ËHÛtÕ/Ñ3ÐJÑ:ÌÌHÍ8Ð^Ú8ÖHÏ:Ìëê�Ù8Î^Í8Ö:Í@íBÑ:Ô8ÒBËjÑ:Ì�Ý@ÙHÔHî)øJÏ@ÌqÐHÑ:ÍHÌ�×@÷@ÌHÍBÓ@Ñ:ÌqÒBÑ�Ö:ÍHÔ8Û:Ù8ÑBÛHÏBÐ ä)ñäHê£Ó8ËHÐû:Ô@ÝHÑ@Ì@ÏvÏBÐ�Ú�Õ6Ë:Ó@Ï:ÌBÌ@Ñ3ÐJÏ:Ô)ÎHË ÓHÍ)Ï:Ô8Î^ö@ÝHÍHÓ8ËxÏwÔ@æ3Ë�ÏBÐvÏ:Ì8ÎtÕ=Ù)Î:Ù�Õ6Ñ:ÌÞÒHÏvÒHÑBÒBË^ÌÓ8ËHÐ^ÙBÔHÌ�Ñ+ÓHÙ�Õ=Ì)Ë:Ì�ÒHÏ>Ì8ËJÝBÎ:^dÑOÕ/Ï>Ó8ËHÐJÏOÕRÓHÍBÑ:ÍHÌãâ8ÑOÕ/Ñ_ÏHÌHÓ�Õ/Ï%çJÏOÕqÙ8Ð�Ú�ÕmËBÛtÕ/ÑBÐJÑ_Ú�Õ/Ï:ÓHÍHÌ8ÑBÐBË^Ìy×@Ñ@ÌHÍBÓ@Ñ3ÐJÏ:Ô8Î:Ï_ÒBÏbÙ)ÐbÏHÒ:Í8ÎBËtÕqÒHÏÎJÏBÜHÎBË�Ô@æBËbÝBËOÕmÐJÑBÎJÑ@Ò3Ëìê�Ù8Ð�Ó8ËBÐ:ÚHÍ@ÖHÑHÒ3ËtÕdê-Ù8Ð c�aqp�r�d�fsa,t�gDl�Ï_Ù8Ðuf�d�v�w-x�xDdOl�âÊBËtÕ6ÐHÑHÖBÐJÏ@Ô3ÎJÏèê+Î^Ù@Ò%ËÞÍHÌ8ÎHËyçJÏBÐbÏBÐ^×BÙ8Î^Í@ÒBËhÔBÙ8ÐJÑ��HÔ3ÍHÓ@Ñ�ÍHÔ8ÎHÏ�Õ6ÝHÑ:Ó8Ï�ÓHñ@ÑBÐHÑHÒBÑòdÐ^×HÍ8Ï:Ô8ÎJÏ>ÒHÏ-óBÏ@Ì@Ï:Ô)çJËBÖ3çdÍ8Ð:Ï@Ô8ÎHËP�HÔ8ÎJÏBÛOÕ/Ñ@ÒBËcßI�8ó^ä)áèâHËHÐxË�ÏHÒ:Í8ÎBËtÕyÒBÏwÎHÏBÜHÎHË Ú)ËJÒBÏBÐ@Ë^ÌvÏ:ÌBÓ�Õ/Ï%çsÏ�ÕyÙ8ÐxËJÙhÐHÑ:ÍHÌÞÑOÕ6Ø^ÙBÍ)çJË^ÌÞØ:Ù@ÏÓHñ@ÑBÐHÑBÐHË^Ì �'òèÕ'Ø^ÙBÍ)çJË:Ì r/Ë:Ô8ÎJÏ��Oâ ï Ó8ËHÐJÚHÍ@ÖBÑHÒ3ËtÕ Ï3ÜJÑBÐ^ÍBÔBÑ Ë Ó8àHÒ:Í8ÛHË ÏçsÏOÕ=Í8Ý:ÍHÓ@Ñ Ñ ÏBÜ:ÍHÌ8ÎHû:Ô@ÓHÍ@Ñ ÒHÏ ÏOÕHÕmË^Ìëâ õ Ï ñ8Ë:Ù)çsÏOÕ6Ï3Ð Ï�ÕHÕ6Ë:Ì ÏBÖHÏ:Ì Ì8ÏOÕ6æBËÐHË^Ì8ÎOÕ/ÑHÒBË:Ì Ô@Ù8ÐJÑ �HÑ:Ô)ÏHÖHÑ Ï:ÌHÚ8Ï:ÓHö@ÝHÍBÓ@Ñèê ÎJÑBÖ Ø^Ù8Ï Ì@Ï��HÑ Ú3Ë^ÌHÌHö1çsÏBÖÍ@ÒHÏ:Ô)Î^Í@Ý:ÍBÓBÑOÕ�Ï>Ó8ËtÕHÕ=Í1Û^Í�Õ�Ë:Ì�Ï�ÕBÕ6Ë^Ì�Ñ@Ú8ËJÔ8ÎJÑBÒBË:Ìëâï Ó8ËHÐ^Ú3Í@ÖHÑHÒBËOÕ ÛJÏOÕ6Ñ ÑOÕmØ^ÙHÍ1ç:Ë^Ì ÍHÔ)Î:ÏOÕ6ÐJÏBÒ:Í8÷OÕ=Í)Ë^Ì ÓHñ@Ñ%ÐJÑHÒBËJÌ Ñ�Õ6Ø^Ù@Í1çJË^ÌË^×/�HÏ3ÎHË^Ìëê Ù8Ð Ú@ÑdÕ/Ñ Ó@ÑBÒHÑ Ñ�Õ'Ø^ÙHÍ)çHË ÝBË^Ô)ÎJÏ Ï3ÜHÑBÐ^ÍHÔ8ÑBÒBËìâ ï c�ayp�r�d�fsa,t�gDlÓ8ËHÐ^×BÍHÔ@ÑnË^ÌjçJ÷�Õ=Í8Ë^Ì_Ñ�ÕmØ^ÙHÍ)çJËHÌjË^×/�HÏBÎBË�Ó8ËHÐbÑ:Ìy×BÍB×@Ö:Í8ËHÎBÏ:Ó@Ñ:ÌnÚ�Õmà^Ú�Õ=Í8Ñ:Ì_ÒBËÓ8ËHÐ^ÚBÍ@ÖHÑHÒ3Ë�Õ�Ï�Ó�Õ=Í@Ñ+Ë+ÑOÕ6ØJÙBÍ)çJË+ÏBÜJÏ:ÓHÙ)ÎJ÷)çsÏHÖùâï f�d�v�w-x�xidzl å Ù)Ð Ñ:Ú@Ö@ÍHÓ@Ñ3Î^Í1ç:Ë Ó8ËHÐ Ë Ø^Ù@ÑHÖ å Ú8Ë:ÌHÌBö)çsÏBÖ ÏBÜJÏ:ÓHÙ)ÎJÑOÕ ËÚ�Õ6ËHÛOÕ/ÑBÐJÑ Õ/Ï:Ó8åBÐ Ó�ÕRÍ@ÑBÒBË Ú@Ñ@ÌHÌ)Ë Ñ Ú@Ñ@ÌHÌ3Ë ÏxçJÏ�Õ=Í@Ý:ÍBÓ@Ñ�Õ�ÏxÏ@ÔHÓ8Ë:Ô8ÎtÕ/ÑOÕnË^ÌÏOÕHÕ6Ë:Ì>Ø^Ù8Ï>Ë^Ì,ÐBËtÕ6ÎJÑ:Í3Ì-Ó8Ë@ÐHÏBÎJÏ3Ð-Ò:Ù�Õ/Ñ@Ô8Î:Ï+ËrÚ�Õ6Ë^Ó8Ï:ÌHÌ)ËrÒHÏ�Ó�Õ=Í8Ñ:î@æ3Ëìâ

Page 35: Logica Programacao Aplicada V2.2008

35

{�| }�~;� �y�-�e� ���,�

{�| }�~;� �y�-�e� �

{�| }�~;� �y�-�e� ���;�

{�| }�~;� �y��� � � �{�| }�~;� �y��� ���q�

{�| }�~;� �y��� �����{�| }�~;� �y��� ��{��

r3Í8ÛèâJ�tâgü-ðZdÕmË^Ó@Ï:ÌBÌ8Ë-ÒHÏ�Ó�Õ=Í8Ñ@î@æBË-ÒHÏrÙ)ÐkÚ�Õ6ËBÛOÕ/ÑBÐJÑùâ4dÙ@Ñ:Ô8ÒBËnË_ÑOÕ6Ø^Ù@Í1çJË_ÏBÜJÏHÓBÙ8ÎJ÷3çsÏ3ÖnånÓ�Õ=Í@ÑHÒ3ËbÑ_Ú8ÑOÕ6Î^Í�ÕQÒBÏeÐJÙHÍ8ÎBË^ÌaÑ�Õ6Ø^ÙHÍ1çJË:ÌÝBË^Ô8ÎHÏèê�ÍBÔHÓ@Ö:ÙBÍBÔ@ÒBË Õ/Ï:ÓHÙ�ÕRÌ8Ë^Ì ÛtÕ/÷HÝ@ÍHÓ8Ë^Ì Ó8ËHÐBË ÐJÏ@Ô@ÙHÌ Ï ×HÍ3Î3ÐJÑ:ÚHÌãê�Ï:Ì)ÎJÏ:ÌÑOÕ6Ø^ÙBÍ)çJË^ÌvÚsÕ/Ï:ÓHÍHÌ8Ñ8Ð�Ì@ÏOÕjËtÕ6ÛJÑ8ÔHÍ@íHÑHÒ8Ë^ÌwÔ8ËhØ^Ù8ÏvåvÓ3ËHÐ^Ù8ÐJÏ@Ô)ÎJÏwÓHñ8ÑBÐJÑHÒ3Ë�ÒHÏ�1)ï�sHä/éJï�â,ï�Ñ�ÕmØ^ÙHÍ)ç:Ë_Ø:Ù@ÏnËtÕ6ÛHÑ@ÔHÍ@íHÑeÎHË:ÒBË:ÌnÏ:Ì8ÎHÏ:ÌxÕ6Ï:ÓHÙ�Õ=Ì8Ë:Ìùê�Ó)ËHÐyË^ÚHî)øJÏ:ÌÒHÏ�Ó8ËHÐ^ÚHÍ8Ö@Ñ:î@æ3ËaÏ�Ë^Ù)ÎOÕ6Ë^Ì�ÒHÏ3ÎJÑ3Ö:ñ@Ï:Ìëê£Ó8ËJÌ)Î^Ù8ÐJÑ�Ì@ÏdÕrÓ@ñ@ÑBÐJÑBÒ3ËaÒBÏ��Q��r�d�jOa�cedãâò�ÖHåBÐkÒHÏHÖHÏ�Ú8ËJÒBÏBÐ�Ì@Ï�ÕUÔ@ÏHÓ8Ï:ÌHÌ@÷dÕ=Í8Ë^Ì�ÑOÕ6Ø^Ù8Í)çJË^Ì>Ø:Ù@ÏrÓ8Ë^Ô@Ý@Í)Û^Ù�Õ/Ñ)ÐrËkÑBÐ^×HÍ@ÏHÔ)ÎJÏÒHÏrÚ�Õ6ËHÛtÕ6Ñ8ÐJÑ:î@æ3Ë-Ï-ÑOÕpØ^ÙHÍ)ç:Ë:Ì-Ó)ËBÐ�ÍHÔ@Ý3ËtÕ'ÐJÑ:î)øJÏ@Ì>ÎHÏBÐ^Ú)Ë�Õ/÷OÕ=Í8Ñ@Ìëâ

�m² �uÛ ¶ ¸ " ,K¸å,q"»½HÇmº�,'¼ #%" ÅpÂ'"»½I¼t½HºK¼�� Ä�� ²

ïdÌ Ú�Õ6ËBÛOÕ/ÑBÐHÑ:Ì Ï:ÌHÓ�Õ=Í)ÎHË^Ì Ô8Ñ Ö:ÍHÔ8Û:Ù@Ñ8ÛJÏ3Ð n)ñl Ì@Ï3ÛJÙ@ÏBÐ Ñ8Ö3Û^Ù8ÐJÑ@Ì Õ6ÏBÛtÕ6Ñ:ÌÛJÏOÕ/Ñ@ÍHÌëê Ñ8Ø^ÙHÍqÕ6Ï:ÌHÙ8Ð^Í)ÒHÑ:Ìëâ

3.3.1 Regras Gerais •

òaÚ�Õ=Í8ÐHÏ:Í�ÕRÑ�Ý:ÙHÔHî8æ8Ë�Ñ�Ì@ÏOÕ,Ó�ÕRÍ3ÑHÒHÑQÔHÙ8Ð�Ú�ÕmËHÛOÕ/ÑBÐJÑkÏBдä)oäXÒHÏ)çJÏQÌ@ÏOÕ,ÑÝ:ÙHÔBî@æBË+ÐHÑ:ÍHÔOß'áëâ•

ò�Ý@ÙHÔHî@æ3Ë-ÐHÑ:ÍBÔOßRárÔ3æBË�Ú�Õ/Ï:ÓBÍHÌ8Ñ-Ì@ÏOÕYÒHÏ:Ó@ÖBÑ�Õ/ÑHÒBÑèâ�@ËBÐHË�Ù8ÐHÑ�×8ËHÑ�Õ/ÏBÛOÕ/Ñèê¢��O�/� W ¾/�Q~Q�/}�N_¾��+Ý@ÙHÔHî8øHÏ@Ì�ÒHÏ1çJÏBÐ�Ì8ÏOÕ�ÒBÏ@Ó@ÖHÑOÕRÑBÒHÑ:Ìëâ

• ÐJÑ:ÍBÔOßRá Ï:ÌHÚ@Ï@ÓBÍ@Ý:ÍHÓ@ÑjÑaÝ@ÙBÔHî@æBËeÚ8ËtÕ-Ë:Ô8ÒHÏjËeÚ�Õ6ËHÛOÕRÑBÐJÑcÓ8ËHÐJÏ@î8ÑaÑeÌ@ÏOÕÏBÜJÏ@ÓHÙ8ÎJÑBÒ3Ëìâ

• ä)Ð�ä)oäBê�ÎHËHÒHÑ@ÌQÑ:Ì�ÏBÜ^Ú�Õ/Ï8ÌHÌ8øJÏ:ÌQÌ@æ3Ë�ÎtÕ'ÑBÎJÑHÒHÑ8Ì�Ó3ËHÐBË�Ý:ÙHÔBî8ø:Ï:Ìëê�Ó8ËHÐqË^ÙÌ@ÏBÐrÚ@ÑOÕfY3ÐJÏBÎtÕmËJÌëâ

• RJÏ:Ì)ÐHË Ø:Ù@Ñ@Ô@ÒBË Ô@æ3Ë ñ8Ë^Ù)çJÏ�Õ Ú@ÑOÕIY3ÐJÏBÎtÕmË:Ì ÒHÏ%çsÏ:ðBÌ@Ï Ò:ÍBíHÏ�Õ Ø^Ù@Ï Ô@æBËÏBÜ^ÍBÌ8ÎJÏBÐ�Ú@ÑOÕfYBÐ:ÏBÎOÕ6Ë^Ì�Ô@ÑBØ^Ù8Ï@ÖHÑ�Ý:ÙHÔHî@æ3ËìâØ8ÑOÕ/ÑqÍHÌHÌ)ËcÙHÌBÑ^ð3Ì@Ï�Ñ�Ú@ÑHÖHÑ%çãÕ/ÑÕ/Ï:Ì8ÏOÕmçsÑBÒBÑ��;��~�|{x��tâ

• úBÐJÑ+Ý:ÙHÔBî8æBËkå+Ì@ÏBÐ^Ú�Õ/Ï+ÒHÏBÖ:Í)Ð^Í3ÎHÑHÒHÑ�Ú8ËtÕTÙ)Ð�Ú@Ñ�ÕYÒHÏ�ÓBñ@Ñ3çsÏ@ÌF� �ëâ

• O8ÏBÎOÕ/Ñ:ÌvÐHÑ:Í��HÌBÓHÙBÖHÑ:Ì�ÏxÐ^ÍBÔ��HÌHÓBÙBÖHÑ:Ì Ì8æBË ÎtÕ6ÑBÎJÑBÒHÑHÌ Ó8ËBÐBË Ó@Ñ�Õ6Ñ:Ó8ÎJÏ�Õ/Ï@ÌÒ:Í@ÝBÏOÕ/Ï:Ô)ÎHÏ:Ìëâ

• ïQÝ3ËtÕ6ÐJÑ3ÎBËkÒBË>ÎJÏBÜHÎBË-å-Ö@Í)çtÕ/Ïëâ

• ésËJÒ3Ë^Ì>Ë:Ì+Ó8ËHÐHÑHÔ@ÒBË^Ì+Ì8æBË+ÎJÏ�Õ6ÐJÍBÔ@ÑHÒBË:Ì-Ú8ËOÕ�P{~�À/}>~U»J��yONIzQ��¿/¾èâ

• ¢�~�x�¾���Ñ@ÌUçsÑOÕRÍ@÷)çsÏ:ÍBÌ>ÒHÏ3çJÏBÐrÌBÏ�Õ�ÒHÏ@Ó@ÖHÑOÕ6ÑBÒHÑ:Ìëâ

Pr ogr ama Exempl o: f unção mai n( ) Descr i ção: obser ve a est r ut ur a da f unção mai n( ) . Nest e exempl o a f unção não envi a nenhum par âmet r o ( a pal avr a voi d ent r e par ênt esi s) e não r et or na nenhum val or ( a pal avr a voi d ant es de mai n) . Logo em segui da é

Page 36: Logica Programacao Aplicada V2.2008

36

aber t a uma chave " { " , escr evem- se as var i ávei s, oper ador es e f unções e a chave é, ent ão, f echada " } " . #i nc l ude <st di o. h> voi d mai n( voi d) { / / var i avei s. . . . . . . . . . . . / / oper ador es e f unções. . . . . . . . . pr i nt f ( " Eu não f aço nada. " ) ; }

3.3.2 Palavras reservadas (keywords):

ò�×@Ñ:Í)ÜHËkÏ@Ì3ÎJæBË-ÑBÖBÛ^Ù8ÐJÑ8Ì�ÒHÑHÌ+Ú@ÑBÖBÑ3çãÕ/Ñ:Ì+Ó@ñ@Ñ3çJÏ:Ì>ÒBÑ�OBÍBÔ3Û^Ù@ÑBÛHÏ3Ð�ä)oäBâ¬ÊHÏHÔBñHÙ8ÐJÑçsÑOÕ=Í8÷3çsÏHÖ,Ë^Ù�Ý@ÙBÔHî@æBË+ÒBË�Ù@ÌBÙ@÷OÕRÍ)Ë�Ú8ËJÒBÏ-Ù8Î^Í8Ö:Í8íHÑOÕYÏ:Ì)Î:Ñ:Ì-Ú8ÑBÖHÑ%çãÕ/Ñ@Ì-Ô@ÑÝBËtÕ6ÐHÑrÓ8ËBÐ@ËkÝBËOÕ6ÑBÐkÒHÏ3Ý:ÍHÔHÍBÒBÑ:Ìëâ8ÑHÖHÑ%çãÕ/Ñ:Ì�Õ/Ï:Ì@Ï�ÕpçsÑHÒHÑ:Ì,Ï-ÝHÙBÔHî8øHÏ@Ì�ÒHÑ:Ì+×@ÍH×@Ö@Í8ËBÎJÏ:Ó8Ñ:Ì+ÌBæBË�Ì8Ï3Ð^Ú�Õ/Ï+ÒHÏHÝ:ÍHÔ8Í@ÒHÑ:ÌÓ8ËHÐ-ÖHÏBÎtÕ6ÑHÌ>Ð^ÍBÔ��HÌHÓHÙ@Ö3Ñ:Ìëâ

br eak case char const cont i nue def aul t do doubl e el se enum f l oat f or i f i nt r et ur n si gned s i zeof st r uct

swi t ch t ypedef uni on unsi gned voi d whi l e é�Ñ:×ùâJ�tâgü-ðTòdÖ3Û^Ù8ÐJÑHÌ+Ú@ÑHÖBÑ3çtÕ/Ñ:Ì�Õ/Ï:Ì8ÏOÕmçsÑBÒBÑ:Ì�ÒBÑUOBÍHÔ8Û@Ù@ÑBÛJÏ3Ð�ä)ñäBâ

3.3.3 O comando #define

ï_Ó)ËHÐJÑ@Ô@Ò8Ë� JÒHÏHÝ:ÍHÔ)Ïjå�Ù8Î^Í8Ö@Í@íHÑBÒ8ËeÚ8ÑOÕ6Ñ�ÒHÏHÝ@Í@ÔHÍ�Õ>Ù8Ð�Í@ÒHÏ:Ô8ÎHÍ@Ý:ÍBÓ@ÑBÒBËtÕ>Ï�Ù8ÐJÑÌ8ÎtÕ=ÍBÔ8Ûìâ�ï Ó8ËHÐ^ÚHÍ)ÖHÑHÒBË�ÕyÍ�Õ/÷�Ì@ÙH×HÌ8Î:Í8Î^ÙHÍ�ÕeË Í@ÒBÏ@Ô8Î^Í@Ý@ÍBÓ@ÑHÒBË�ÕyÚ@ÏHÖBÑ Ì8ÎtÕ/ÍBÔ8ÛÓ@ÑHÒHÑEçsÏHí,Ø^Ù@ÏDËrÍ@ÒHÏ:Ô1Î^Í@Ý:Í@Ó8ÑHÒBËOÕYÝBËtÕYÏ:Ô@Ó8Ë^Ô)ÎtÕ6ÑHÒBËrÔ8Ë�ÑOÕ6Ø^ÙBÍ1çJË^ð8ÝBË:Ô8ÎJÏèâ

#def i ne i dent i f i cador st r i ng

Exempl o: #def i ne #def i ne DOWN 80 #def i ne ENTER 13 #def i ne ESC 27 #def i ne FALSE 0 #def i ne LEFT 75 #def i ne RI GHT 77 #def i ne TRUE 1 #def i ne UP 72

3.3.4 O comando #include

�HÔHÌ8ÎOÕ=ÙHÍÞË�Ó3ËHÐ:ÚHÍ@ÖBÑHÒ3ËtÕ_Ú8ÑOÕ/Ñ�Ø:Ù@ÏvÏHÖHÏhÍHÔHÓ@ÖHÙ8ÑvÙ8ÐvË:Ù8ÎtÕ6Ë�ÑdÕ6Ø^ÙHÍ)çHËdð8Ý8Ë:Ô8ÎJÏ�:ÙHÔ8ÎBË�Ó8ËBÐrÑBØ^Ù8ÏBÖHÏ-ÑOÕpØ^ÙHÍ)ç:Ë+Ø^Ù8Ï+Ï:Ì8ÎJ÷+Ò@Ï:Ó@ÖBÑOÕ6Ñ:Ô@Ò3Ë-Ë-Ó8ËHÐJÑ@Ô8ÒBË¡ �ÍBÔHÓ@Ö:Ù@Ò8Ïèâ

Page 37: Logica Programacao Aplicada V2.2008

37

#i ncl ude <ar qui vo " header " ( cabeçal ho) . h>

ïdÌ Ó@ÑOÕ6ÑHÓ8ÎJÏOÕ6Ï@Ì 8 ¢ Ì8æBË Ù)ÎJÍ8Ö:Í@íHÑHÒ3Ë^Ì Ô8ËtÕ'ÐHÑHÖBÐJÏ@Ô)ÎJÏ Ú@ÑOÕ6Ñ ÍBÔHÓ@Ö:Ù8Í�Õ Ë:ÌÑOÕ6Ø^ÙBÍ)çJË^ÌDÒHÑr×BÍB×@Ö:Í8ËHÎBÏ:Ó@Ñ-Ú8ÑHÒOÕ6æ3ËkÒBË�ìâ #i ncl ude " ar qui vo de " header " . h" ïdÌkÓ8ÑOÕ/Ñ:Ó8ÎBÏOÕ/Ï:ÌÉ�Z�DÌ@æBË�Ù8ÎJÍ@Ö:Í)íHÑHÒBË:ÌkÔ8ËtÕpÐJÑHÖBÐ:Ï@Ô8ÎJÏrÚ@ÑOÕ6ÑrÍHÔHÓ@Ö8ÙHÍ�ÕUÑ�Õ6Ø^ÙHÍ=çJË^ÌÒHÏrÓ8Ñ:×@Ï:î8Ñ@Ö:ñ8ËrÓ�Õ=Í@ÑHÒBË@Ì-Ú@Ï@Ö3Ë�ÙBÌBÙ@÷OÕ=Í8Ëèâ8ÏHÖHÑrÔ8ËBçsÑ�Ú@ÑHÒ�Õ6ËJÔHÍ@íBÑ:î@æ3ËkÒBË�Ó1ËHÐ^Í8ÎHû,ò�Ê õ �ëêEÕRÏ:Ó)ËHÐJÏ@Ô@ÒHÑ:ðBÌ8Ï�Ô@æ)ËQÙ8Î^ÍBÖ:Í@íHÑ�Õ�ÑÏBÜHÎJÏ@ÔHÌ@æBËÉ�3ñ��EÔ)Ë^Ì�ÑOÕpØ^ÙHÍ)ç:Ë:Ì�ÒBÏ�Ó@Ñ:×@Ï@î@Ñ@Ö:ñ8Ëèâ

Exempl o: #i ncl ude

#i ncl ude <st di o. h> / * header padr ão da l i nguagem C * / #i ncl ude “ def i ni coes. h” / * header def i ni do pel o pr ogr amador * /

ésËJÒHÑ@Ì Ñ:Ì Ý:ÙHÔBî8øJÏHÌ ×@÷:ÌBÍBÓ@Ñ@Ì ÝBËtÕRÔ@Ï:Ó@Í@ÒBÑ:Ì Ú8ÏBÖBË^Ì ÝHÑ@×�Õ/ÍHÓ@Ñ:Ô)ÎJÏ:Ì ÒHÑÓ8ËHÐ^ÚBÍ@ÖHÑHÒ3Ë�Õ/Ï:Ì�Ò3Ï OBÍHÔ3Û:Ù@ÑBÛJÏ3Ð ä)oä�Ï:Ì8ÎJæBË�Ó8Ë^Ô8ÎJÍ8ÒHÑ:ÌvÏBÐ ×HÍB×@Ö@Í8ËHÎHÏ:Ó@Ñ:ÌwØ:Ù@ÏÌ@æBË ÍBÔHÓ@ÖHÙHö8ÒHÑ:Ì Ô1Ë^Ì Ú�ÕmËBÛtÕ/ÑBÐHÑ@Ì ÑBÎOÕ/Ñ3çså@ÌvÒBË Ó)ËBÐJÑ:Ô@Ò3Ë £ñ°�È�¯o¨@©�ì�¥tâkò�ÌHÌ@Í)ÐìêØ^Ù@Ñ:Ô8ÒBË�Ñ_Ý:ÙHÔBî8æBË¥¤�®è°�ÈèÊ�¦råyÙBÌ@ÑHÒBÑèê�Ñy×HÍH×@ÖBÍ8ËHÎJÏ:Ó)ÑyÓ8ËtÕHÕ/ÏHÌBÚ8Ë:Ô@ÒBÏ:Ô8ÎJÏyÒBÏ3çJÏÌ@ÏOÕTÍHÔHÓ@Ö@Ù@ö@ÒHÑèâ

Pr ogr ama Exempl o: I nc l usão de bi bl i ot ecas

#i ncl ude <st di o. h> / / par a o pr i nt f #i ncl ude <coni o. h> / / par a o get ch voi d mai n( voi d) { i nt di a, mes, ano; di a = 26; mes = 05; ano = 2000; pr i nt f ( " Agor a ni nguem me segur a! ! \ n" ) ; pr i nt f ( " Meu pr i mei r o pr ogr ama! ! \ n" ) ; pr i nt f ( " Hoj e, no di a: %d/ %d/ %d\ n" , di a, mes, ano) ; get ch( ) ; }

�m² ¶�·Æµ�#mÅI¶BÇKºJÇp½IÇKÅm¶ÊHÏ:Ì8ÎHÏ Ú)Ë^Ô8ÎBË çsÑ3ÐHË^Ì Ó8Ë@ÐJÏ@î@ÑOÕ Ñ ÎtÕ/Ñ:×8ÑHÖ:ñ@Ñ�Õ Ó1ËHÐ Ë Ø^Ù@Ï Ì@Ï ÓHñ@Ñ3ÐJÑ Ô@ÑÍHÔ@ÝBËOÕ6ÐJ÷BÎ:Í@Ó@Ñ ÒBÏ é���1ï õ ÒHÏ Ò@ÑHÒ3Ë^Ìëâ�ÊBË Ô8Ë^ÌHÌ8Ë Ò:ÍBÑ:ð8Ñ^ð8Ò@Í@Ñ Ï@Ô8ÎtÕ/Ñ8ÐHË^Ì ÏBÐÓ8Ë^Ô8ÎHÑBÎHËÞÓ8ËHÐ�Ð:ÙBÍ8ÎJÑ@ÌbÍHÔ@Ý8ËtÕmÐJÑ@î8øJÏ@Ìëê-ÑyÐJÑ:Í)ËtÕ=Í8ÑbÒHÏ@Ì8ÎJÑ:Ì�ÍBÔ8Ý3ËtÕ6ÐHÑ:î8øJÏ:ÌeÎJÏ3ÐÝBËtÕ6ÐHÑBÎHËrÔ@Ù8ÐJåOÕRÍBÓ8Ëìê¬Ï>Ú8ËJÒ@Ï3Ð�Ì8Ï�Õ£Ó@ÖHÑ@ÌHÌ@Í@Ý:ÍBÓ@ÑBÒHÑ:ÌãâHËHÐHËjÏ3ÜJÏ8Ð^Ú@ÖBËèê£ÍHÔ)ÒBËcÑ3ËjÐHÏ�Õ=Ó@ÑBÒ8ËeÔ)à^Ì�Ú8ËJÒHÏ3Ð@Ë^ÌqÏ@ÔHÓ8Ë^Ô)ÎOÕ/ÑOÕ+Ù8Ð�×8ËHÐjÔ��8ÐHÏOÕ6ËÒHÏHÖHÑ@Ìëâ«Ê3Ë�Ì@ÏBÎBË�Õ£ÒHÑHÌ�ÝOÕRÙ8ÎJÑ@ÌUçJË^Ó@û-ÒHÏ:Ì8Ï/�HÑkÓ3ËBÐ^Ú�Õ/Ñ�Õ�¨ªðu®�ð�È-§�ð/¦ëâ�LdË:Ó@ûrÚ@Ï3ÛJÑË Ì@Ñ3Ø^ÙHÍHÔHñ)Ë Ú@ÖB÷@Ì8Î^ÍHÓ3Ë Ï Ó8ËJÖ8Ë^Ó8Ñ ¦�¥èÊ%¥ ÖHÑ�Õ/Ñ:Ô{�HÑ@Ì ÒHÏ@Ô8ÎtÕmËìêaÙ8ÐJÑ ÖHÑOÕ/Ñ@Ô/�HÑÚ@ÑOÕ/Ñ�Ó@ÑHÒ@ÑxÒ:Í@ÑxÒ@Ñ Ì8ÏBÐJÑ@Ô@ÑèâÉRHÑ:ÌvË Ú�Õ6Ï:î8Ë Ò3Ë Ø^ÙBÍ8ÖBË ÒBÑ�ÖBÑOÕ/Ñ@Ô/�HÑ åG¤O¨©Oª�«-¬�­ ßRÏ@Ì8ÎJÑ ÖBÑOÕ/Ñ:Ô{�BÑ å Ï:Ì@Ú@Ï@ÓHÍ@ÑHÖ Ï Ó8Ñ�Õ/ÑHáèâwòdÖHåBÐ Ò:ÍHÌ3Ì8Ëìê Ñ:Ì Ì8ÏBÎJÏÖHÑOÕ/Ñ@Ô/�HÑ:Ì Ú8Ï:Ì8ÑOÕ/Ñ3Ð ª�«-®�¯�ª Ø^ÙBÍ8ÖBËHÛtÕ/Ñ3ÐJÑHÌëâ�L�Ï@Ô@Ò8Ë Ë Ú�Õ/Ï:î)Ë çHË^Ó@û Ú@Ï:Ô@Ì@Ñùô�_HËHÐBË å Ó@Ñ�Õ6˱°³²%§�© ¨)¥i´%ðu®yË:ÙGÈ�¬�§ ´%§�© ¨)¥i´%ðu®:X���â�RJÑ:ÌxÓ8Ë@ÐHËxË ÑBÐBË�ÕbåÖ:ÍHÔ@Ò3ËkÏ+Ý8Ë^Í�Ñ�ßKËJárÔ8Ñ3ÐHËtÕ/Ñ@ÒBÑ�ß'ËHáDØ^Ù@Ï�Ú@Ï@Ò:ÍHÙãê çJË^Ó8û-Ñ@ÓBÑ:×@Ñ+ÖBÏ3çJÑ:Ô@Ò3ËìâHâHâ

Page 38: Logica Programacao Aplicada V2.2008

38

ò�ÌvÚ@ÑBÖHÑ3çãÕ/Ñ8ÌwÏBÐ�Ô@Ï8ÛtÕ=Í8ÎBËxÓ8ËtÕBÕ6Ï:ÌHÚ8Ë^Ô8ÒHÏ3Ð�ÑhÎ:ÍHÚ8Ë^ÌÞÒHÏwÒHÑHÒ)Ë^ÌÞÓ8Ë^Ô@ñ@Ï:ÓHÍ8ÒBË:ÌÓ8ËHÐHËèô-Ì)ÎtÕ=ÍBÔ8Ûèê+ÍHÔ8ÎJÏ@Í�Õ6ËìêqÕ/ÏHÑ3ÖnÏeÖ8àHÛ^ÍHÓ)Ëìâ²4dÙ@Ñ:ÔBÒ3ËyÌ@Ï_Ó�Õ=Í@ÑeÙ8ÐyÚ�Õ6ËHÛtÕ6ÑBÐHÑÒHÏ3çsÏ3ÐbÌ8ÏOÕ�ÙHÌ@ÑHÒ3Ë:Ì�Ë^Ì�Î^ÍHÚ8Ë:ÌeÒBÏeÒ@ÑHÒBË^ÌjÑHÒ@ÏBØ^Ù@ÑBÒ3Ë^ÌcÑeÓ@ÑHÒHÑ�ÛtÕRÑ:Ô@ÒHÏHíBÑjØ^Ù8ÏÌ@ÏbÒHÏ:Ì8Ï��HÑ Õ/Ï@Ú�Õ6Ï:Ì@Ï@Ô8ÎHÑOÕjÔ8ËÞÚsÕ6ËHÛtÕ/Ñ3ÐJÑèêkÓ@Ñ8Ì8ËÞÓ8Ë^Ô8ÎOÕR÷OÕ=Í)ËÞÚ8ËHÒHÏBÐ�ÑHÚ@ÑOÕ/Ï@Ó@Ï�ÕÑHÖBÛ^ÙBÔHÌ �dß'ÒHáHÏBÝHÏ:Í)Î@Ë^Ì Ó8ËHÖHÑBÎ:ÏOÕ6Ñ:ÍHÌ�� ×@Ñ:Ì8ÎHÑ@Ô8ÎJÏ ÍHÔ8ÒBÏ:Ì@Ï��B÷%çsÏ:ÍHÌ ß/g�µ;dzl�j]c¶g�^ãêÚ8ËtÕkÏBÜJÏ3Ð^Ú@ÖBËHáùâ�ò�ÖHåBÐnÒ:ÍHÌBÌ8ËèêUËaÎ^ÍHÚ8ËnÒBÏnÒBÑHÒBËvÕ/ÏHÝBÖHÏBÎJÏaÑ�ØJÙ@Ñ@Ô8Î^Í@ÒHÑBÒBÏaÒHÏÐJÏBÐHàOÕ=Í@ÑDØJÙ@ÏDçJÑ@Í-Ì@ÏOÕ�Ù8Î^ÍBÖ@Í@íHÑBÒBÑrÚ@ÑOÕ6Ñ>Û^Ù@Ñ�Õ/ÒBÑOÕXË-ÐHÏHÌ8ÐHËìâò�ÖHåBÐ ÒBË^Ì Î^ÍBÚ)Ë^Ì ÒBÏ ÒHÑHÒ3Ë@Ì Ú�Õ/Ï@ÒHÏHÝ:ÍHÔ3Í@ÒBË^Ì Ú8Ï@ÖHÑ:Ì Ö:ÍBÔ8Û^Ù8ÑBÛJÏ:ÔHÌ ÒBÏÚ�Õ6ËHÛOÕ/ÑBÐJÑ@îBæBË Ú8Ë:ÒHÏ3Ð Ñ@Ú@ÑOÕ/Ï@Ó@Ï�Õ Ë:Ì Î^ÍHÚ)Ë^Ì ÒBÏ ÒHÑHÒ3Ë^Ì ÒHÏBÝ@ÍHÔHÍ@Ò8Ë^Ì ÚBÏHÖBËÙHÌHÙ@÷�Õ=Í8ËìêWÐJÑ:Ì>Ï@Ì8ÎJÏ-å>Ù8ÐrÑ@ÌHÌHÙBÔ)ÎHË-Ø^Ù8Ï-Ô@æBËrÌ8ÏOÕ/÷DÎtÕ6Ñ8ÎJÑHÒBË�Ô@Ï@Ì8ÎJÏDÎJÏBÜHÎ8ËìâL�ÑBÐHË:Ì-Ô8Ë:Ì+ÒHÏBÎHÏ�Õ�ÑBÛHË�Õ/ÑrÔ3Ë:Ì>Î:ÍBÚ8Ë^Ì�ÒBÏ�ÒHÑHÒ3Ë^Ì+Ú�ÕRÍ8Ð^Í)ÎJÍ)çJË^Ìãâ

3.4.1 Tipo I nteiro

�>ÎHËHÒHÑkÏDØ^Ù@ÑHÖ3Ø^Ù8ÏOÕ£ÍHÔBÝBËOÕ6ÐJÑ:î8æ%Ë�ÔHÙ8ÐHåOÕ=Í@Ó8Ñ-Ø^Ù@Ï�Ú@ÏOÕmÎJÏ@ÔHî@Ñ-ÑBËrÓ3Ë^Ô/�:ÙBÔ8ÎHËkÒ3Ë^ÌÔ��8ÐJÏ�Õ6Ë^Ì ÍBÔ8ÎHÏ:Í�Õ'Ë^Ìãê Ú)ËJÒHÏ:Ô8ÒBË Ì@Ï�Õ Ô@ÏBÛHÑBÎ^Í)çHËìê ÔHÙ3ÖBË Ë^Ù Ú8Ë^ÌHÍ3Î^Í)çJËùâ ïÏBÜJÏBÐ:Ú@ÖBËvÐJÏ8ÔHÓHÍ8Ë^Ô8ÑxÌ8ÏBÎJÏhÖHÑOÕ/Ñ8Ô/�HÑ:Ìëâ��HÌ8ÎHËhØ^Ù8ÏOÕnÒ@Í@íHÏOÕnÑ�ØJÙ@Ñ:Ô8Î:Í@ÒHÑHÒ3ÏvÒHÏÖHÑOÕ/Ñ@Ô/�HÑ:ÌÞË@ÙvÍ8ÎJÏ:ÔBÌvÓ8ËHÐ:Ú�Õ/ÑHÒBË@ÌwåxÙ8Ð�Ô��8ÐJÏOÕ'Ë�ÍHÔ8ÎJÏBÍ�Õ6Ëìâ+òdÝHÍHÔ@ÑHÖhÔHÍHÔ8ÛJÙ8åBÐÓ8ËHÐ^Ú�Õ/Ñ üëê%D ÖBÑOÕ6Ñ:Ô/�HÑBÌ Ô8Ë ÐHÏOÕ=Ó@Ñ@ÒBË ÐJÙHÍ8ÎHË ÐJÏ:Ô8Ë:Ì üëêfD ÛHÑOÕHÕ6ÑHÝHÑ:Ì ÒHÏÕ/ÏHÝOÕRÍ8ÛJÏOÕ6ÑHÔ8ÎJÏèâ

3.4.2 Tipo Real

õ æBË�ÍHÔBÝBËtÕ6ÐHÑ@î8øJÏ:Ì_ÚBÏ�Õ6ÎJÏ:ÔHÓ)Ï:Ô8ÎJÏ@Ì_Ñ3Ë�Ó8Ë^Ô/�:Ù@Ô8ÎBËbÒBË:Ì�Ô��8ÐJÏ�ÕmË^ÌwÕ/ÏHÑ:ÍBÌëê+ÏnË^ÌçsÑHÖBËOÕ/Ï:ÌvÚ8ËBÒHÏBÐ Ì@Ï�Õ_Ô@ÏBÛHÑ3Î^Í)çJË@Ìëê�ÔHÙ@Ö3Ë^ÌÞË^ÙhÚ8Ë^ÌBÍ8Î:Í)çJË^ÌãâQÊBËvÏBÜJÏ3Ð^Ú@ÖBËxÌ@æBËçsÑHÖBËOÕ/Ï:Ì Ò3Ë ÎJÍHÚ8Ë 1@ÏBÑHÖ Ë Ú�Õ6Ï:î8Ë ÒBË Ú�Õ6ËJÒ@Ù)ÎHË ß þèê$\��)á Ï Ë Ú8Ï:Ì8Ë ÒHÑ:ÌÖHÑOÕ/Ñ@Ô/�HÑ:Ìyß'þìêªH��1þHáèâ�4dÙ8ÑHÖ8Ø^Ù@Ï�ÕDÛtÕ6Ñ:Ô@ÒHÏBíHÑqØ:Ù@Ï�Ú�Õ/Ï@ÓHÍBÌ@Ï�ÒHÏ�Ô��8ÐHÏOÕmË^Ì�Ñ:Ú8à^ÌqÑçdö�Õ6Û:Ù@ÖHÑ�ÓBÑOÕ/Ñ:Ó)ÎHÏOÕ=Í@íHÑ>Ù8ÐkÔ��8ÐJÏ�ÕmËaÕ/ÏHÑBÖèâ

ÊHÑ ÏHÒ:ÍHî8æBË ÒHÏ Ú�Õ6ËHÛOÕ/ÑBÐ:Ñ:Ì å ÙHÌ8ÑHÒBË Ù8Ð Ú8Ë^Ô3ÎBË ÒHÏ:ÓHÍ3ÐJÑBÖ ÑBË ÍHÔ)çJå:Ì ÒHÑçdö�Õ6Û:Ù@ÖHÑ�ÚBÑOÕ/Ñ�Õ6Ï:Ú�Õ/Ï:Ì)Ï:Ô8ÎJÑ�ÕTÙ8Ð�Ô��8ÐJÏOÕmËcÕ/ÏHÑBÖèâ

3.4.3 Tipo caractere e tipo fila de caractere (str ing)

úBÐcÓ@ÑOÕ6Ñ:Ó3ÎJÏOÕ/Ï�å�ÑcÙ@ÔBÍ@ÒHÑHÒBÏ�×8÷HÌHÍHÓ@Ñ�ÒBÏ�ÑOÕ6Ð@ÑHíHÏ:Ô8Ñ3ÐJÏ:Ô8ÎBËjÒHÏ�ÍHÔ)ÝBËtÕ6ÐJÑ@î@æBËjÔ@ÑÐJÑ:Í8ËOÕ=Í@Ñ�ÒBË:ÌhÌHÍHÌ)ÎJÏ8ÐJÑ:ÌãêkË:ÙhÌ8Ï��HÑùêQåhÑ ÕRÏ@Ú�Õ/Ï:Ì8Ï@Ô8ÎJÑ:î@æ)ËÞÛtÕ/÷@Ý@ÍHÓ@ÑhÒHÏÞÙ)ÐJÑÖHÏBÎtÕ6Ñèê£Ô/�8ÐJÏOÕmË�Ë^Ù�ÌHö3Ð:×8ËJÖBË�Ï:ÌBÚBÏ:ÓHÍ@ÑBÖ�ÒBËjÑBÖ@ÝHÑ:×@Ï3ÎBËìâ¬òeÎJÑB×@ÏHÖBÑ�ÒHÏ�Ó8àJÒ@Í8ÛHËÕ/Ï:Ú�Õ6Ï:Ì@Ï:Ô)Î:ÑHÒHÑ�Ú8ËtÕr×_`JÎHÏ:Ì�ÓHñ@ÑBÐ:Ñ:ðBÌ@ÏI� W�· ¡�¡hßq¸ ��dzlDa�¹���p¥º t���p�f��zl,f¥» g�f�d¼j�gDl½ p¾j�gzl;�Q�¾t�a¿g�p ½ pÀt�dzl�¹,`���p-xid)áèâj�vÎHËJÒHÑ Ï Ø^Ù8ÑHÖ8Ø^Ù8ÏOÕwÍHÔ)ÝBËtÕ6ÐJÑ8î@æBË Ó8ËHÐ^Ú8ËHÌ8ÎJÑÚ8ËtÕ£Ù8Ð�Ó)Ë:Ô/�:ÙHÔ)Î@Ë�ÒHÏrÓBÑOÕ6Ñ:Ó8ÎJÏ�ÕmÏ:ÌrÑHÖBÝHÑ:Ô@Ù)ÐJåOÕ=ÍHÓ1Ë^ÌaßRÑ¢êX×ëêuÓëâBâ@â þìâHâ)bHákÏ:�HË^ÙÓ@ÑOÕ/Ñ@Ó8ÎJÏOÕ6ÏHÌ�Ï:ÌBÚ8Ï:ÓHÍ@Ñ:Í3ÌjßÂÁ êà�êÅÄãê�� êÃÆ êÈÇnâBâHâIáùâõ ÏBÐ^Ú�Õ/Ï�Ø:ÙBÏ�Ñ:Ú@Ï:Ô@Ñ8ÌjÙ)ÐjÎJÍHÚ8ËcÓ8ÑOÕ/Ñ@Ó8ÎJÏOÕ/ÏqÝBËOÕjÕ6ÏHÝBÏOÕ/Ï@ÔHÓHÍBÑHÒ3ËaÒ3Ï3çsÏ^ðBÌ8ÏcÙ@Ì8ÑOÕnZl£ßRÑ:ÌHÚ8ÑHÌ-ÌHÍ)Ð:Ú@ÖHÏ:Ì@á>Ú@ÑOÕRÑ�ÍHÔ8Ò@ÍHÓ@÷^ð8Ö3Ëìâ«ä)ÜHÏBÐ:Ú@ÖBËèô

‘ W’ Car act er e W ‘ %’ Sí mbol o de por cent agem ‘ 5’ Car act er e 5

5 I st o não é um car act er e, é o númer o i nt ei r o 5, poi s não t em aspas s i mpl es

Page 39: Logica Programacao Aplicada V2.2008

39

4dÙ@Ñ:Ô8ÒBË çs÷OÕ=Í1Ë^Ì ¼�¾]N_¾/¼�}�»]NI»/� Ì@æBË Ó8ËHÖ3Ë^Ó@ÑHÒ3Ë:Ì »�½ É�|�¿/¾ ßRÔ)Ë ÏBÜJÏBÐ:ÚBÖBË ÑÚ@ÑHÖHÑ%çãÕ/Ñ ¿/¾]N_¾�À�Ê�¾��@á ÎJÏ3ÐHË:Ì Ù8Ð çsÏBÎ@ËtÕxÒBÏ Ó@Ñ�Õ/Ñ:Ó)ÎHÏOÕ/Ï:Ì Ë^Ù Ù3ÐJÑ Ý:Í@ÖHÑ ÒHÏÓ@ÑOÕ/Ñ@Ó8ÎJÏOÕ6ÏHÌëâyäBÌ3ÎJÑ ÝHÍ8ÖHÑ ÒBÏ Ó@Ñ�Õ/Ñ:Ó8ÎJÏ�Õ6Ï:Ì å Ó8Ë^ÔBñ@Ï:ÓBÍ@Ò@Ñ Ó8Ë@ÐBË ¦�ÊI®è°�ÈaëìâqòÝ:Í@ÖHÑhÒBÏwÓ8ÑOÕ/Ñ@Ó8ÎJÏ�Õ/ÏHÌbË^Ù�Ì8Î�Õ=ÍBÔ8ÛvÒBÏ3çsÏbç^Í�ÕeÌ@ÏBÐ:Ú�Õ/ÏhÏ:Ô)ÎOÕ/ÏhÑ@ÌHÚBÑ:Ì�Ò:ÙHÚ3ÖHÑ:Ìßa���)áùâkúBÐHÑÞÌ8Î�ÕRÍHÔ8ÛhåbÒ@Í@ÝHÏOÕ/ÏBÔ)ÎJÏ�ÒHÏÞÙ)ÐÞÓ@ÑOÕ/Ñ:Ó%ÎJÏOÕ/Ï_ÎHÑ:Ô8ÎHËÞÔ)ËhÔ��8ÐJÏOÕmË�ÒHÏ×a`JÎJÏ@Ì Ó8ËBÐHË Ô8Ñ ÌHÍ3Ô8ÎJÑBÜJÏãâ�4dÙ)Ñ:Ô@ÒBË Ù8ÐJÑ Ì8ÎtÕ=Í3Ô8Û å ÒHÏ:Ó8ÖHÑOÕ6Ñ@ÒBÑ ÒHÏ%çsÏ Ì8ÏOÕÍHÔ@Ò:ÍBÓ@ÑHÒBËaË_Ô��8ÐHÏ�Õ6ËnÒHÏeÓ@ÑOÕ6Ñ:Ó)ÎJÏOÕ6Ï:Ì�Ø^Ù@ÏaÏHÖHÑeÚ8ËHÒHÏeÓ8Ë^Ô)ÎHÏOÕZ½�¾�|��nÙ)Ðy×:`HÎJÏÚ@ÑOÕ/ÑDË�Ó8Ñ�Õ/Ñ:Ó8ÎHÏ�Õ/ÏrÔBÙ8ÖBËìâ

Exempl o: Fi l a de car act er es - st r i ngs szFi l a[ 12] = " Li nguagem C"

0 1 2 3 4 5 6 7 8 9 10 11 L i n g u a g e m C \ 0

RHÏBÐHàtÕ=Í8Ñ,ïdÓHÙBÚ@ÑBÒHÑèô§ü ×a`JÎJÏ@Ì�����/»�N;��¾�[�\a~±Ë

• äIÑpä£ß/ÓHñ@Ñ�Õ6á-å+Ò@Í@ÝHÏOÕ/ÏBÔ8ÎJÏ+ÒBÏ�F1Ñ�F�ß/Ì8Î�Õ=ÍBÔ8ÛJá

byt e 0 1 st r i ng a \ 0

char a - - - - - - • F)Ñ�F�Ë^ÓHÙHÚBÑ ×_`HÎJÏ:Ì-Ô3Ñ+ÐJÏ3ÐBàtÕ=Í8Ñùê

• nIÑpl årÙ8Ð-ÓHñ@ÑOÕXÏ+Ë^ÓHÙ8Ú@Ñ-Ñ@Ú8Ï:Ô@Ñ@Ì+ü-×a`:ÎJÏ�Ô@ÑDÐHÏBÐHàOÕ=Í@Ñëâ

• ÎHËJÒHÑ�Fa�/}]N�|�À{z�F�å+ÎJÏOÕmÐJÍHÔ@ÑBÒHÑ�Ú)ËtÕTÙ8ÐkÓ@Ñ�Õ/Ñ:Ó)ÎJÏ�Õ/Ï�ÔHÙ@Ö8Ë�F;Ì�Í�F

ò�Ì@Ï3Û^ÙHÍ�Õ«ÎJÏBÐHË:Ì>ÑHÖBÛ^Ù3ÔHÌ�Ï8ÜHÏBÐ^Ú8Ö3Ë^Ì�ÒHÏ�Ì3ÎtÕ=ÍBÔ8Û:Ìëâ

“ l ar anj as” Um conj unt o de car act er es em f i l a f or mando a st r i ng l ar anj as.

“ Mar ga Ri da” Um conj unt o de car act er es em f i l a f or mando a st r i ng Mar ga Ri da. O espaço em br anco TAMBÉM é um car act er e.

“ 55. 67” Um conj unt o de car act er es em f i l a f or mando uma pal avr a não numér i ca 55, 67. I st o não é um númer o.

55. 67 I st o não é uma st r i ng. É o númer o r eal 55, 67.

3.4.4 Tipo Lógico

õ æBË-ÎHËJÒHÑ:Ì>Ñ:Ì>ÛtÕ/Ñ@Ô@Ò@ÏHíHÑ:Ì,Ø^Ù@Ï+Ñ:ÌHÌHÙ)ÐJÏBÐQÑ8Ú@Ï:Ô@ÑHÌ�ÒBË^ÍBÌrÏ:Ì)ÎHÑHÒBË^Ìtô çsÏOÕ6ÒHÑHÒHÏBÍ�Õ6ËË^Ù�ÝBÑHÖ:Ì8Ëèê¬ÌHÍ8ÐDË^Ù-Ô8æ3Ëìê¬Ö@Ï%çJË+Ë:Ù-Ô@æBË-Ö@Ï3çJËèâïjÎ:ÍHÚ8Ë�ÖBàHÛ^ÍBÓ)ËjåQÐ^ÙBÍ8ÎBËjÓ8ËHÐ^Ù8Ð�ÏBÐjÌHÍHÌ)ÎJÏBÐJÑ@ÌQÒHÏqÑ:Ù8ÎBËBÐJÑ:î8æBË�Ø@Ù@Ï�Ù)Î^Í@Ö:ÍBíBÑBÐ�O��lgÌ ß6Ó8Ë^Ô8ÎtÕpËJÖHÑHÒ8ËOÕ/Ï:Ì ÖBàHÛ:ÍHÓ)ËdðBÚ�Õ6ËHÛOÕRÑBÐJ÷3çJÏ@ÍHÌ@á Ë^Ù ËJÙ8ÎOÕ6Ë^ÌÐ^ÍHÓ�ÕmË^Ó8Ë^Ô)Î�Õ6ËJÖHÑBÒ3ËtÕ/Ï:Ìëâw)ËtÕ_ÏBÜHÏBÐ^Ú8ÖBËìêaÙ)Ð Ì@Ï:ÔBÌ8Ë�ÕbÒHÏ�ÔHö1çsÏ@Ö�ÌHÙHÚ8ÏOÕ=Í8ËtÕnÒHÏÙ8ÐJÑrÓ@Ñ:Í)ÜJÑ-ÒHÏ+÷BÛ^Ù@Ñ,çsÑ:Í,ÎJÏOÕ�Ñ8Ú@Ï:Ô@Ñ:Ì�Ò3Ë^Í@Ì-ÏHÌ8ÎHÑHÒBË^ÌãôuÓ@Ñ@Í)ÜJÑkÏBÌ8ÎJ÷kÓ@ñ@Ï@Í@Ñ+Ë^ÙÓ@Ñ:Í8ÜHÑ�Ô8æBËkÏ:Ì)Î:÷kÓHñBÏ@Í@Ñèâ ïQÝ:Í8Ð-ÒHÏrÓHÙ�ÕRÌ8ËkÒHÏ�Ù8Ð�ÓHÍBÖ:ÍHÔ8ÒOÕmË�ÚBÔ)Ï:Ù8ÐJ÷BÎJÍHÓ8ËDçsÑ:ÍÎJÏOÕ�Ñ:Ú8Ï:ÔBÑ:ÌyÒBË:ÍBÌyÏ:Ì8Î:ÑBÒBË^Ìëô+Ë�Ó@Í@Ö:ÍHÔ@Ò�ÕmË�ÑBÎ^ÍBÔ3Û^ÍHÙnË�Ý@Í)ÐÞÒHÏyÓHÙ�Õ=Ì)ËbË^ÙeËÓHÍ@Ö:ÍBÔ@ÒOÕ6Ë-Ô@æBË-Ñ3Î^ÍHÔ8Û^Í3Ù>ËrÝ@Í8Ð-ÒBÏrÓHÙ�ÕRÌ8Ë âÊBË Ï3ÜJÏ3Ð^Ú@Ö3ËìêjçHË^Ó@û Ú)ËHÒHÏ ÖBÏ3ç^ÑOÕ�Ë^Ù Ô@æBË ÖBÏ3çsÑ�ÕÞÑ:Ì ÖBÑOÕRÑ:Ô/�3Ñ:ÌëâcHËBÐHË Ñ@ÌçsÑOÕ=Í8÷3çsÏ:ÍBÌ�Ú)ËJÒHÏBÐ�ÑBÒBØ:ÙHÍ�Õ/Í�Õ�Ñ@Ú@Ï:Ô8Ñ:ÌyÒBË^Í@ÌyÏ:Ì8ÎHÑHÒ3Ë^ÌyÏHÖHÑBÌyÑ:ÌBÌHÙ8ÐHÏBÐÞÑ:Ú@Ï@Ô@Ñ@ÌÒBË^ÍHÌ�çsÑHÖBËtÕmÏ:ÌxÔHÙ3ÐJå�Õ=ÍHÓ)Ë^Ì ôqþ ßRíHÏOÕ6ËHáwË^Ù�ü ß/Ù8ÐHá Õ/Ï:ÌHÙ8Ö3ÎJÑHÔ@Ò3Ë ÏBÐ Ò3Ë^ÍHÌÏ:Ì8ÎJÑBÒBË^Ì+ÌBÏBÐ�Y:Ô)Î:ÍHÓ8Ë^Ìëê�r'ò�O õ ïkË:ÙML�ä�1@ó/ò�óJä���11ïaÕ/Ï:ÌBÚ@Ï:Ó)ÎJÍ)çsÑBÐHÏ@Ô8ÎHÏèâ

Page 40: Logica Programacao Aplicada V2.2008

40

ò�Ì ÛtÕ/ÑHÔ@ÒBÏHíHÑ:Ì ÒBË Î^ÍHÚ8Ë ÖBàHÛ:Í3Ó8Ë ÕRÏHÖBÑ:ÓHÍ)Ë^Ô@Ñ3Ð^ðBÌ@Ï ÑBÎtÕ/Ñ%çJå:Ì Ò3Ï Ë:Ú@ÏOÕRÑ:î)øJÏ:ÌÖBàHÛ^ÍBÓ@Ñ:ÌyÏÞÙ8Ð�ÎHÍHÚ8ËhÒBÏ�÷BÖBÛJÏ@×�Õ6ÑÞÓ8Ë^ÔHñ8Ï@ÓHÍ@ÒHÑ�Ú3ËtÕÏÎÐcÑx]d�vDl=�¼f�dÓÒ�g�gÔc¿daØ:Ù@ÏÌ@ÏOÕ/÷jÏ:Ì)Î:Ù@ÒHÑHÒ@ÑcÔ)Ë_ÚsÕ6àHÜ^Í8Ð3Ë_Ó8ÑHÚHö8Î^Ù8ÖBËìâXïdÌqË^Ú8ÏOÕ6ÑHÒBË�Õ/Ï@ÌcÖ%àHÛ^ÍHÓ)Ë:ÌaÚ�Õ6à^Ú�ÕRÍ8Ë^ÌÒHÑ�O3ÍHÔ8Û^Ù8Ñ8ÛJÏBÐ�äªoäuÌ@ÏdÕ/æBËrÏ@Ì8Î^Ù8ÒBÑHÒBË^Ì+Ô8ËrÝ:ÍBÔ@ÑBÖ+ÒHÏ:Ì8ÎHÏ-Ó@Ñ:ÚBö)Î^Ù8ÖBËìâ

�m² Ã�Õm½+" µ×Öª¹ÆºKµ·¶úBÐJÑDçsÑOÕ=Í8÷%çsÏHÖ-årÙ8ÐJÑ-ÏHÔ8Î:Í@ÒHÑHÒBÏ+ÒHÏ:Ì8Î:ÍHÔ@Ñ@ÒBÑkÑ+Û:Ù@ÑOÕ/ÒBÑOÕ£Ù8ÐHÑ�ÍBÔ8Ý8ËtÕ6ÐJÑ@î@æBËèâ¬ÊHÑÍHÔ@ÝBËOÕ6ÐJ÷BÎ:Í@Ó@Ñ åèê Ï@Ô8ÎHæBËìê Ù8Ð Ï:Ô8ÒHÏOÕ6Ï:î)Ë Ô8Ñ ÐJÏ8ÐHàOÕ=Í@Ñ Ú�ÕRÍBÔHÓHÍHÚBÑHÖ ÒBËÓ8ËHÐ^ÚBÙ8ÎJÑHÒ3Ë�Õ�ØJÙ8ÏjÑOÕ6ÐHÑHíBÏ:Ô@Ñ�Ù8ÐaÓ8Ë^Ô8ÎHÏ��@ÒBËèâ�8Ñ�Õ6ÑjÝHÑ:Ó@Í@Ö@Í8ÎJÑOÕ+Ñ�Ú�Õ6ËHÛOÕ/ÑBÐJÑBî@æBËÚ8ËJÒHÏ3ÐHË^ÌcÒHÑOÕ�Ù8Ð_Ô8ËBÐJÏaÑcÏ:Ì8ÎJÏjÏ:Ô@Ò@ÏOÕ/Ï:î)Ëìâ õ ÏBÐcË_Ó8Ë^ÔBÓ@ÏHÍ8ÎHËeÒHÏ�çJÑOÕ=Í@÷3ç^ÏHÖùêÎHËJÒHÑwçsÏBí ØJÙ8Ï Ù8ÐwçsÑHÖBË�Õ�ÝBË:Ì3Ì@Ï Ù8Î:Í@ÖHÍ@íHÑBÒBË Ì@Ï�ÕRÍ@Ñ ÔBÏ@Ó@Ï:ÌBÌ@÷�Õ=Í8Ë Ì@Ñ:×BÏ�ÕbËÏ:Ô@ÒHÏ�Õ/Ï:î8Ë Ë:Ô@ÒHÏ Ë çsÑHÖBËtÕvÑ ÌBÏOÕvÙ8Î^Í@Ö:Í8íHÑ@ÒBË Ï:Ì8ÎJÑ�Õ/Í@Ñ Ï Ì@Ñ8×@ÏOÕhØ^Ù@Ñ:Ô)ÎHË:Ì×a`JÎJÏ@Ì�Ñ�Í@Ô@ÝBËtÕmÐHÑ:î@æBËDË^ÓHÙHÚBÑ�Õ=Í@ÑùâúBÐJÑEçsÑOÕ=Í8÷)çsÏHÖ+å�Ó8ËHÐ:Ú)Ë^Ì8ÎJÑ+Ú8ËtÕuÎtÕ/û:Ì+Ú@Ñ�Õ6ÎJÏ@Ìëô•

ÊBËHÐHÏ ô å Ë Ô8ËHÐHÏ Ø:ÙBÏ ÑBÎOÕRÍ@×HÙHö8ÐBË^Ì ÑBË Ï@Ô@ÒHÏOÕ6ÏHî8Ë Ø^Ù8Ï Û:Ù@ÑOÕ6ÒHÑ ÑÍHÔ@Ý3ËtÕ6ÐJÑ@î8æBËìâ ï Ô%ËHÐJÏ Ô8ËOÕ6ÐHÑ@ÖBÐJÏ:Ô)ÎJÏ Ï%Ü^Ú@Ö:ÍBÓHÍ3ÎJÑ Ñ Ì8Ï3Ð�Y:Ô)ÎJÍHÓ@Ñ ÒHÑçsÑOÕRÍ@÷3çsÏBÖ�Ô8ËrÓ3Ë^Ô8ÎJÏ3ÜHÎBËkÒ3ËrÚ�Õ6Ë8ÛtÕ/ÑBÐHÑp6•

é�ÍHÚ)ËnÒ3ËaÒHÑHÒ3Ë ôUå�ËjÎ^ÍHÚ8ËeÚ�ÕRÍ3Ð^Í8Î^Í1çJËaÒHÑ�çJÑOÕ=Í@÷%çsÏBÖèêEÓ8Ë@ÐeÑqØ^Ù8ÑHÖjÏHÖHÑÌ@ÏOÕ6÷ ÍBÔ3ÎtÕ6ËJÒ@Ù8í:Í@ÒHÑ Ô8Ë Ú�Õ6ËHÛOÕ6Ñ3ÐJÑèênË^ÓBÙHÚ8Ñ:Ô@Ò3Ë Ë Ï@ÌHÚ@Ñ@î8Ë ÒBÏ ÐJÏBÐHàOÕ=Í@ÑÒHÏ:Ì)Î^ÍHÔ@ÑBÒ3ËkÑ+Ï@ÖHÑp6•

�HÔ@Ý3ËtÕ6ÐJÑ@î8æBË ô å>Ëg�6çsÑBÖBËtÕ:��Ø^ÙBÏ+ÑDçJÑOÕ=Í@÷%çJÏHÖ-Ñ�ÕmÐJÑHíHÏ@Ô8ÑèâHËHÐHËhÑeçJÑOÕ=Í@÷)çJÏHÖbË^ÓHÙ3Ú@ÑÞÙ8Ð�ÏHÌBÚ@Ñ:î8ËwÔ8Ñ_ÐJÏBÐHàOÕ/Í@Ñèê-Ë�Ï:Ô8ÒHÏOÕ6Ï@î3ËhÒHÑbÐJÏ@Ì)ÐJÑÚ8ËJÒHÏ�Ì@ÏOÕ�Ñ:Ó@Ï:ÌBÌ8ÑHÒBËkÏ%ÐkÑHÖ8Û:Ù8ÐJÑ@Ì>Ö:ÍHÔ8Û:Ù@Ñ8ÛJÏ:ÔBÌ>ÒHÏ�Ú�Õ6ËBÛ�Õ/ÑBÐJÑ@î8æBËèâ

Endereço

NomeØÏÙ,ÚÜÛ ÝßÞ ÝßàßÝÅÛ

I n f or ma ç ã o

Var

iáve

l

r3Í8Ûìâ��tâ ð�1@Ï@Ú�Õ/Ï:Ì@Ï:Ô1ÎJÑ:î@æBË+ÒHÏ-Ù)ÐJÑDçJÑOÕRÍ@÷3çJÏHÖëâ

�m² Ñzámº$#%" ºI¶gºI¾p¸É½+&)(IÅJÇpÅ'¶1¸»µ�#'Åg¶@ÇpºJÇK½pÇKÅI¶B¾p½J¿·µÁ¾pÂq,p½KÂpºI¼�ÇKº�#+" ÅKÂ$"»½I¼t½+&$(IÅ�ÄïdÌ>Î:ÍHÚ8Ë^ÌDÒHÏ-ÒBÑBÒBË^Ì-×)÷:ÌHÍHÓ3Ë:Ì�ÒBÏ%çsÏBÐ�Ì8ÏOÕTÏ:ÌBÓ�ÕRÍ8ÎHË:Ì�ÒBÑ-Ì@ÏBÛ:ÙBÍHÔ)ÎJÏ+ÝBËtÕ6ÐJÑãôSi nt axe: t i po l i st a_var i ávei s ;

ïdÔ@ÒHÏùô}�|�P{~èô¬ÒHÏ%ç^ÏrÌ@ÏOÕ�Ù8Ð-Î@ÍHÚ8ËrÒHÏ+ÒBÑBÒBË+çs÷BÖ:ÍBÒBËìâc�ayâ¾t���ãäµ��zlDayå¾µ;d¾aqâëô Ù)ÐJÑ+ËJÙ,ÐJÑ@ÍBÌ,çsÑOÕRÍ@÷)çsÏ:ÍBÌ+Ì@Ï:Ú8ÑOÕ/ÑBÒ8Ë^Ì-Ú)ËOÕuçdö�ÕmÛ^Ù@ÖHÑèâò�ÖHåBÐjÒ:ÍHÌBÌ3Ëìê£Ô@Ñ�ÍHÔ@Ý3ËOÕ6ÐJ÷BÎJÍBÓ@ÑèêXË^ÌkçsÑHÖBË�Õ/Ï:Ì�ÍBÔ8ÎJÏ@Í�ÕmË^ÌëêUÚ8ËOÕ-Ï%ÜJÏBÐ^Ú@Ö3ËìêUÔ8æBËçsæBË ÒHÏ i ∞ Ñ e ∞ âbï çJÑHÖ3ËtÕ ÍBÔ@Ý:ÍHÔ@Í8ÎHË ÏBÐ Ú�Õ6ËHÛOÕRÑBÐJÑ:î@æ%Ë å Ð^ÙHÍ3ÎHË ×@Ï3ÐÓ8Ë^ÔHñ8Ï:ÓHÍ@Ò3ËcÏ�ÒHÏ:Ú@Ï8Ô@ÒHÏqÒBËcÔ��8ÐJÏ�Õ'ËaÒBÏ�×BÍ8Î^ÌqÙHÌ@ÑHÒ3ËcÔ@ÑqÌHÙBÑbÕ/Ï@Ú�Õ/Ï:Ì@Ï@Ô8ÎJÑ:î3æBËìâ)ËtÕ�ÍHÌHÌ)ËèêDÚ@ÑOÕ/ÑcÓ@ÑBÒHÑ�Î^ÍHÚ8ËaÒBÏaÒHÑHÒ3ËnÏ3Ü^ÍHÌ8Î:ÏaÙ3ÐJÑcÝ@Ñ:Í8ÜHÑeÒ8Ï�çJÑHÖBËtÕ�êEÓ8ËBÐHËÐHË^Ì8ÎOÕ/ÑHÒBË�Ñ:×@Ñ:Í)ÜBËìâ

Page 41: Logica Programacao Aplicada V2.2008

41

Tipo pr imitivo Tipo em C Bits utilizados Bytes Faixa de valor i nt Dependent e do si st ema oper aci onal

i nt ( 16) 16 2 –32768 a 32767 i nt ei r o

i nt ( 32) 32 4 ( –2147483647–1) a 2147483647

f l oat 32 4 3. 4E- 38 à 3. 4E+38 r eal doubl e 64 8 1. 7E- 308 à 1. 7E+308

car act er e char 8 1 –128 t o 127

char 8 1 –128 t o 127 l ógi co i nt Dependent e do si st ema oper aci onal

voi d 0 0 Sem val or é�Ñ@×ëâJ�tâ ðYé�Í@Ú8Ë^Ì>ÒHÏ+ÒBÑHÒBË:Ìëâ

æ�çÀèbé¾êìëîísêbïîð ñ5òóñ

• ïnÎ:ÍHÚ8ËcÍHÔ8Î:Ï@Í�Õ6Ëaå�ÒHÏ:Ú8Ï:Ô8ÒHÏ:Ô3ÎHÏjÒBËeÌHÍ3Ì8ÎJÏBÐHÑ�Ë^ÚBÏOÕ6Ñ:ÓBÍ8Ë^Ô8ÑHÖcÚ8Ñ�Õ6ÑjËjØ:Ù8ÑHÖË�Ú�ÕmËHÛtÕ/Ñ8ÐHÑ-å�Ó)ËHÐ^ÚHÍ@Ö8ÑHÒBËìâ

• ÊHÑQÖ@ÍHÔ8Û^Ù8Ñ3ÛJÏBгn)pl«å�Ú8Ë@ÌHÌHö)çsÏBÖ�Ú@Ñ@ÌHÌ@ÑOÕ�F%Ô@ÑHÒ@Ñ�F>Ó3ËHÐHË�Ñ�Õ6Û^Ù8ÐHÏ:Ô)ÎHËQÒHÏ�Ù8ÐJÑÝ:ÙHÔHî8æBËìêTË^Ù � ÌQçsÏBíHÏ@Ì�åcÔ@Ï@ÓBÏ:ÌBÌ@÷OÕRÍ8ËeÚ8Ñ:ÌHÌ8ÑOÕÉF3Ô@ÑHÒBÑ�FQË@ÙcÒBÏ@Ó@Ö@ÑOÕ6ÑOÕ+Ø^Ù8ÏF3Ô@ÑHÒBÑ�FQå�ËcÑOÕ6Û:Ù8ÐHÏ:Ô)ÎHËaÒBÑjÝHÙHÔBî@æBËèâ�òyÚ@ÑBÖHÑ%çãÕ/Ñ�ØJÙ8ÏeÌ3Í8Û^ÔHÍ8Ý@ÍHÓBÑjF3Ô@ÑBÒHÑ�Få+Ë+Î^ÍHÚ8Ëô´f§7°�ì�ßKçsÑHí@Í3ËìêuÔBÙ@Ö3ËJáùâ

• ï Î^ÍBÚ8Ë ÖBà3Û^ÍHÓ8Ë å ÎtÕRÑHÒ:Ù8í:Í8ÒBË Ú@Ñ�Õ/Ñ Ù)Ð Î^ÍHÚ)Ë ¼�Á/¾zNÞË^ÙxÎ^ÍHÚ)Ë |�À/} Ô@ÑÖ:ÍHÔ8Û:Ù@ÑBÛJÏ8Ð n)�lHâ«ò�Ì8ÏBÐ�Y@Ô8ÎJÍHÓ@Ñ�ÒHÑ�çsÑOÕ=Í)÷3çsÏHÖèêUÚ8ËOÕ/å3ÐìêUÒ@Í@í�Ø:ÙBÏjÑ�ÐJÏ@Ì)ÐJÑÌ8àxÚ8ËJÒBÏbÎJÏOÕjÒ3Ë^ÍHÌnçsÑ@ÖBËtÕ6Ï:Ìãô-þhË^ÙhüëâIõ�¾G¿�|�ÀazQ�/¾�z�»>½ ö ·±÷�ø ¼{~�À/}��ax�~ øXQ�/¾�¿5XQ�/»]N ��¾�¿{~iN x�|�É/»]N_»�À/}�» x�» Í ù/ú�»]NI~�û ��|{z�À�|�É�|/¼/¾ ��»]NÐx�¾�x�»/|zNf~XQ�/¾�Àax�~U¾���¾�¿�|/¾�x�~ÌÀ��{½�¾Z»{Â�PzN_»�����\�~�¿�ü�z�|/¼/¾þý

bi t

by t e

1 char = 1 byt e

char

wor d

1 wor d = 2 byt es

i nt ( DOS)doubl e wor d

1 doubl e wor d = 4 byt es

doubl e

f l oat

r3Í8ÛèâJ�tâ%�Dð�édÑ3ÐJÑ:ÔHñ)Ë-ÏBÐr×HÍ3Î^Ì,ÒBË^Ì,Î^ÍHÚ8Ë:Ì+ÒHÏ+ÒBÑHÒBË^Ìãâ

�m² Ú:â'¾pÇ'ºH½p¶a¹ ½'"»µ×Ö�¹ ºmµ·¶8¶)(gÅJÇKºpÃI¿·½'"»½IÇ'½g¶E0)ËJÒHÏ3Ð Ì@ÏdÕ ÒBÏHÝHÍHÔHÍ8ÒHÑ:Ì ÒHÏ:Ô8Î�Õ6Ë Ï ÝBËOÕRÑ ÒHÑ:Ì Ý:ÙHÔHî8øBÏ:Ìëâ 4dÙ@Ñ:ÔBÒBË Ì@æBËÒHÏHÝ:ÍBÔHÍ@ÒHÑ@Ì ÝBËtÕ/Ñ ÒHÏ ÎHËJÒHÑHÌ Ñ:Ì Ý:ÙHÔHî8øHÏ:ÌëêeÍHÔHÓ8Ö:ÙBÍHÔ@Ò3Ë Ñ Ý:ÙBÔHî@æBË ÐJÑ:ÍHÔ�ßRáùêÏ:Ì8ÎJÑ@Ì çsÑ�Õ=Í@÷)çsÏ@ÍHÌ Ì@æBË ÓHñ@ÑBÐ@ÑHÒBÑ:Ì ÒHÏ ÿ��Dl]ayå¾µ;dsa¿â �±c g�v��baqâ Ï Ú8ËJÒBÏBÐ Ì8ÏOÕÙHÌ@ÑHÒBÑ:Ì�Ï3Ð�Ø^Ù@ÑBÖ3Ø^Ù@ÏOÕ�Ú@ÑOÕ6Î:Ï+ÒBË�Ú�Õ6ËHÛtÕ6ÑBÐ:Ñèâ4dÙ@Ñ:Ô8ÒBËxÌ8æBËvÒBÏHÝ:ÍBÔHÍBÒHÑ:Ì�ÒHÏ@Ô8ÎtÕmËvÒBÏwÙ8ÐJÑhÝ8ÙHÔHî@æBËùêQÏHÖHÑ:ÌbÌ@æBËwÓHñBÑBÐJÑHÒHÑ8ÌÞÒHÏÿ��Dliaqå¾µ;dsaqâ���g�¹��bayâeÏnÌ3àyÚ)ËJÒHÏ8ÐyÌ@ÏOÕ�ÙBÌ@ÑHÒHÑ:ÌeÒBÏ@Ô8ÎtÕ6ËyÒBÑBØ:Ù@ÏHÖ3ÑyÝ@ÙHÔHî@æ3Ëìâ õ ÏÙ8ÐJÑ çsÑ�ÕRÍ@÷3çsÏ@Ö ÖBË^Ó@ÑBÖ ÎJÏBÐ Ë ÐJÏ:Ì)ÐHË Ô8ËHÐJÏ ÒBÏ Ù8ÐJÑ çJÑ�Õ=Í@÷%çsÏBÖ ÛJÖBËJ×8ÑHÖèêÔ@ÑBØ^Ù8ÏHÖHÑ+ÝHÙHÔHî@æ3Ë-ÑDçsÑdÕ=Í@÷3ç^ÏBÖ-Ö3Ë:Ó@ÑHÖ+ÎHÏBÐkÚ�Õ6Ï:Ó8ÏHÒHû@ÔHÓHÍ8Ñ-Ì8Ë^×�Õ6Ï+Ñ+ÛHÖBË^×@ÑHÖãâò�ÖHåBÐ ÒHÏ Ì@ÏdÕ/ÏBÐ ÒHÏ@Ó@ÖBÑOÕ/ÑBÒHÑHÌ Ô3Ë Ó8ËtÕ=Ú8Ë Ò3Ë ÑOÕmØ^Ù@Í)çJË ß'Û@ÖBË^×8Ñ:ÍBÌ@á Ë^Ù ÒHÏÝ:ÙHÔHî)øJÏ:ÌëêTÑ:ÌkçsÑOÕ=Í)÷3çsÏ:ÍBÌjÚ3ËHÒHÏBÐ�Ì@ÏOÕ+ÒHÏ:ÓBÖHÑOÕ6ÑHÒBÑ:Ì�Ô@Ñ�ÖHÍHÌ8ÎJÑ�ÒHÏqÚ@ÑOÕfYBÐJÏBÎ�ÕmË^ÌÝBËtÕ6ÐHÑ:ÍHÌ>Ò@Ñ-Ý:ÙBÔBî@æBËìâ

Page 42: Logica Programacao Aplicada V2.2008

42

3.7.1 Observações sobre os nomes das var iáveis

R^ÙHÍ8ÎHÑ:Ì çsÏHíBÏ:Ì Ì8æBË Ù8ÎJÍ@Ö:Í8íHÑHÒBÑ@Ì ÑBÖBÛ^Ù8ÐJÑ@Ì Õ6ÏBÛtÕ/Ñ@Ì ÒBÏ Ô8ËHÐJÏHÔBÓ@ÖHÑBÎ^Ù�Õ/Ñ ÒBÏçsÑOÕ=Í8÷3çsÏ:ÍBÌxØ^Ù8Ï ÝHÑ:ÓBÍ@Ö@Í8ÎJÑ8Ð ÑwÐJÑ:ÔBÙ8ÎJÏ:ÔHî3æBË ÏxÑ Ú�Õ6àJÚ�Õ=Í8Ñ ÖHÏ@Í)Î^Ù�Õ/Ñ ÒHÏ�Ù8ÐÚ�Õ6ËHÛOÕ/ÑBÐJÑùârÊBæBËÞÌ@æBË Õ6ÏBÛtÕRÑ:ÌnË@×�Õ=Í8ÛJÑ3ÎHàtÕ/Í8Ñ:Ìëê+ÐJÑ:ÌnÐ:Ù@Í8ÎJÑ@ÌyÏBÐ:Ú�Õ/Ï@Ì@Ñ:ÌbÝHÑBíHÏ3ÐØ^Ù@Ï:Ì)ÎJæBË�ÒHÏyÙ)Î:Í@Ö:Í@í@÷:ð8ÖHÑ:Ì_Ú@Ñ�Õ/ÑcÐJÑ:Ô8ÎHÏOÕQË^Ì_Ó8àJÒBÍ8ÛHË^ÌnÝBË:Ô)ÎJÏ:ÌcÐJÑ@ÍHÌ_ÝH÷:Ó8Ï:ÍBÌÒHÏ Ù)Î^Í@Ö:Í@í3ÑOÕ Ï ÐJÑ:Ô8ÎHÏ�Õ�ê ÐHÏ:Ì8ÐHË Ó8ËHÐ Ñ Õ6ËHÎ:ÑBÎ^Í1çdÍ8ÒHÑHÒBÏ ÒHÏ Ì8Ï:ÙHÌÚ�Õ6ËHÛOÕ/ÑBÐJÑBÒ8ËtÕ/Ï:Ìãâ ú3ÐHÑ ÒHÏ:Ì)Î:Ñ:Ì Õ/ÏBÛtÕ6Ñ@Ì Ò:Í@í Õ/ÏHÌBÚ@Ï:Í)ÎHË ÑBË Ô8ËHÐ:Ï ÒHÑ:ÌçsÑOÕ=Í8÷3çsÏ:ÍBÌùâYïjÎtÕ/Ñ8×@ÑHÖ:ñ)ËjÐ:Ñ@ÍHÌ�Ó8ËHÐ^Ú@ÖBÏBÎHË�Ñ�Ï:Ì8ÎJÏbÕ/Ï@Ì@Ú@Ï:Í8ÎBËjÝBË:ÍyÕ/Ï@ÑHÖ:Í@íBÑBÒBËÚ8ËtÕ · Á/¾�N:¿/»�� W |{½�~�À���| 2)H�3yÔ8ËyÌ@Ï@Ù_ÑOÕ6Î^Í8ÛBËGF��zl=g-x¾l=�5�S½�f�d�p¾t�a�j�a�dzl������bayp-x»�g�p¾µ�d�p¾tOaqg�p�â�Ftâvò^Ø^ÙHÍ çsÑBÐ3Ë^Ì Ù8Î^Í8Ö:Í@íHÑOÕ Ù8ÐJÑ Ô8ËHÎHÑ@î@æBË Ì3Í8Ð^Ú8Ö:ÍBÝ:ÍHÓ@ÑHÒBÑ ÏBÐÕ/ÏHÖHÑ@î@æBË-Ñ8Ë^Ì-Ô)ËBÐJÏ:Ì�Ò%Ë^Ì-ÍBÒBÏ:Ô8Î:Í8Ý:ÍHÓ@ÑHÒ3ËtÕRÏ:Ìëâ

• ò�Ì çsÑOÕ=Í8÷%çsÏ:ÍHÌ ÒBË Î:ÍBÚ8Ë ÍBÔ8Î:Ï:Í�ÕmË Ì@Ï3Ð:Ú�Õ/Ï Ó)ËHÐJÏ:î8Ñ8Ð Ó8Ë@Ð Ù8Ð äpÍ�äÐ^ÍHÔ��HÌHÓHÙ8Ö3Ëo6

• ò�Ì çsÑ�Õ=Í8÷3çsÏHÍHÌ ÒBË Î^ÍHÚ)Ë ÓBÑOÕ/Ñ@Ó8ÎHÏOÕ/Ï ÌBÏBÐ:Ú�Õ/Ï Ó8ËHÐ@Ï:î@ÑBÐ Ó8Ë@Ð Ù)Ð äpÓ�äÐ^ÍHÔ��HÌHÓHÙ8Ö3Ëo6

• ò�ÌbçJÑOÕ=Í@÷)çsÏ:ÍBÌhÒ8ËwÎ^ÍHÚ8Ë Õ/ÏHÑHÖÞÌ@ÏBÐ^Ú�Õ6ÏxÓ8ËHÐHÏ:î@Ñ3Ð Ó)ËHÐ Ù8Ð äÆÝ7ä�Ë^Ù äÆÒpäÐ^ÍHÔ��HÌHÓHÙ8Ö3Ë^Ì ÒHÏBÚ@Ï:Ô@ÒBÏ:Ô8ÒBË ÌBÏ Õ/Ï:Ú�Õ/Ï:Ì@Ï:Ô%ÎJÑBÐ Ù)Ð äIÝHÖBË@ÑBÎoä ß6Ú�Õ/Ï:ÓHÍ@Ì@æ3ËÌHÍ8Ð:Ú@ÖHÏ:Ì8áDË^Ù�ägÒBË^ÙH×8ÖHÏ�äEß'Ò:ÙBÚ@Ö@Ñ�Ú�Õ/Ï@ÓHÍHÌ@æ3ËHáp6

• ò�Ì çsÑOÕRÍ@÷%çsÏ:ÍBÌ Ò8Ë Î^ÍBÚ8Ë Ö3à@Û^ÍHÓ8Ë Ì@ÏBÐ@Ú�Õ/Ï Ó8Ë@ÐJÏ@î@ÑBÐ Ó8ËHÐ Ù8Ð äp×7äß/×8ËBËJÖHÏHÑ@Ô)ËJá+Ð:Í@Ô��HÌHÓBÙ@Ö3Ë-ÐHÏ:Ì)ÐHË-Ì@Ï:Ô@Ò3Ë�Ù8Ð�ÓHñ@ÑOÕ«Ë^Ù-Ù)ÐrÍHÔ8Îp6

• ò�Ì_ç^ÑOÕ=Í@÷%çsÏ:ÍBÌÞÒBË�Î^ÍHÚ8ËvÝ@Í@ÖHÑ�ÒHÏÞÓ@ÑOÕ/Ñ:Ó)ÎJÏOÕwß6Ì)ÎtÕ=ÍHÔ)Û:áÞÒHÏ3ç^ÏBÐwÌ@ÏBÐ:Ú�Õ/ÏÓ8ËHÐHÏ:î@ÑOÕ�Ó8ËHÐrÙ3ÐVäpÌ8ípä£ßf� ÎtÕRÍHÔ3Û+ÎJÏOÕmÐ^ÍHÔ@ÑBÒBÑ-ÏBÐGú ÏOÕ6ËHáùâ

• L�ÏBÎBËtÕ/Ï:ÌDÌ@ÏBÐ^Ú�ÕRÏrÓ8ËBÐJÏ@î@ÑBÐrÓ)ËHÐÓnIÑpl£ßRÑOÕHÕ6Ñ:`sáp6

• RJÑBÎOÕ=Í@íHÏ@Ì+Ì@ÏBÐ:Ú�Õ/ÏrÓ)ËHÐHÏ:î@Ñ3ÐrÓ8Ë@Ð nÆÐol�6

• )Ë^Ô)ÎJÏ:Í�ÕmË:Ì-Ì@Ï3ÐJÚ�Õ/Ï�Ó8ËBÐJÏ:î8ÑBÐrÓ3ËBмnpÚ�l�6

æ�çÀèbé¾êìëîísêbïîð ñ5òóñïdÌ Ô8ËBÐJÏ:ÌxÒ3Ë^Ì Í@ÒBÏHÔ8Î^Í@Ý@ÍBÓ@ÑHÒBËOÕ6Ï:Ì ßIçsÑOÕ=Í@÷=çsÏ:ÍHÌxÏxÝ:ÙHÔBî8øHÏ:Ì@á�ÒBÏ3çsÏ3Ð Ì@ÏBÛJÙBÍ�ÕÑHÖBÛ^Ù)ÐJÑ:ÌqÕRÏBÛtÕ/Ñ@Ì+×@÷:ÌHÍ3Ó@Ñ:Ì�Ô8Ñ-Ö@ÍBÔ8Û^Ù@ÑBÛHÏBÐ�ä)päHâ•

ï�Ú�Õ=Í8ÐJÏ@Í�Õ6Ë�Ó8Ñ�Õ/Ñ:Ó8ÎHÏOÕ6Ï-ÒBÏ3çJÏrÌ3ÏOÕ�ÖBÏBÎtÕ/ÑEË^Ù-Ì@ÙB×@Ö:ÍHÔHñ)ÑHÒBËìâ•

ïdÌ Ó@ÑOÕ6Ñ@Ó8ÎJÏOÕ6Ï:Ì Ì8ÏBÛ^ÙBÍHÔ)ÎJÏ:Ì ÒHÏ3çsÏBÐ Ì@ÏOÕ ÖBÏBÎ�Õ/Ñ:Ìãê Ô��8ÐBÏOÕ6Ë^Ì Ë^ÙÌHÙH×8Ö:ÍHÔHñ8ÑBÒBËìâ•

ïdÌ�Ú�Õ=Í)ÐJÏ:Í�ÕmË:Ì�� ß'ÒHÏHÝHÑ:Ù8Ö3ÎJá�ÓBÑOÕ/Ñ@Ó8ÎJÏOÕ6Ï@ÌjÌ8æBËaÌHÍ8Û^ÔHÍ8Ý@ÍHÓ@Ñ3Î^Í1çJËJÌbß/Ú8ËHÒHÏÌ@ÏOÕXÐHËJÒ@Í8Ý:ÍHÓ@ÑBÒ8ËJáèâ•

ésËJÒBÑ:Ì�Ñ@ÌUçsÑOÕRÍB÷3çsÏ:ÍBÌ>ÒHÏ3çJÏBÐrÌBÏ�Õ�ÒHÏ@Ó@ÖHÑOÕ6ÑBÒHÑ:Ìëâò�ÖHåBÐ Ò:ÍBÌHÌ)ËìêhË Ô8ËBÐJÏ ÒHÏ Ù)ÐBÑ çJÑOÕ=Í@÷%çsÏBÖ ÒHÏ3çsÏ Ì@Ï�Õ ÌBÍ)Û^ÔHÍBÝ@ÍHÓ@ÑBÎ^Í1çJË Ô8ËÓ8Ë^Ô8ÎHÏBÜHÎHËyÒ3ËyÑHÖ3ÛHËtÕ=Í)ÎBÐHËìâ>óHÏ3çHÏ3ÐdðBÌ@ÏnÏ%çdÍ8ÎJÑ�Õ�Ô)ËHÐJÏ:ÌnÓ8Ë3ÐHË�ò êvN êMæ�ê>ÏBÎ^ÓãâHêÚ8Ë^ÍHÌ+ÍHÌ8ÎBËrÒ:Í@Ý@ÍBÓHÙ@ÖBÎJÑDÑrÍBÒBÏ:Ô8Î:Í8Ý:ÍHÓ@Ñ:î8æBËrÒBËrÚ�Õ6Ë^Ú)à^ÌHÍ)Î@ËkÒHÑ£çsÑ�Õ=Í@÷%çsÏHÖèâ

Exempl o: Dec l ar ação de var i ávei s

Var i ávei s t i po car act er char cLet r a, cSi mbol o; i nt i Base; Var i ávei s t i po i nt ei r o i nt i Ampl i t ude, i Expoent e; f l oat f Peso; f l oat f Sal ar i o; doubl e dResul t ado;

Var i ávei s t i po Real

doubl e dAngul o; char bAvanca, bCal cul a; Var i ávei s t i po Lógi co i nt bPassou;

Page 43: Logica Programacao Aplicada V2.2008

43

�m² �uß·¾KµÄÃƵ·½p¿Äµ ½'&)(pÅHÇ'º>¹Æ½'"»µ×ÖE¹ ºKµ·¶ä)Ð�äªoä«å�Ú8Ë^ÌHÌBö)çJÏHÖ-ÝBË�Õ=Ô8Ï:Ó@ÏOÕmÐ3Ë^Ì>çsÑBÖBËtÕRÏ@ÌkÚ@ÑOÕmÑkÑ+ÐJÑ@Í8ËtÕRÍ@Ñ-ÒBÑHÌDçsÑ�Õ=Í@÷%çsÏ@ÍHÌÑBËkÐHÏ:Ì8ÐBË-ÎJÏBÐ:Ú3Ë�ÏBÐ�Ø^Ù@Ï+Ñ:ÌrÒBÏ8Ó@ÖHÑOÕ6ÑBÐHË^ÌùêuÓ8ËJÖ3Ë:Ó@Ñ:Ô@Ò3Ë�Ù8ÐrÌHÍHÔ@Ñ@Ö-ÒHÏrÍ8Û:Ù@ÑHÖ-ÏÙ8ÐJÑ�Ó8Ë^ÔHÌ)Î:Ñ:Ô8ÎJÏDÑ:Ú8à^ÌUË�Ô8Ë@ÐHÏ-ÒBÑEçsÑOÕ=Í8÷3ç^ÏHÖèâ

t i po nome_var i ável = const ant e;

Exempl o: I ni c i al i zação de var i ávei s

char cLet r a = ' a' ; / * um car act er , decl ar ado com aspas si mpl es* / i nt i Pr i mei r o = 0; / * um númer o i nt ei r o * / f l oat f Num = 123. 23; / * um númer o r eal ( pont o f l ut uant e) * / i nt i Hor as = 12, i Di a = 13;

4dÙ@Ñ:Ô8ÒBË�Ì8Ï>ÎJûBÐDÐJÑ:ÍHÌ�çsÑOÕ=ÍB÷%çsÏ:ÍBÌ>ÒBË-ÐHÏ:Ì3ÐHË+Î^ÍBÚ8Ër×@Ñ:Ì8ÏëêuÚ8ËHÒBÏ^ð3Ì@Ï�Ó8ËJÖBËJÓ8÷^ðÖHÑ:Ì+Ô@Ñ+ÐHÏHÌ8ÐJÑ+Ö@ÍHÔHñ@Ñèê¡Ì@Ï:ÚBÑ�Õ/Ñ:Ô8Ò3Ëdð8Ñ:Ì+Ú8Ë�ÕXç^ö�ÕmÛ^Ù@ÖBÑ:Ìëâ

�m² uÄ6ÅI¾p¶ ¸É½I¾I¸ÉºK¶ò�Ì-Ó)Ë^ÔHÌ8ÎHÑHÔ8ÎJÏ:ÌDÌ@æBË+çHÑHÖBËtÕRÏ@Ì�Ý@Í)ÜHË^Ì>Ø:Ù@Ï>ËrÚ�ÕmËHÛtÕ6ÑBÐJÑ+Ô@æBËrÚ)ËJÒBÏ-ÑBÖBÎJÏOÕ/Ñ�Õ�âò�Ì-Ó)Ë^ÔHÌ8ÎHÑHÔ8ÎJÏ:ÌDÚ8ËJÒHÏBÐ�Ì@ÏOÕ�ÒHÏDØ:Ù@ÑHÖBØ^Ù8ÏOÕ�Î^ÍBÚ8Ër×@÷@ÌHÍHÓ)Ë âæ�çÀèbé¾êìëîísêbïîð ñ5òóñò�ÌbÓ8Ë^ÔBÌ8ÎJÑ:Ô8Î@Ï:ÌbÌ@æBËÞÔ)ËtÕ6Ð:ÑHÖ3ÐJÏ@Ô8ÎJÏbÒBÏHÝ:ÍHÔ@Í@ÒBÑ:ÌyÑBÎOÕ/Ñ3çJå:Ì_ÒHÏbÒ3Ë^ÍHÌbÓ3ËHÐJÑ:Ô8ÒBË:ÌÒHÑ-Ö@ÍHÔ8Û^Ù8Ñ8ÛJÏBÐ�äªoäHô��x�»�É�|/À/»+Ï�¼�~�À��/}ùâ

Exempl o: #def i ne e const par a const ant es

#def i ne PI 3. 1415 const f l oat PI = 3. 1415

ïd×HÌ@Ï�ÕmçsÏ_Ø^Ù@Ï��x�»�É�|�À/»�Ô@æBËwÙ%Î:Í@Ö:Í@íBÑÞÙ8ÐÞÌHÍHÔ8Ñ@Ö�ÒHÏÞÍ)Û:Ù@ÑHÖ�Ô@Ï3Ð�ÐJÏ:Ì8ÐHËÞÙ)ÐJÑÒHÏ:Ó@ÖBÑOÕ/Ñ:î8æ8Ë Ò3Ë Î^ÍBÚ8Ë ÒBÑ çJÑ�Õ/Í@÷3çJÏHÖèê Ï:Ô)Ø^Ù@ÑHÔ8ÎBË Ø:Ù@Ï Ñ Ù8Î:Í8Ö@Í@íHÑ:îBæBË ÒBËÏ:ÌHÚ@Ï@ÓHÍ@Ý:ÍBÓBÑHÒBËtÕ�¼�~�À��{}kÏBÜ^Í)ÛJÏ-Ñ+ÒHÏ:Ó@Ö@ÑOÕ/Ñ@î@æ3ËQÒ3Ë-Î^ÍHÚ)ËkÒHÑEçsÑOÕ=ÍB÷%çsÏHÖ-Ï+Ë�ÙHÌ8ËÒBË�ÌBÍHÔ@ÑHÖ>ÒHÏrÍ)Û:Ù@ÑHÖèâ

�m² ±('�ÓdÅIÇKµ� ɵ·ÃƽIÇ6Å'"»ºI¶BÇKºH¸Éµ�#KÅïvÐHËJÒ:Í8Ý:ÍBÓ@ÑBÒBËtÕaÒBÏ�Î:ÍHÚ8ËhåwÙ)ÎJÍ@Ö:Í@íBÑHÒBËwÚ@Ñ�Õ/ÑhÑHÖ3ÎHÏOÕ/ÑOÕ�ËxÌBÍ8Û:ÔHÍBÝ:ÍHÓ@ÑHÒ3ËhÒBËÎ^ÍHÚ8Ë ×@Ñ:Ì8ÏèêÞÑHÒHÑ:Ú)ÎHÑ:Ô@ÒBË^ð1Ë � Ì çs÷�Õ=Í@Ñ:Ì Ñ:Ú8Ö:ÍHÓ@Ñ:î%øJÏ:Ì ÒBË Î^ÍHÚ)Ë ×@Ñ:Ì8Ïèâ�1ËtÕÏBÜJÏBÐ:Ú@ÖBËìê§Ô@æBËkÏBÜJÍHÌ8ÎHÏkÑ:Ô)Ë�Ó8ËHÐrÔ��8ÐHÏOÕ6Ë�Ô8Ï3ÛJÑBÎJÍ)çHËìêuÌ@ÏBÛ^ÙBÔ8ÒBË^Ì+Ô@ÏBÛJÑBÎJÍ)çJË:Ì>Ë^ÙÚ@Ï:Ì8Ë Ô@Ï3ÛJÑ3Î^Í)çJËèâ O)ËHÛ8Ëìê Ú8Ë@ÒHÏ:ðBÌ@Ï ÐHËJÒ8Í@Ý:ÍHÓ@Ñ�Õ Ë Î:ÍHÚ8Ë ×@Ñ@Ì8Ï ÒBË Ñ@Ô)ËìêÌ@ÏBÛ^ÙBÔ@ÒBË^ÌEË^Ù-Ú8Ï@Ì8Ë�Ú@ÑdÕ/Ñ+ØJÙ8ÏrÔ8æ3ËkÑ:Ó@Ï@Í8Î:ÏBÐDçsÑBÖBËtÕ6Ï:Ì+ÔBÏBÛJÑBÎ:Í1çJË:ÌëâïbØ^Ù@ÑHÖHÍ@Ý:ÍHÓ8ÑBÒBËtÕ���|{z�À/»�x�ÍHÔ@Ò@Í@Ó8ÑeØ^Ù@ÏnË�×BÍ8ÎyÐJÑ:ÍHÌ_Ì3Í8Û^ÔHÍ@ÝBÍHÓ@Ñ3Î^Í1çJË�ÍHÔ@Ò:ÍBÓ8ÑÙ8Ð ÌHÍHÔ@ÑHÖ Ï Ô@æBË Ù8Ð ÒHÑ@ÒBËèâaò çsÑOÕRÍ@÷3ç^ÏHÖ ÎJÏ3Ð ÌHÍBÔ@ÑHÖëâ_ï Ø^Ù@ÑHÖ:Í8Ý:ÍHÓBÑBÒBËtÕ��À���|az�À/»�xjÍHÔ8Ò:ÍBÓ@Ñ�Ø^ÙBÏ�Ëc×BÍ8Î�ÐBÑ:ÍHÌ�ÌHÍ8Û^Ô@Í8Ý:ÍHÓ@Ñ3Î^Í1çJËjÍHÔ@Ò@ÍBÓ@ÑqÙ8Ð�ÒBÑHÒBË�Ï�Ô@æBËÙ8Ð�ÌBÍHÔ@ÑHÖùâ�ò�çJÑ�Õ=Í@÷3çsÏ3Ö-å-Ù)Ð�Ô��)ÐJÏOÕ6ËrÌ@Ï8Ð�ÌBÍHÔ8ÑHÖèâï Ø^Ù@ÑHÖ:Í8ÝHÍHÓ@ÑBÒBËtÕ ��Á{~DN_} Ï:ÌHÚ8Ï:ÓBÍ@Ý:ÍHÓ8Ñ Ù)Ð ÍHÔ8ÎHÏ:Í�Õ6Ë ÒBÏ üBý ×HÍ3Î^Ìëâ ïØ^Ù@ÑHÖ@Í@Ý:ÍHÓ8Ñ@ÒBËtÕt¿{~�À{z Ï:ÌBÚ8Ï:ÓHÍ@ÝHÍBÓ@Ñ Ù8Ð ÍHÔ8ÎJÏ:Í�Õ6Ë ÒHÏ � ×BÍ8Î^ÌãâG)ËJÒ@ÏBÐ Ì@ÏOÕÚ�Õ/Ï:Ó8ÏHÒ:Í@Ò3ËJÌ�ÒHÑ@Ì+Ú@ÑHÖHÑ=çãÕ/Ñ:̱��|{z�À{»�x-Ë^ÙG��À���|az�À/»�xèâ

Page 44: Logica Programacao Aplicada V2.2008

44

Modi f i cador Modi f i caçÃo s i gned c/ si nal

unsi gned s/ si nal shor t i nt de 16 bi t s l ong i nt de 32 bi t s ésÑ:×ëâ��tâf�DðSRHËHÒ:Í8Ý:ÍHÓ@ÑBÒ3ËtÕ/Ï:ÌDÒHÏDÎ^ÍBÚ8Ëìâ

Ti po bi t s Fai xa de Val or Byt es char 8 - 128 à 127 1 unsi gned char 8 0 à 255 1 s i gned char 8 - 128 à 127 1 shor t i nt 16 –32768 a 32767 2 unsi gned shor t i nt 16 0 a 65535 2 l ong i nt 32 ( –2147483647 – 1) a 2147483647 4 unsi gned l ong i nt 32 4294967295 4 é�Ñ:×ãâJ�tâªH�ð-ä1Ü:ÏBÐ^Ú@Ö3Ë^Ì>ÒHÏDÐBËJÒ:Í3Ý:ÍHÓ@ÑBÒBËtÕ/Ï@Ìãâ

�m² ± ±�ÛÝܪ#%" ºg¶Æ¶)ÅKºI¶ò Ú@ÑHÖBÑ3çãÕ/ÑvÏBÜ^Ú�Õ/Ï8ÌHÌ@æBË ÖBÏBÐ^×�Õ6Ñ�ÝBàtÕmÐ^Ù@ÖHÑÞÐJÑBÎJÏBÐ:÷3Î^ÍHÓ8Ñèê�Ô8Ë�ÐJÏ@Ì8ÐHË Ì@Ï:Ô8ÎJÍ8ÒBËÙ8Î^Í@Ö@Í@íHÑHÒ3ËkÏBÐkÝ8àtÕ6Ð^Ù8ÖBÑ:ÌkÚ8ÑOÕ6Ñ�Ó@÷HÖ:ÓHÙBÖBË^Ì�ÒBÏk÷OÕmÏHÑkÏDçHËJÖ:Ù)ÐJÏ-ÒBÏ+ÛJÏBË@ÐJÏBÎOÕ=Í8ÑèâRJÑ:Ìëê ÒHÏ Ù8ÐJÑ ÝBËtÕ6ÐHÑ ÐJÑ:ÍBÌ ÛHÏOÕ/ÑHÖùê ÏBÜ^Ú�Õ6Ï@ÌHÌ8øJÏ@Ì Ì@æBË Ó3ËHÐ:×HÍHÔ8Ñ:î8øJÏ@Ì ÒHÏçsÑOÕ=Í8÷3çsÏ:ÍBÌùê>Ó%Ë^ÔHÌ8ÎJÑ@Ô)ÎJÏ:Ì�ÏjË^Ú8Ï�Õ6ÑHÒBËtÕRÏ:Ìëê�Ø^Ù@Ï�Ø^Ù8Ñ@Ô@ÒBËnÑ%çsÑBÖ:Í@ÑBÒ@Ñ@ÌhÕRÏ:ÌHÙ8ÖBÎHÑBÐÙ8Ð�çsÑHÖBËtÕdâ õ æBËcÓ8Ë^ÔHÌ)ÎOÕ=ÙHö@Ò@Ñ@Ì�ÑqÚ@Ñ�Õ6Î^Í�Õ�ÒHÏ�Ë^Ú8ÏOÕ6Ñ:î8øHÏHÌjÚ�ÕRÍ8Ð:Í8Î:Í1çsÑ:ÌëôUÌ8ËBÐHÑèêÌHÙH×8ÎOÕ/Ñ:î@æ3Ë ê Ð^Ù@Ö)Î^ÍHÚ@Ö:Í3Ó@Ñ:î@æ3Ë Ï Ò:Í%çdÍHÌ@æ3Ëèâ ò�Ì ÏBÜ:Ú�Õ6Ï:ÌHÌ)øJÏHÌ Ú8ËJÒBÏBÐ Ì8Ï�Õ�ôÑOÕ=Í8ÎBÐJåBÎ^ÍBÓBÑ:ÌëêhÖBàHÛ:ÍBÓ@Ñ:Ì Ï Ö:Í)ÎJÏOÕ6Ñ:ÍHÌëâxä)Ü^ÚdÕ/Ï:ÌHÌ8øBÏ:Ì ÑOÕ=Í8ÎBÐJå8Î:ÍHÓ@Ñ@Ì Ì8æBË Ñ:ÌÏBÜ^Ú�Õ6Ï:ÌHÌ8øHÏHÌ Ð:ÑBÎJÏBÐJ÷%Î^ÍHÓ@Ñ:Ì Ó8Ë3Ð Õ/Ï@ÌHÙ@ÖBÎ:ÑHÒBË ÔHÙ)ÐJå�Õ=ÍHÓ8Ëp6 Ñ:Ì ÏBÜ^Ú�Õ/Ï:ÌHÌ)øJÏ:ÌÖBàHÛ^ÍBÓ@Ñ:Ì Ì8æBË Ñ@Ì ÏBÜ:Ú�Õ/Ï:ÌHÌ3øHÏ:Ì Ï:Ì)Î^Ù@ÒHÑ@Ì Ô8Ë Ó@Ñ:ÚHö)Î:Ù@ÖBË Ì8Ë^×�Õ'Ï ÷HÖBÛHÏ:×�Õ/Ñ ÒHÏT8ËHËJÖBÏp6 Ï Ñ:Ì ÏBÜ:Ú�Õ/Ï@ÌHÌ)øJÏ:Ì ÖHÍ8ÎJÏOÕ6Ñ:ÍHÌ Ì8æBË Ï3Ü:Ú�Õ/Ï:ÌBÌ)øJÏ:Ì Ø^ÙBÏ ÏHÔ)çJËJÖ%çsÏBÐÐJÑ:ÔHÍBÚHÙ@ÖHÑ@îBæBË ÒHÏ Ì8ÎOÕ=ÍBÔ8Û^Ìëâ ä3Ì)ÎJÑ:Ì �@ÖBÎ^Í)ÐHÑ:Ì Ú�Õ/Ï@ÓBÍHÌ@ÑBÐ ÒBÏ Ù)Ð Ó)Ë^Ô/�:Ù@Ô8ÎBËÒHÏHÒ:ÍBÓ@ÑHÒBË-ÒHÏkÝ@Ù@ÔHî8øJÏ@Ì�ÒHÑ-Ö:ÍHÔ)Û@Ù@ÑBÛJÏBÐVä)ñäBêXÓ8ËHÐ3ËQÑ:Ì�Ý@ÙHÔHî)øJÏ:Ì,ØJÙ@ÏcÕRÏHÑHÖ@Í@íBÑBÐÓ8à^ÚHÍ8Ñ-Ï�Ó3ËHÐ^Ú@Ñ�Õ6Ñ:î@æBË+ÒHÏrÌ3ÎOÕ=ÍHÔ)Û:Ìëâ

3.11.1 Operações pr imitivas

ÊHÑrÓ)ËHÐ^ÚHÙ)Î:Ñ:î@æBËèê Ñ:Ì>Ë@Ú@ÏOÕ/ÑHî)øJÏ:ÌDÚ�Õ=Í8Ð^Í)Î^Í%çsÑ:Ì,ÎHÏBÐ-Ñ:Ì+ÌBÏBÛ^ÙHÍBÔ)ÎJÏ@Ì�Õ6ÏBÛtÕ/Ñ:Ì�6•

ò�Ò:ÍBî@æBË Ï ÌBÙB×8ÎtÕ/ÑHî8æBË Î:ûBÐ Ñ ÐJÏ:Ì)ÐJÑ Õ/Ï@Ú�Õ/Ï@Ì8Ï:Ô8ÎJÑ:î3æBË ÏBÔHÓ8Ë^Ô8Î�Õ/ÑHÒHÑ Ô8ÑÐJÑBÎHÏBÐJ÷BÎ:ÍBÓ@Ñcß$e�Ï�ð)áèâ•

R^Ù@Ö3Î^ÍHÚ@Ö@ÍBÓ@Ñ:î@æ3Ë ô£Ú8ÑOÕ/Ñ�Ï3çsÍ8ÎHÑOÕDÑ�Ú8Ë:ÌHÌHö)çsÏBÖqÓ8ËJÔ@Ý:ÙHÌ)æBËcÓ)ËHÐ�Ñ�ÖBÏ3ÎtÕ/ÑQÜìêÑ+Ð:Ù@ÖBÎ^ÍBÚ8Ö:ÍHÓ@Ñ@îBæBËkå�ÍBÔ@Ò:ÍBÓ@ÑBÒHÑ+Ú8ËtÕTÙ8ÐUÇ�ßRÑ:Ì8Î:Ï�Õ=ÍHÌHÓ)ËHáèâ•

ó:Í)ç^ÍHÌ@æBËèô 2

8å�Õ/Ï:Ú�Õ/Ï@Ì@Ï@Ô8ÎJÑ@ÒBËrÓ)ËBÐHË ��\èâ

ò�ÖHåBÐ Ò:ÍHÌHÌ3Ëèê�Ë^Ì ÕRÏ:ÌHÙ@Ö3ÎHÑHÒBË^ÌwÒHÑ:ÌhË^Ú@ÏOÕ/Ñ8î8øJÏ:Ì�Ú�Õ=Í8Ð^Í)Î:Í)çsÑ:ÌxÒBÏ:Ú@Ï@Ô@ÒHÏBÐ Ò3Ë^ÌÎ^ÍHÚ8Ë:Ì�ÒHÏ>ÒHÑHÒBË:Ì,Ë^Ú@ÏOÕmÑHÒBË^Ìùô•

ï�Õ/Ï:ÌBÙ@ÖBÎJÑBÒ8ËeÒHÏeÙ8ÐJÑjË^Ú@ÏdÕ/Ñ:î@æ8ËnÓ8Ë@ÐcË^ÌcÒBË^ÍHÌ�Ë^Ú8Ï�Õ/Ñ:Ô@Ò8Ë:ÌaÍHÔ)ÎJÏ:Í�Õ6Ë^ÌcåÙ8ÐrÍHÔ8ÎJÏHÍ�Õ6Ëìâ•

ï Õ/ÏHÌHÙ@ÖBÎHÑBÒBË�ÒHÏbÙ8ÐHÑ_Ë^Ú8ÏOÕ/Ñ@î@æ8ËÞÓ8ËHÐ�Ù8ÐyË^Ú@ÏOÕ6Ñ:Ô8ÒBË Õ/ÏBÑ@ÖbÏ�Ù)ÐbË^Ù3ÎtÕmËÕ/ÏBÑHÖ+Ë^Ù>ÍHÔ8ÎHÏ:Í�Õ6Ë-årÙ3ÐjÕ/ÏHÑBÖèâò�Ì ÏBÜ^Ú�Õ6Ï:ÌHÌ8øHÏHÌ Ñ�Õ=Í8ÎHÐJå%Î^ÍHÓ@Ñ:Ì Ù8Î:Í@Ö:Í@íHÑ8Ð ËJÙ8ÎtÕmË^Ì Ë^Ú8ÏOÕ/ÑHÒ%ËtÕRÏ:Ì Ï Ý:ÙHÔHî)øJÏ:ÌÏBÐ^×HÙ)Î^Í@ÒHÑ@ÌDØ^Ù@Ï>Ì@ÏOÕ/æBË+Ï:Ì8ÎJÙ8ÒHÑHÒ3Ë:Ì�ÖBËHÛBËrÑrÌ8ÏBÛ:ÙHÍ�Õdâ

Page 45: Logica Programacao Aplicada V2.2008

45

3.11.2 Expressões ar itméticas

� Ð^ÙHÍ8ÎHË Ó)ËBÐ^Ù8Ð Ï:Ô8Ó8Ë^Ô8ÎtÕmÑOÕ6ÐHË^Ì Ï3Ü^Ú�Õ/Ï:ÌBÌ8øHÏ:Ì Ó8ËBÐ öHÔ@Ò:ÍHÓBÏ:Ì ÒBÏÏBÜ^Ú8Ë:Ô@Ï:ÔHÓBÍBÑ:î@æBËèêÞÌHÍBÔ@Ñ:ÍHÌ ÒHÏ Õ6ÑHÒ:ÍBÓHÍ@Ñ:î8æ3Ë Ï ÝOÕ6Ñ:î8øJÏ:Ìãâhú3Ð Ï3Ü:ÏBÐ^Ú@ÖBË å ÑÌ@ÏBÛ^ÙBÍHÔ8ÎJÏ>ÏBÜ^Ú�Õ6Ï@ÌHÌ@æBË�Õ/ÏBÎ^Í�Õ6ÑHÒHÑDÒBË^Ì�Ö@Í)ç¢Õ6Ë^Ì>ÒBÏ-Ý@öHÌHÍBÓBÑèô

2

tatvxx

2

00⋅+⋅+=

Ë^Ô@ÒHÏ��ìê����=ê µ��1ê t¬ÏH��Ì@æBËEçsÑ�Õ=Í@÷%çsÏ:ÍHÌDÏ å>Ù8ÐJÑ�Ó3Ë^ÔHÌ)ÎJÑ@Ô8ÎJÏ¢â8ÑOÕ/Ñ Ï:Ì)ÎJÑ Ï3Ü^Ú�Õ6Ï:ÌHÌ8æBË ÌBÏOÕ�Ù)Î:Í@Ö:Í8íHÑHÒHÑ�ÏBÐ Ù8Ð Ú�Õ6ËHÛ�Õ/ÑBÐHÑèêjÏBÖBÑ Ò@Ï3çsÏ Ì8ÏOÕÕ/ÏHÏ:ÌBÓ�Õ=Í8ÎHÑ�ÏBÐ-Ö@ÍHÔHñ@Ñèê ÎHËHÐ:Ñ@Ô@ÒBË+ÑrÌ@ÏBÛ:ÙHÍ@Ô8ÎJÏ+Ý3ËtÕ6ÐHÑèô

2/))2,t(pow*a(t*0v0xx ++=ïd×HÌ@Ï�ÕmçsÏ+Ø:Ù@Ï-Ë:Ì-öHÔ@ÒHÍHÓ8Ï:Ì�ÒHÑ:Ì�çsÑOÕ=Í@÷%çsÏ:Í@Ì-Ô@æBË-ÝBËtÕ/Ñ3Ð�ÌHÙH×BÌHÓ�Õ=Í3ÎBË^Ìëê Ë�Ú8Ë:Ô)ÎHËß�âIá ÎtÕ/ÑHÒ:Í3ÓHÍ8Ë^Ô@Ñ@Ö3ÐJÏ:Ô)ÎJÏ Ù)Î:Í@Ö:Í8íHÑ@ÒBË ÚBÑOÕ/Ñ Í8Ô@Ò:ÍHÓ@Ñ�Õ�Ñ Ð^Ù@ÖBÎ^Í3Ú@Ö:ÍHÓ@ÑHî@æBË ÝBË^ÍÌHÙH×HÌ)Î^Í8Î^ÙBöBÒBËQÚBÏBÖBËQÑ8Ì8ÎJÏOÕ=ÍBÌBÓ8Ëeß�Ç@áèê¬ÑrÒHÍ1çdÍHÌ@æ3Ë�Ù8Î^Í8Ö@Í@íBË^Ù+Ñk×BÑ�ÕHÕ/Ñcß'�sá-Ï+ËØ^Ù@ÑHÒ�Õ/ÑHÒBË ÒBÑwçJÑOÕRÍ@÷3ç^ÏHÖ ß��¹áxÝ3Ë^Í Ì@ÙH×HÌ)Î:Í8Î^ÙHö@Ò%Ë Ú@ÏHÖBÑxÝ:ÙHÔBîBæBË Ú8Ë_^ ßRáèêQØ^Ù@ÏÝHÑHíeÚ@ÑOÕmÎJÏaÒHÑe×HÍH×@Ö@Í8ËBÎJÏ:Ó8Ñe×@÷@ÌHÍHÓ8ÑnÒBÑaÖ:ÍHÔ8Û^Ù8ÑBÛHÏBÐìâ�ïnÐJÏ@Ì8ÐHËeÌ@ÏaÑ:Ú@Ö@ÍHÓ@Ñ �Õ/Ñ:Í@íaØ^Ù8ÑHÒOÕ6ÑHÒBÑxß/Ì8ØtÕmÎ�ßRáHánÏcËjçsÑHÖBËOÕQÑ:×HÌ8ËJÖ@Ù)ÎHË ßRÑ:×BÌ�ßRáHáèâ�éJÑBÐ^×@åBÐbÔ8æBËbÌ@ÏÙHÌ@ÑBÐ�Ó8ËJÖ:Ó3ñ@ÏBÎJÏHÌ>Ë^Ù-ÓHñ@Ñ3çJÏ@ÌkÔ@Ñ8ÌrÏBÜ:Ú�Õ/Ï:ÌHÌ%øJÏ:Ìëê¬Ñ@Ú@Ï:Ô8Ñ:ÌkÚ8Ñ�Õ/û:Ô8ÎHÏHÌ@Ï:Ìëâ ïqÍ3ÎHÏBÐÑrÌ@Ï3Û^ÙHÍ�Õ�Ï:ÔHÙ8ÐHÏ�Õ/Ñ-ÑHÖ%Û^Ù8ÐJÑHÌ>Ý:ÙBÔBî8øJÏ:Ì+×@÷HÌHÍHÓ8Ñ:Ì>ÒHÑ�×HÍB×BÖ:Í8ËHÎHÏ@Ó@Ñ n)plHâ

3.11.3 Algumas funções matemáticas da biblioteca ‘C’

òbÎHÑ:×@ÏHÖBÑjÑcÌ8ÏBÛJÙHÍ�Õ+Ï:ÔHÙ)ÐJÏ�Õ/Ñ�ÑHÖBÛJÙ8ÐJÑ:ÌqÝ:ÙHÔBî8øHÏ:ÌqÐJÑ3Î:ÏBÐJ÷BÎ^Í3Ó@Ñ:ÌqÏ:ÔHÓ8Ë:Ô8Î�Õ/ÑBÒHÑ:ÌÔ@Ñr×BÍH×@Ö:Í)Ë@ÎJÏ:Ó@Ñ n)olHâ�8ÑOÕ/Ñ+Ù8Î^Í8Ö@Í@íHÑ^ð8ÖBÑ:Ì+ÒHÏ%çsÏ�ÍHÔBÓ@Ö:ÙBÍ�Õ�8JÐHÑ3Î^ñãâpñ5¢ìâ

Função Protótipo Descr ição abs() int abs (int x); Valor Absoluto Inteiro fabs() float fabs (float x); Valor Absoluto Real asin() double asin (double x); Arco Seno

Faixa: -pi/2 a pi/2 /* resposta em radianos * /

acos() double acos (double x); Arco Cosseno Faixa: 0 a pi /* resposta em radianos * /

atan() double atan (double x); Arco Tangente Faixa: -pi/2 a pi/2

atan2() double atan2 (double x, double y); Arco Tangente Faixa: -pi a pi

tan() double tan (double x); x em radianos Tangente cos() double cos (double x); x em radianos Cosseno

Faixa: -1 a 1 sin() double sin (double x); x em radianos Seno

Faixa: -1 a 1 exp() double exp (double x); Expoente - e pow() double pow ( double x, double y ); Potência sqrt() double sqrt (double x);' Raiz Quadrada

Page 46: Logica Programacao Aplicada V2.2008

46

log() double log (double x); Logarítmo Natural log10() double log10 (double x); Logarítmo na Base 10 ésÑ:×ëâJ�OâfDØiÉr3ÙBÔHî8øHÏ:Ì,ÐJÑ3ÎJÏBÐ:÷3Î^ÍBÓ@Ñ:Ì>ÒHÑ-ÖBÍHÔ8Û^Ù@Ñ%ÛJÏBÐìâ

�m² ±× �âÐ#pº'"»½IÇmÅ'" ºI¶ï Ë^Ú@ÏOÕ6ÑBÒBËtÕ å Ù8Ð ÌHö)ÐJ×8ËJÖBË Ù3Î^Í@Ö:Í@í3ÑHÒBË Ú@ÑdÕ/Ñ ÏBÜHÏ@ÓHÙ8ÎJÑ�Õ ÒHÏBÎJÏOÕmÐJÍHÔ@ÑBÒHÑ:ÌË^Ú@ÏOÕ6Ñ:î8øJÏ@Ì�ÐJÑ)ÎJÏBÐJ÷BÎ:ÍBÓ@Ñ:ÌãêDÓ)ËHÐ^Ú8ÑOÕRÑBÎ^Í)çsÑ@Ì�Ë:ÙcÖ3àHÛ^ÍBÓ8Ñ:Ìëâ�HËHÐjË^ÌqË^Ú@Ï�Õ/ÑHÒ8ËOÕ/Ï:Ìå Ú8ËJÌHÌHö)çJÏHÖ ÐHÑHÔHÍHÚHÙ8ÖBÑOÕvÏ ÑHÖ%ÎJÏOÕ/ÑOÕhË^Ì çsÑHÖBË�Õ/Ï:Ì ÒHÑ:Ì çsÑOÕRÍB÷%çsÏ:ÍHÌ Ï Ñ3ÎJåÐJÏ:Ì8ÐBË Ù)Î^Í@Ö@Í@íBÑOÕ Ë^Ì ÕRÏ:ÌHÙ8ÖBÎJÑBÒ3Ë^Ì Ú�Õ6ËBçsÏ@ÔBÍ@Ï:Ô)ÎJÏHÌ ÒHÏ Ý:ÙHÔBî8øHÏ:Ì ÏBÐ Ô8Ë8çsÑ@ÌË^Ú@ÏOÕ6Ñ:î8øJÏ@Ìùâ

3.12.1 Operador de atr ibuição

ï�Ë^Ú@Ï�Õ/ÑHÒBËOÕaÒHÏwÑBÎ�ÕRÍH×HÙHÍBî8æBË�å�Ë�ÌBÍHÔ@ÑHÖhÒHÏwÍ8Û^Ù8ÑHÖ FIdCFOâU4^Ù8Ñ:Ô8ÒBË Ì@ÏwÙHÌ8ÑÏ:Ì8ÎJÏ�Î^ÍHÚ3ËjÒBÏ�Ë^ÚBÏOÕ/ÑHÒ3ËOÕDË�Õ/Ï:Ì3Ù@ÖBÎJÑHÒ3ËjÒ@Ñ�Ï3Ü:Ú�Õ/Ï:ÌBÌBæBË � Ò@Í�Õ/ÏHÍ)ÎJÑ�ÒBËjÌHÍBÔ@ÑHÖÒHÏrÍ)Û^Ù@ÑHÖ>å-ÑBÎOÕRÍH×HÙHö@Ò%Ë � çJÑOÕ=Í8÷%çsÏHÖ � ÏHÌ8Ø^Ù8ÏOÕ6ÒHÑ+ÒHÏ:ÌBÌBÏrÌHÍBÔ8ÑHÖùâ

Exempl o: at r i bui ção de val or es

i I dade = 30; f Peso = 72, 00;

3.12.2 Operadores ar itméticos

Operador Ação - subt r ação + adi ção * mul t i pl i cação / di vi são % r est o da di vi são

- - decr ement o ++ i ncr ement o ésÑ:×ëâJ��âpý-ð�ïdÚ8ÏOÕ/ÑBÒBËtÕRÏ@Ì�ÑOÕRÍ)ÎHÐHåBÎ^Í@Ó8Ë^Ìëâ

3.12.3 Precedência (Hierarquia) nas operações

Hierarquia Operação 1 Par ênt eses 2 Funções mat emát i cas

( sen, cos, abs. . . ) 3 - ( menos unár i o) 4 ++ ou - - 5 * ou / ou % 6 + ou - é�Ñ@×ëâJ�tâ+�+ð��:Í8ÏOÕ/Ñ�Õ6Ø^ÙBÍ@Ñ+ÒHÏ>Ë:Ú8ÏOÕ/Ñ:î)øJÏ:Ìëâ

�����/»�N;��¾�[�\a~ìô�4^Ù@Ñ:Ô@Ò3Ëcñ8ËJÙ)çJÏOÕ+Ò@Ù@Ñ@ÌqËJÙQÐJÑ@ÍBÌQË^ÚBÏOÕ/Ñ@î8øJÏ@ÌqÒHÏQÐJÏ@Ì8ÐHÑ�ËOÕ6ÒHÏBÐqËÓ8ËHÐ^ÚBÙ8ÎJÑHÒ3Ë�Õ�ÏBÜHÏ@ÓHÙ8ÎJÑDÒHÑ�ä õ 4sú^ä>18ó1ò�Ú@Ñ�Õ/Ñ�Ñ+ó���1Jä��/é@ò â

Page 47: Logica Programacao Aplicada V2.2008

47

3.12.4 Operadores de incremento e decremento

e�e Ñ@Ò:ÍHÓHÍ)Ë:Ô@Ñ ü,ÑBË�Ë:Ú@ÏOÕ6Ñ@Ô@ÒBËðHð Ì@ÙH×8ÎtÕ6Ñ@Í-ü�Ñ%Ë-Ë^ÚBÏ�Õ/Ñ:Ô8Ò3Ëò�Ì-Ì8Ï8Û^ÙHÍHÔ)ÎHÏ:Ì>Ë^Ú)ÏOÕ/Ñ:î3øHÏ:Ì+Ì8æBËkÏBØ:ÙHÍ%çsÑHÖBÏ:Ô)ÎJÏ:Ìãô

x++; � x = x + 1; x- - ; � x = x - 1;

�����/»�N;��¾�[�\a~ìôïyË^Ú@ÏOÕ/ÑBÒBËtÕQÚ8Ë:ÒBÏnÌ@ÏOÕ�Ó8ËJÖ%Ë^Ó@Ñ@ÒBË_Ñ:Ô)ÎJÏ:ÌcË^ÙeÒHÏ@Ú)Ë^ÍHÌeÒBËeË:Ú@Ï�Õ6Ñ:Ô8ÒBËìâØ4dÙ@Ñ@Ô8ÒBËÚ�Õ/Ï:Ó8ÏHÒHÏ Ì8Ï:Ù Ë^Ú8ÏOÕ/Ñ:Ô3ÒBËìê Ñ Ö:ÍHÔ8ÛJÙ@ÑBÛJÏ3Ð ä)oä ÏHÝHÏBÎ@Ù@Ñ Ñ Ë:Ú@ÏOÕ6Ñ:î@æBË ÒHÏÍHÔHÓ�Õ6ÏBÐJÏ:Ô)Î@ËrË^Ù+ÒHÏ:Ó�Õ6Ï3ÐJÏ:Ô8ÎBËkÑ:Ô)Î:Ï:Ì-Ò@ÏkÙHÌ3ÑOÕ�Ë+çJÑHÖBËOÕUÒ3Ë-Ë^Ú@ÏOÕmÑ:Ô@ÒBËìâW4dÙBÑ@Ô@ÒBËËxË^Ú@Ï�Õ/ÑHÒBËtÕ�çJÏBÐ ÒBÏ:Ú8Ë:ÍHÌwÒBËwË^ÚBÏOÕ/Ñ:Ô@Ò3Ëèê�ä)ñä�ÙHÌ@ÑhËwçJÑHÖBËOÕnÒBËxËJÚ@ÏOÕ/Ñ@Ô@ÒBËÑ:Ô8ÎJÏ@Ì�ÒHÏ+ÍHÔHÓ�Õ6Ï3ÐJÏ:Ô8ÎJ÷@ð8ÖBË�Ë:Ù�ÒBÏ@Ó�Õ/ÏBÐJÏ@Ô8Î:÷^ð8Ö3Ëìâ

Exempl o: i ncr ement o e decr ement o x = 10; y = x++; � y ser á 10 e x ser á 11 ß/Ú�Õ=Í)ÐJÏ:Í�ÕmËrÑBÎtÕRÍB×HÙHÍ-ü1þkÑQ`kÏ+ÒBÏ:Ú8Ë^ÍHÌ+Í@ÔHÓ�Õ6ÏBÐHÏ:Ô8ÎHÑ+ÜHá

x = 10; y = ++x; � x ser á 11 e y ser á 11 ß'`�d ß'Ü>dJÜ>edü@áÞÚ�ÕRÍ8ÐJÏ@Í�Õ6ËwÍHÔ@Ó�Õ6ÏBÐJÏ@Ô8ÎJÑhÝBÑBíHÏ:Ô@Ò3Ë�Ü�ddüHüÞÏbÏ:Ô8ÎJæ8ËhÑBÎtÕ=ÍH×BÙBÍ�ËçsÑHÖBËOÕ�ÑS`^á

3.12.5 Operadores relacionais

Operador Ação >

>= <

<= == ! =

mai or que mai or ou i gual a

menor que menor ou i gual a

i gual a di f er ent e de ésÑ:×ëâJ��â$\rð�ïdÚ8ÏOÕ/ÑBÒBËtÕRÏ@Ì�Õ/ÏBÖBÑ:ÓBÍ8Ë^ÔBÑ:ÍHÌëâ

3.12.6 Operadores lógicos

äBÌ8ÎJÏ@Ì�Ë^Ú@Ï�Õ6ÑHÒBË�Õ/Ï@ÌkÓ)ËtÕHÕ/Ï@ÌBÚ8Ë^Ô@ÒBÏ8Ð � ØJÙ@ÏHÖHÏ@Ì>ç^ÍHÌ)ÎHË^Ì-Ô)Ë�Ó@Ñ@ÚHö8Î:ÙBÖ3ËkØ^Ù8Ï-ÎtÕ6ÑBÎJÑÒHÑ ÷HÖBÛJÏ@×�Õ/Ñ ÒHÏ T8ËHËHÖBÏèâ ésËJÒHÑ:Ì Ñ:Ì ÝHÙHÔHî8øHÏ@Ì ×3ËHËJÖHÏHÑ8Ô@Ñ:Ì çdÍHÌ)ÎJÑ:ÌÑ:Ô8ÎJÏ�Õ=Í8ËtÕmÐ:Ï:Ô8ÎJÏ>Ú8ËJÒHÏBÐ�Ì@ÏOÕ«ÎtÕ/Ñ3ÎHÑHÒHÑ:Ì+Ù8ÎJÍ@Ö:Í8íHÑ@Ô@ÒBË-Ï:Ì)Î:Ï:Ì>Ë:Ú8ÏOÕ6ÑHÒBËOÕ/Ï:Ìëâ

Operador Ação (Boole) && | | !

AND ( E : ( . ) ) OR ( OU : ( +) )

NOT ( NÃO : NEGAÇÃO ( - ) ) é�Ñ:×ëâv�tâ$b�ðUïdÚ8Ï�Õ/ÑHÒBË�Õ6Ï:Ì�Ö3àBÛ^ÍHÓ)ËJÌëâò�ÌrÏ3Ü^Ú�Õ/Ï:ÌBÌ)øJÏ:Ì>Ø^Ù@ÏrÙ@Ì@ÑBÐ-Ë^Ú@Ï�ÕmÑHÒBËtÕ/Ï@ÌcÕ/ÏBÖ@Ñ:ÓHÍ8Ë:Ô8Ñ:ÍHÌ�ÏkÖBàBÛ:ÍHÓ8Ë:Ì�Õ/ÏBÎ@ËtÕ=Ô@Ñ�Õ6æBËþ Ú8ÑOÕ/Ñ Ý@ÑHÖ:Ì)Ë Ï ü Ú@ÑOÕRÑ çsÏ�Õ/ÒBÑHÒHÏ:Í�Õ6Ë âaò�Ì ÎHÑ:×@ÏHÖBÑHÌ çJÏOÕ/ÒBÑBÒBÏ ÚBÑOÕ/Ñ Ñ:ÌË^Ú@ÏOÕ6Ñ:î8øJÏ@Ì ÖBàHÛJÍBÓ@Ñ:Ì ätê ïsú Ï Ê_á^ï Ì@æBË Ñ8Ì ÐJÏ:Ì1ÐJÑ:Ì ØJÙ@Ï ÝBË�Õ/ÑBÐ

Page 48: Logica Programacao Aplicada V2.2008

48

ÒHÏ:Ì@Ï@Ô)çJËJÖ%çsÍ@ÒHÑ:Ì�Ô)ËcÓ@Ñ:ÚBö8ÎJÙ@ÖBËcÌ)Ë^×�Õ/Ï���ÖBÛJÏH×�Õ/Ñ�ÒHÏÇT8ËBËJÖHÏëâ«ò_Ñ:Ú)Ö:ÍHÓ@Ñ:î8æBËcÒ3Ë^ÌË^Ú@ÏOÕ6ÑHÒBËtÕ6ÏHÌ Æ�Æ ß1ä)áèê ��� ßIïsúBá Ï ° ßRÊ_áHïsá ÏBÐ Ï3Ü^Ú�Õ/ÏHÌBÌ8øJÏ@Ì ÖBàHÛ:ÍHÓ@ÑHÌ åÌ@ÏBÐJÏBÖ:ñ@Ñ:Ô)Î:Ï � Ì,ÏBØ^Ù@Ñ:î1øJÏ:Ì�×)ËHËJÖBÏBÑ:Ô@Ñ:̱�H÷�Ï:Ì)Î^Ù8ÒHÑHÒBÑ:Ìëâ

3.12.7 Precedência (Hierarquia) dos operadores relacionais e lógicos.

óHÑ ÐHÏ:Ì8ÐJÑ ÝBËtÕ6ÐJÑ Ø^Ù8Ï Ë^Ì Ë:Ú@ÏOÕ/ÑHÒ3ËtÕ/ÏHÌ ÐJÑBÎJÏ3ÐJ÷3Î^ÍHÓ)Ë^Ìëê Ë:Ì Ë^Ú@Ï�Õ/ÑHÒBË�Õ/Ï:ÌÖBàHÛ^ÍBÓ8Ë^ÌQËJ×@ÏHÒBÏ:Ó@Ï3ÐcÙ8ÐJÑ�ñHÍBÏ�Õ/ÑOÕmØ^ÙBÍ@Ñ�Ô@ÑjÌHÙ@Ñ�Ï3ÜJÏ:ÓBÙHî8æBËìâQ�nÕ/Ï:Ó1ËHÐJÏ:Ô@ÒB÷3çsÏ@Ö�ÑÙ8Î^Í@Ö@Í@íHÑ:î8æ8ËkÒHÏqßTárÚ)ÑOÕ/Ñ�ÝBÑ:ÓHÍ8Ö@Í8ÎJÑOÕYÑ�ÖHÏ:Í)Î^Ù�Õ/Ñ+ÒHÏ+Ï8Ü^Ú�Õ/Ï@ÌBÌ8øHÏ:Ì>ÖBàHÛ^ÍHÓ3Ñ:Ìëâ

Hierarquia Operação 1 2 3 4 5

! > >= < <=

== ! = && | | é�Ñ:×ãâJ�tâgü)þ�ðPsÕ/Ï:Ó@ÏBÒHû@ÔHÓBÍ@Ñ�ÒHÏEË^Ú@ÏOÕ6ÑHÒBËtÕ6ÏHÌ�ÖBàBÛ:ÍHÓ8Ë^Ìãâ

Exempl o: expr essão bool eana em ' C' éëÕ/Ñ:ÔBÌ@ÝBËtÕmÐ:Ï Ñ Ï3Ø:Ù@Ñ:î@æ8Ë ×8ËHËJÖBÏ@Ô@Ñ ÔBÙ8ÐJÑ Ï%Ü^Ú�Õ/Ï:Ì@Ì8æBË Ö3àHÛ:ÍHÓ@Ñ�ÒBÑ Ö@ÍHÔ8Û^Ù@Ñ8ÛHÏBÐä)oäHô

)B&!&A(!||!B&!&A||!A!F

BABAAF

=⋅+⋅+=

Exempl o: expr essão bool eana em ' C' éëÕ/Ñ:ÔBÌ@ÝBËtÕmÐ:Ï Ñ ÏBØ@Ù@Ñ:î@æ8Ë ×8ËHËJÖBÏ@Ô@Ñ ÔBÙ8ÐJÑ Ï%Ü^Ú�Õ/Ï:Ì@Ì8æBË Ö3àHÛ:ÍHÓ@Ñ�ÒBÑ Ö:ÍBÔ8Û^Ù@Ñ8ÛHÏBÐä)oäHô

B&&))B&&C(||!B||A(F

B)BCBA(F

=⋅⋅++=

Exempl o: t abel as ver dade com expr essões em ' C' RHË^Ô8ÎHÏ-ÑDÎ:Ñ:×@ÏHÖBÑEçsÏOÕ/Ò3ÑHÒHÏ�ÒBÑrÌ8Ï3Û^ÙHÍHÔ8ÎHÏ�ÏBÜ^Ú�Õ/Ï@ÌHÌ@æ3ËkÖ3à@Û^ÍHÓ@ÑùôB||!A!F =

ò ÏBÜ^Ú�Õ6Ï@ÌHÌ@æ3ËB||!A!F = åhÏ3Ø^ÙHÍ1çsÑHÖBÏ:Ô3ÎJÏ � ÏBÜ^ÚdÕ/Ï:ÌHÌ8æBË

BAF += êkØ^Ù@ÏÞÚ8ËOÕÌHÙ@Ñ çsÏHíèêyÚ@ÏHÖ3Ë ÎJÏ%ËtÕ/ÏBÐJÑ ÒHÏ óHÏ RHËtÕ6ÛJÑ@Ôëê�å ÏBØ^Ù8Í)çsÑHÖHÏ8Ô8ÎJÏ � ÏBÜJÚ�Õ/Ï:ÌBÌ@æ3Ë

BAF ⋅= â

A B ! A ! B ! A | | ! B 0 0 1 1 1 0 1 1 0 1 1 0 0 1 1 1 1 0 0 0

äBÔ8ÎJæ3ËìôA B ( A && B) ! ( A && B) 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0

Page 49: Logica Programacao Aplicada V2.2008

49

�m² ±×��Û×ܹºq"»Ã)ÞÄÃƵ·ÅK¶)0ü@á

ï Ø^Ù@Ï ÌHÍ8ÛJÔBÍ@Ý:ÍHÓ8Ñ ÒBÍ@íHÏOÕ ØJÙ8Ï Ù3ÐJÑ çsÑOÕ=Í8÷)çsÏHÖ å ÒBË Î^ÍHÚ)Ë Í@Ô8ÎJÏ:Í�Õ6Ë�Xä)ÜJÏBÐ:Ú@Ö:Í@ÝHÍ)Ø^Ù@Ïèâ á

ï Ø^Ù8Ï ÌHÍ)Û^ÔHÍBÝ:ÍBÓ@Ñ ÒBÍ@íHÏOÕ Ø:Ù@Ï Ù8ÐJÑ çsÑOÕ=Í8÷%çsÏHÖ å Ò3Ë Î^ÍBÚ)Ë Õ/ÏBÑHÖ�Xä)ÜJÏBÐ:Ú@Ö:Í@ÝHÍ)Ø^Ù@Ïèâ

�)á ï Ø^Ù@Ï ÌBÍ)Û^ÔHÍ@ÝBÍHÓ@Ñ ÒHÍ@íBÏOÕ Ø^Ù8Ï Ù)ÐJÑ çJÑOÕRÍ@÷3çJÏHÖ å ÒBË Î:ÍHÚ3Ë ÖBàHÛ^ÍBÓ8Ë�Xä)ÜJÏBÐ:Ú@Ö:Í@ÝHÍ)Ø^Ù@Ïèâ

HJá ï ØJÙ@Ï ÌBÍ8Û^ÔHÍ@Ý@ÍHÓ8Ñ Ò:Í@íHÏ�ÕxØ^Ù8Ï Ù8ÐHÑ çJÑOÕ=Í@÷3ç^ÏHÖ å ÒBË Î^ÍHÚ1Ë Ó@Ñ�Õ/Ñ:Ó8Î:ÏOÕÐXä)ÜJÏBÐ:Ú@Ö:Í@ÝHÍ)Ø^Ù@Ïèâ

D)á 8ÑOÕ/ÑxÓ@ÑHÒHÑÞÛtÕ/Ñ:Ô@Ò8ÏHíHÑxÏ@ÌHÓ�Õ/Ï)çJÑÞË�Î^ÍHÚ)Ë ×@÷:Ì@ÍHÓ8Ëìê�Ñ Õ/Ï:Ú�Õ/Ï:Ì@Ï@Ô)ÎJÑ:î@æBË�ÏBÐä)oä Ï+ËkÔ��8ÐJÏOÕmË-ÒHÏr×�`JÎJÏ:ÌDÙHÌ@ÑBÒ3Ë^Ìëô

Exempl o: 1, 567 � r eal – f l oat – 4 byt es 3. 1415 � 100 � 101, 345 � 69123 � 11. 98 e+125 � " b" � " agost o" � ' x ' � " bel eza" � " 1. 234" � ' 7' � - 25932 � 124 � - 255 � 75. 500 � 1000000, 1 � " Eu odei o Logi ca de Pr ogr amacao" � " I magi ne, ent ao, l i nguagem C" �

ý@á-óBÑHÒBË^ÌEË^Ì-Ì8Ï3Û^ÙHÍHÔ)ÎHÏ:Ì,ç^ÑBÖBËtÕ6Ï@ÌëêUÕ/Ï@ÌHÚ3Ë^Ô@ÒBÑ+Ñ:Ì,Ø^Ù@Ï@Ì3ÎHøJÏ:Ìãôi nt i A, i B, i C, i D, bE, bF; i A = 10; i B = 20; i C = 30; i D = 40; bE = 1; bF = 0; Exempl o: i A >= i B � 0 ( FALSO) , i A é menor que i B i B < i A � i C == i A � ( i A + i B) * ( i C - i A) � ( i A + i B) >= i C � ( i A + i C) / bE � ( bF && bE) � ( bF | | bE) � ( ! bF) � ( ! bE) � ! ( bF && bE) � ! ! ( bF && bE) � ! ( bF | | bE) � ( ! bF | | ! bE) � ! ( i A + i B) � ! ( i A <= i B) � ( i A | | i B) && ( i A | | i C) � ( ! ! i A | | ! ! i B) � i A ! = i B �

Page 50: Logica Programacao Aplicada V2.2008

50

i A == i B � ! i A == ! i B � ! bF ! = i E � ( ! ! i A && bE) && ( ! ! ! i B | | bF) �

�8á�4^Ù@ÑHÖ+å�ÑrÚ�ÕRÍ8ÐJÏ:Í�Õ6Ñ+Ë^ÚBÏ�Õ/Ñ:î8æ3ËkÏBÜJÏ@ÓHÙ3ÎJÑHÒBÑ�Ô@Ñ@Ì�ÏBÜ:Ú�Õ/Ï:ÌHÌ)øHÏ:Ì>Ñ:×8Ñ:Í8ÜHË�Xi A + i B – i C � i A * i B / ( i C) � ( i A + i B) * i C � ( i A / i B) * i B � i A + i B * ( i C – i D) � i A * i B * i C * i D � - i B * ( i C) � ++i B * i A �

\Há �HÔ8Ò:Í8ØJÙ@Ï Ë Õ/Ï@Ì@Ù@ÖBÎJÑBÒ3Ë Ï Ë Î^ÍHÚ8Ë Ò8Ï Ó@ÑHÒBÑ Ù8ÐJÑ ÒHÑ@Ì Ì@Ï3Û^ÙHÍHÔ%ÎJÏ:ÌÏBÜ^Ú�Õ6Ï:ÌHÌ8øHÏHÌëôÑHá üQeÌHUi ×@á

eÇ�JÇØHÓ@á

�JÇ�HìâÆþrð ÒHá

�JÇ�H�ð âÆþÏHá

bèâ þ��Éb²eUHÝHá

üQ�ÌH�e ÛJá

�UH±e ñ@á

üQ�ÌHìâÆþSe Í@á

üQ�ÌH�e âÆþ

�Há D��Qü8þ�e ÿ8á

�ÇDtâÆþSe�ü

bHájóHÑHÒHÑ8ÌcÑ@Ì�Ï8Ü^Ú�Õ/Ï:Ì3Ì8øJÏ:ÌqÑ:×@Ñ@Í3ÜHËìêUÏ:ÌHÓsÕ/Ï3çsÑ^ð)Ñ@ÌjÔ@Ñ�ÝBËtÕ6ÐHÑcÓ8ËBÐ:ÚHÙ8ÎHÑ:ÓHÍ8Ë^Ô3ÑHÖèêÙ8Î^Í@Ö@Í@íHÑ:Ô8Ò8Ë-Ë^ÌUË^Ú@ÏOÕ6ÑBÒBËtÕ/ÏHÌ>ÒHÑDÖ:ÍHÔ8Û^Ù8ÑBÛ:ÏBÐ n)plHôÑHá-Ï3Ü^Ú�Õ/Ï@Ì@Ì@æBËrÔBÙ8ÐJåOÕRÍBÓ@Ñèô 3 3

a x 2y.x

� � = +! " # $ 6

×@á-Ï3Ü^Ú�Õ/Ï@Ì@Ì@æBËrÔBÙ8ÐJåOÕRÍBÓ@Ñèô ( ){ }2b e. 11,6 ab 2a 2c d% &

= + + +' ( 6Ó@á-Ï3Ü^Ú�Õ/Ï@Ì@Ì@æBËrÔBÙ8ÐJåOÕRÍBÓ@Ñèô 1 1

2 2c 10,3a 12,5b 2ab= + − 6ÒHá-Ï3Ü^Ú�Õ/Ï@Ì@Ì@æBË-Ö3àHÛ^ÍHÓ8Ñùô

d (a E b) OU (c E d) OU (a E d)= 6

Page 51: Logica Programacao Aplicada V2.2008

51

Capítulo 4 - Algoritmos, lógica de programação e fluxogramas.

¶m² ±�ß·¾I¸-" ÅpÇ',%&)(KÅ8ÑOÕ/ÑjÕ/Ï:Ì)ËHÖ3çsÏOÕ�Ù8ÐQÚ�Õ6Ë:×@ÖHÏ3ÐJÑrÔ1Ë�Ó8ËHÐ:ÚHÙ8Î:ÑBÒBËtÕUå�Ô@Ï:Ó8Ï:ÌBÌ@÷OÕRÍ8Ë�2ÐD:3�Ø^Ù8Ï�Ì@Ï��BÑèêÚ�Õ=Í8ÐHÏ:Í�Õ/Ñ3Ð:Ï:Ô8ÎJÏùêkÏ:ÔHÓ8Ë:Ô)ÎtÕ/ÑHÒBÑÞÙ3ÐJÑ�ÐJÑHÔ@Ï:Í�Õ/Ñ�ÒHÏ�ÒHÏ:ÌBÓ�Õ/Ï%çsÏ�ÕaÏ:Ì)ÎJÏÞÚ�Õ6Ë^×@Ö8ÏBÐJÑÒHÏ�Ù)ÐJÑkÝ3ËOÕ6ÐJÑrÓ@ÖBÑOÕ/Ñ-ÏrÚ�Õ/Ï:ÓHÍBÌ)ÑèâJ�+Ô@Ï:Ó8Ï@ÌHÌ@÷OÕ/Í)ËQÏ:ÔBÓ8Ë:Ô8ÎtÕ6ÑOÕ£Ù%ÐJÑkÌ@Ï8Ø��@û@ÔHÓBÍ@ÑÒHÏ Ú@Ñ@ÌHÌ)Ë^ÌxØ:Ù@Ï Ú)ÏOÕ6Ð^Í)ÎJÑ�Ø^Ù8ÏxË Ú�ÕmË:×@ÖHÏ8ÐJÑ Ì@Ï��BÑ Õ/Ï@Ì3ËJÖ3çdÍ8Ò3Ë ÒHÏxÐJÑHÔ@Ï@Í�Õ/ÑÑ:Ù8ÎHËBÐJ÷BÎ^ÍBÓBÑrÏjÕ/ÏHÚ@ÏBÎ:Í8Î^Í1çsÑùâWò�Ö3åBÐQÒ:ÍBÌ8ÎHËìê§ÒHÏ3çsÏ:ð3Ì@Ï-ÒHÏHÝ:ÍBÔBÍ�ÕEÓ)Ë@ÐHËrËJÌ-ÒHÑ@Ò3Ë^ÌØ^Ù@Ï�Ì@ÏOÕ/æ3ËkÚ�Õ6Ë:Ó8Ï:ÌHÌ@ÑHÒ%Ë^Ì-ÌBÏ�Õ/æBË+ÑOÕ6ÐJÑHíBÏ:ÔBÑHÒBË:Ì+Ô8ËrÓ8ËHÐ:Ú@Ù8ÎJÑHÒ3ËOÕ�â)ËtÕ6ÎHÑ:Ô8ÎHËèêcÑ Ì8ËHÖ:ÙHî8æBË Ò@Ï Ù)Ð Ú�Õ6Ë:×@ÖHÏ3ÐJÑ Ú)ËtÕ�Ó)ËHÐ^ÚHÙ)ÎJÑ@ÒBËtÕ_å ×@Ñ@Ì@ÏHÑHÒ@Ñ ÏBÐÒBË^ÍHÌaÚ8Ë:Ô)ÎHË^Ìëô,ÑcÌ@Ï3Ø��8û:ÔHÓ@Í@ÑjÒHÏcÚ@Ñ:ÌHÌ8Ë:Ì�ÏeÑaÝBË�Õ6ÐJÑaÓ8Ë@ÐBËeËJÌjÒ@ÑHÒBË^ÌcÌ@Ï�Õ/æBËÑOÕ6ÐJÑBíHÏ:Ô@ÑBÒ8Ë^Ì_Ô8Ë�Ó8Ë@Ð:ÚHÙ8ÎJÑHÒ%ËtÕ�â-äBÌ8ÎHÑyÌ@ÏBØ��@ûBÔHÓHÍ@Ñ_ÒBÏ�Ú)Ñ:ÌHÌ8Ë:Ì_åyÓBñ@ÑBÐJÑBÒHÑyÒHÏÑHÖBÛHËOÕ=Í8ÎHÐBË âuúBÐrÏBÜJÏBÐ:Ú8ÖBË�ÌBÍ8Ð:Ú@ÖBÏHÌ-ÏrÚ�Õ6Ë^Ì3Ñ:ÍHÓ8Ëìê ÒHÏrÓ8ËBÐHË�Ù8Ð�ÚsÕ6Ë^×@ÖHÏ8ÐJÑrÚ)ËJÒHÏÌ@ÏOÕ�Õ/Ï:Ì8ËHÖ)çdÍ@Ò3ËeÓ@Ñ8Ì8ËjÝBËtÕ=ÔBÏ@î@ÑBÐBË^Ì�Ù8ÐHÑcÌBÏBØ��8û:ÔBÓHÍ@Ñ�ÒBÏjÚ@Ñ:ÌHÌ)Ë:ÌQØ^Ù@Ï�ÐHË^Ì8Î�Õ6ÏBÐÑrÌ8ËHÖ:ÙHî@æ3Ë ê¬å�Ù)ÐJÑjÕ/Ï8Ó@Ï:Í8Î:Ñ�ÓHÙ8Ö@ÍHÔ@÷OÕ=Í8ÑèâòÞÔ8Ë^î@æBËnÒHÏcÑ@ÖBÛHËtÕ=Í)ÎHÐBËnåeÓ@Ï:Ô8ÎOÕ/ÑHÖeÚ@ÑOÕ6ÑcÎ@ËJÒHÑcÑeÓ8ËHÐ^ÚBÙ3ÎJÑ:î8æ3Ëìâ�òÞÓ�Õ=Í@Ñ@î@æBËÒHÏ ÑBÖBÛHËOÕ=Í)ÎHÐHË^Ì Ú@ÑOÕ/Ñ Õ/Ï:Ì8Ë@Ö3çJÏOÕ Ë^Ì ÚdÕ6Ë^×@ÖHÏ%ÐJÑ:Ì å Ù8ÐJÑ ÒBÑ:Ì ÐJÑ:Í8ËOÕ6Ï:ÌÒ:Í@Ý:ÍBÓHÙ@ÖHÒBÑ@ÒHÏ:Ì�ÒBË:ÌhÍHÔBÍHÓBÍ@Ñ:Ô8ÎHÏ@Ì�ÏBÐxÚ�Õ6ËBÛ�Õ/ÑBÐHÑ:î@æ3ËvÏ3ÐxÓ)ËHÐ^ÚHÙ)ÎJÑBÒBË�Õ/Ï:ÌëâÉ�8Ì8ÎHËÚ8ËtÕ6Ø:Ù@ÏwÔ8æBËvÏ3Ü^ÍHÌ)ÎJÏÞÙ8ÐwÓ8Ë^Ô��:ÙBÔ8ÎHËhÒHÏ Õ/Ï3ÛOÕ/Ñ:Ìëê-Ë:ÙhÌ@Ï��BÑùê�Ù8ÐhÑHÖBÛBËtÕ=Í8Î8ÐHËìêØ^Ù@Ï Ô8Ë:Ì Ú8Ï�Õ6Ð^Í)ÎJÑ Ó�Õ=Í@Ñ�Õ ÑBÖ3Û@ËtÕ=Í)ÎHÐHË^Ìãâ�JÑ:Ì3Ë ÍHÌ)ÎBË Ý8Ë^ÌHÌ8Ï Ú)Ë^ÌHÌHö%çsÏHÖ ÑÝ:ÙHÔHî8æBË ÒBÏ Ó�Õ=Í@ÑBÒBË�Õ Ò@Ï Ñ@Ö3ÛHËtÕ=Í)ÎHÐHË^Ì ÒHÏ@Ì8Ñ:Ú@ÑOÕRÏ@Ó@ÏOÕ=Í@Ñ¢â ÊBÑBÎ^Ù�Õ6ÑHÖBÐJÏHÔ)ÎJÏèêÏBÜ^ÍHÌ)ÎJÏBÐ�Ö:Í3ÔHñ@Ñ:ÌÞÐHÏ:Ì)ÎtÕ/Ñ@ÌwÏvÏ@Ì)ÎtÕ=Ù8Î^Ù�Õ/Ñ@Ìv×@÷@ÌHÍHÓ@Ñ@Ìùê�ÑxÚ@Ñ�Õ6Î^Í�ÕnÒBÑ:ÌÞØ^Ù8Ñ:ÍHÌÚ8ËJÒHÏ3ÐHË^ÌkÓsÕ=Í@ÑOÕ�Ñ@ÖBÛHËOÕ=Í8ÎBÐHË:Ìëê¬ÐBÑ:ÌrÑrÌ8ËJÖ:ÙBîBæBË�Ó8ËHÐ:Ú@ÖBÏBÎJÑkÒ3Ï:Ú@Ï:Ô8Ò@ÏrÏBÐ-ÛtÕ/ÑHÔ8ÒHÏÚ@ÑOÕ6ÎHÏ ÒBË Ó�Õ=Í@ÑBÒ8ËtÕ ÒBË ÑBÖBÛBËtÕ=Í)ÎHÐHËìâ ÍsÏ�ÕRÑHÖBÐHÏ:Ô8ÎHÏ ÏBÜ:ÍHÌ8ÎJÏ3Ð ÒHÍ)çsÏOÕRÌ8Ë^ÌÑHÖBÛHËOÕ=Í8ÎHÐBËJÌrÚ@Ñ�Õ6ÑaÕ/Ï@Ì)ËJÖ3çsÏ�ÕYË+ÐJÏ:Ì8ÐHË�Ú�Õ'Ë:×@ÖHÏBÐJÑ¢êXÓ@ÑHÒ3Ñ�Ù8Ð�Ì@Ï3ÛJÙBÔ@ÒBË-Ë�Ú8Ë:Ô)ÎHËÒHÏDç^ÍHÌ8ÎJÑ>ÒBË�Ì8Ï@Ù-Ó�ÕRÍ8ÑHÒBËtÕ�âÊBË Ì@Ï:Ù Ö:Í1çtÕ6Ë 2pý�3 ),w�p�f��5��d�pÀt��ÔcÓ¸ cÑx]gDl]a�t�`��Qâ çBËJÖèâ üëê ó3Ë:Ô8ÑHÖHÒ ]BÔHÙ)Î^ñÑ:Ú�Õ/Ï@Ì@Ï:Ô8ÎHÑ Ù8ÐHÑ çsÏ�ÕRÌ@æBË Ú8ÑOÕ/Ñ Ñ ËtÕ=Í)ÛJÏ3Ð ÒBÏ:Ì8ÎHÑ Ú@ÑHÖHÑ%çtÕ/Ñèâ ä)ÖHÑ ÌBÏ�Õ=Í@ÑÒHÏOÕ=Í1çsÑHÒHÑqÒBË�Ô8ËHÐJÏ�ÒHÏ�Ù8Ð�ÝHÑBÐBËJÌ8Ë�ÐJÑBÎHÏ3ÐJ÷BÎ^ÍHÓ%ËeÚ8Ï�Õ=Ì@ÑqÓHñ@ÑBÐ:ÑHÒ3Ë-ò�×HÙks@Ñ+*'ÝHÑOÕRJÑBËHÐHåeÍB×BÔkR-,HÌ�YjÑHÖ^ð:]Hñ8Ëa^�YdÕ=ÍHÌ8ÐhßÐ\ D)á�Ø^Ù@Ï�ÎOÕ/ÑHÒ@Ù@í:ÍBÒBËaÖ:Í1ÎJÏOÕ/ÑBÖ3ÐJÏ:Ô8Î:Ï�Ø:Ù@ÏOÕÒ:Í@íHÏ�Õ )Ñ:Í ÒHÏ s@Ñ+*RÝBÑ�Õ�ê RJÑ%ËBÐJåèê Ý:Í@Ö@ñ3Ë ÒHÏ RHË^ÍHÌ8åHÌëê ÒBÏ ]Hñ8Ë_^�YOÕ/Í8íBÐìâ]Hñ8Ëa^�YOÕ=Í@í3Ðhå�ñ)Ë��HÏ�Ñ�ÓBÍ@ÒHÑHÒHÏyÒBÏ�]HñHÍ)çJÑùê�Ô@Ñ�Ï3ÜhúHÔHÍ8æBË õ ËBç^Í8åBÎJÍHÓ@Ñèâ�ä3Ì)ÎJÏÑ:Ù8ÎHËOÕ Ï:ÌHÓ�Õ/Ï%çsÏ:Ù Ù8Ð Ö@Í)çãÕ'Ë ÓHñ@ÑBÐHÑHÒBË .sa�t���v �Ôc /z��vDl ^10 �Ôc/hÂ��w32���v��Ôce�ßI1@ÏBÛOÕ/Ñ:Ì�ÒHÏG18Ï:Ì8ÎHÑ:Ù�Õ/Ñ:î8æ3ËvÏG18ÏHÒ:ÙBî@æBËJáùâ+ïvÎ^ö8Î^Ù)ÖBËvÒBËhÖ@Í)çãÕ6ËhÒ@Ï:ÙbËtÕ=Í3ÛHÏBÐÎJÑBÐ^×8åBÐ � Ú@ÑHÖHÑ%çtÕ/Ñ4��Ö%ÛJÏ:×�ÕRÑùâò�ÌHÌHÍ)ÐìêhÏ@Ì8ÎJÏ Ó@Ñ:ÚBö)Î^Ù@ÖBË ÒH÷ Í@ÔHöBÓHÍ8Ë ÑBË Ï:Ì8Î^Ù@Ò3Ë Ò8Ë:Ì ÑBÖBÛHËtÕ'Í8ÎHÐHË^Ìùânò^Ø^ÙHÍÌ@ÏOÕ/æ3ËyÑ8Ú�Õ/Ï:Ì@ÏBÔ8ÎJÑHÒBÑ:Ì�ÑHÖBÛ:Ù8ÐHÑ:ÌqÒHÏHÝ:ÍHÔ@ÍHî8øHÏ:ÌaÌ)Ë:×�Õ/ÏjÑHÖBÛBËtÕRÍ8ÎHÐ@Ë^Ìãê,ÖBàHÛ:ÍHÓ8ÑaÒHÏÚ�Õ6ËHÛOÕ/ÑBÐJÑ@îBæBËkÏ>Ù8ÐJÑ-Ò3ÏrÌHÙBÑ@Ì�Õ6Ï@Ú�Õ/Ï:Ì@Ï@Ô8Î:Ñ:î8øHÏ:Ì,ÛtÕ6÷HÝ:ÍBÓBÑ:Ìëê Ë:Ì>ÝHÖ:Ù)ÜHËHÛtÕ/Ñ)ÐJÑ:Ìëâ

¶m² �Ä6ÅI¾mÃIºIµÈ¸ÉÅ:ÇKºJ½I¿ÄÂmÅ$" µÈ¸É¼OÅúBÐhÑHÖBÛBËtÕRÍ8ÎHÐ@Ë�åÞÙ8ÐJÑbÒBÏ:ÌHÓ�Õ=Í8î8æBËwÚ@Ñ:ÌBÌ8Ë�ÑÞÚ@Ñ:Ì8Ì8ËhÒHÏ�Ù8ÐÞÚ�ÕmË:Ó@ÏHÌHÌ8Ëìê�ÔBÙ)ÐJÑÌ@ÏBØ��8û:ÔHÓHÍ8Ñ-Ó@ÏOÕmÎHÑ-ÒHÏDÏBÜJÏ:Ó@ÙBî@æBËèâúBÐnÑHÖBÛHËOÕ=Í8ÎHÐBËaË:Ú@ÏOÕ/ÑeÌ8Ë^×�Õ/ÏeÙ)Ð_Ó8Ë^Ô/�@ÙHÔ8ÎHËnÒHÏaÏ:Ô)ÎtÕ/ÑBÒBÑ:ÌcÒHÏjÐHËJÒBËnÑjÛJÏ�Õ/ÑOÕÙ8ÐJÑ�ÌBÑ:ö@ÒHÑÞØ^Ù8Ï Ì@Ï��HÑt�8ÎHÍ@Ö�Ú8ÑOÕRÑwË ÙHÌ@Ù@÷OÕ=Í)Ëèâ�úBÐ ÑBÖBÛBËtÕ=Í)ÎHÐ@ËxÎHÏBÐ ÓHÍBÔHÓ8ËÓ@ÑOÕ/Ñ@Ó8ÎJÏOÕRö@Ì8Î^ÍHÓ8Ñ@Ì-Í8Ð^Ú1ËtÕ6ÎJÑHÔ)ÎJÏ:Ìãô

Page 52: Logica Programacao Aplicada V2.2008

52

5>|�À�|{}��{x�»þËúBÐkÑBÖBÛHËtÕRÍ3ÎHÐHË-ÒBÏ3çsÏrÌ)ÏBÐ^Ú�ÕRÏDÎJÏ�ÕmÐ^ÍHÔ@ÑOÕYÑHÚ8à^Ì+Ù)Ð�Ô��8ÐJÏ�Õ'ËkÝ:ÍBÔBÍ8ÎBËkÒBÏrÚ@Ñ:Ì8Ì8Ë^Ìëâ��»�É�|�À�|�[�\�~sËJÑHÒHÑ Ú@Ñ:ÌBÌ8Ë ÒHÏ Ù8Ð ÑBÖBÛHËtÕRÍ)ÎHÐ@Ë ÒHÏ3çsÏ Ì@Ï�Õ Ú�Õ6Ï:ÓHÍHÌBÑ3ÐJÏ:Ô8ÎHÏ ÒBÏBÝ:ÍHÔHÍBÒBËìâaò�ÌÑ:î8øJÏ@Ì�ÒHÏ%ç^ÏBÐ�Ì8Ï�Õ�ÒHÏHÝ8ÍHÔHÍ@Ò@Ñ@Ì�ÕRÍ)ÛHËtÕ6Ë^Ì8ÑBÐ:Ï:Ô8ÎHÏ+ÏrÌ8ÏBÐ-Ñ8Ð^×HÍ8Û��BÍ@ÒBÑHÒHÏ@Ìëâ6�À/}]NI¾�x�¾��sËúBÐvÑHÖBÛBËtÕRÍ8ÎBÐHËvÒHÏ%çsÏbÎJÏOÕjíHÏ�Õ6Ë�Ë^ÙbÐ:Ñ:ÍHÌ�ÏHÔ)ÎtÕ/ÑHÒBÑ@Ìëê�ÍHÌ)ÎBËvåbØ^Ù@Ñ:Ô)Î^Í@Ò@ÑBÒHÏ:ÌØ^Ù@Ï�Ì@æBË-ÖHñ@ÏrÌ8æ3ËkÝBËtÕ'Ô@Ï:ÓHÍBÒBÑ:Ì>Ñ@Ô8ÎJÏ:Ì>ÒBËrÑHÖ3ÛHËOÕ=Í8ÎBÐHËrÍ@ÔHÍHÓHÍ8Ñ�Õ�âW ¾�y{x�¾��sËúBÐnÑHÖBÛHËOÕ=Í8ÎHÐBËnÒBÏ3çsÏjÎJÏOÕ�Ù8ÐHÑaË:ÙjÐ:Ñ:ÍHÌcÌ@Ñ:öBÒHÑ:Ìëê,ÍHÌ3ÎBËnå�Ø^Ù@Ñ:Ô8ÎJÍ@ÒHÑHÒHÏ@Ì�Ø^Ù8ÏÎJÏBÐrÙ8ÐJÑ�ÕRÏHÖHÑ:î8æ3ËkÏ:ÌHÚ)Ï:ÓHö@ÝHÍBÓ@Ñ�Ó)ËHÐkÑ:Ì>ÏHÔ8ÎtÕ6ÑHÒBÑ:Ìëâ6�É�»�}/|5��|{x�¾ax�»þËúBÐ ÑBÖBÛHËOÕ=Í)ÎHÐHË ÒBÏ3çsÏ Ì@ÏOÕ Ï3ÝBÏBÎ^Í)ç:Ëìâ �@Ì8ÎHË Ì@Í8Û^ÔHÍ@Ý8ÍHÓ@Ñ Ø:Ù@Ï ÎBËJÒHÑ:Ì Ñ:ÌË^Ú@ÏOÕ6Ñ:î8øJÏ@Ì�ÒHÏ3ç^Ï3Ð�Ì@Ï�ÕEÌHÙ8Ý@ÍHÓHÍ@Ï8Ô8ÎJÏBÐJÏHÔ8ÎJÏ�×@÷:ÌHÍHÓ)Ñ:ÌrÒHÏ+ÐHËHÒ3ËkØ^Ù8ÏrÚ8Ë^Ì@Ì@ÑBÐ�Ì8ÏOÕÏBÐ Ú�ÕRÍHÔBÓHö@ÚHÍ8Ë Ï3ÜJÏ:ÓBÙ8ÎHÑHÒHÑHÌ Ó8ËBÐ Ú�Õ/Ï:ÓHÍBÌBæBË ÏBÐ Ù)Ð ÎHÏBÐJÚ8Ë Ý@ÍBÔHÍ8ÎBË Ú8Ë�Õ�Ù8ÐñHÙ8ÐJÑ@Ô8Ë�ÙBÌBÑ:Ô@ÒBË�Ú@Ñ:Ú@ÏHÖDÏ-Ö@÷@ÚHÍHÌãâò�ÖHåBÐ-Ò:ÍHÌBÌ3Ëìê Ë:Ì>ÑHÖBÛHË�Õ=Í8ÎHÐ@Ë:Ì-Ú)ËHÒHÏBÐ�Ì8ÏOÕ�Ó@ÖBÑ:ÌBÌHÍ@Ý@ÍHÓ@ÑBÒ8Ë^Ì�Ï3Ðèô• ò�ÖBÛ@ËtÕ=Í8ÎHÐ3Ë^Ì-Ó8Ë3Ð^ÚHÙ8Î:Ñ:ÓBÍ8Ë^Ô8Ñ:ÍBÌ

• ò�ÖBÛ@ËtÕ=Í8ÎHÐ3Ë^Ì-Ô@æ%ËdðBÓ8Ë@Ð^ÚBÙ8ÎJÑ@ÓHÍ)Ë^Ô@ÑBÍHÌ

ä)ÜJÏBÐ:Ú@ÖBË^ÌDÒHÏ-ÑBÖ3ÛHËtÕ=Í8Î3ÐHË^Ì�Ô8æBËrÓ)ËHÐ^ÚHÙ8ÎHÑ:Ó@Í8Ë^Ô8Ñ:ÍBÌüëâ �HÔHÌ)ÎtÕ=ÙHî)øHÏ:Ì-Ú8Ñ�Õ/ÑrÙ)Î^Í8Ö:Í@íBÑ:î8æBË�ÒHÏrÓ8Ñ:Í8ÜJÑ@Ì+×@Ñ:Ô@Ó8÷OÕ=Í8Ë:Ì�6 â

1@ÏBÛOÕ/Ñ:Ì+Ú8ÑOÕ/Ñ�ÓB÷HÖ:ÓHÙ8ÖBË-ÒBËrÍ)Ð^Ú3Ë:Ì8ÎHË-ÒHÏjÕ6Ï@Ô@ÒHÑp6

�tâ �Õ6Ë:Ó@ÏHÒ:Í)ÐHÏ:Ô8ÎHË:Ì Ú@ÑOÕ6Ñ Ó8÷HÖ@ÓHÙ@Ö3Ë Ó8ËHÐ Ñ@Ì�Ë:Ú@Ï�Õ/Ñ:î8ø:Ï@Ì Ý:ÙHÔ)ÒHÑBÐJÏ@Ô3ÎJÑ:ÍHÌ�ÒHÑÑOÕ=Í)ÎHÐJåBÎ:ÍBÓ@Ñp6

Hìâ �HÔHÌ)ÎtÕ=ÙHî)øHÏ:Ì-Ú8Ñ�Õ/Ñ+ÐHÑBÎOÕ=öHÓBÙ@ÖBÑ-Ô8ÑrÙHÔBÍ)çsÏOÕRÌBÍ@ÒHÑHÒ@Ï�6

Dtâ úBÐJÑ�Õ/Ï:Ó8Ï@Í8ÎJÑ�Ó@Ù@Ö:ÍHÔ8÷OÕRÍ@Ñp6ýëâ

�Õ6Ë:Ó@Ï:ÌHÌ)Ë-ÒHÏ+Ý@Ñ:×�Õ=ÍBÓ@Ñ@î@æBËrÔBÙ8Ð:Ñ+ÝH÷:×�Õ=ÍHÓ@ÑDÒHÏjÕRÏBÝOÕ=Í8ÛJÏdÕ/Ñ:Ô8ÎHÏHÌëâ

ä)ÜJÏBÐ:Ú@ÖBË^ÌDÒHÏ-ÑBÖ3ÛHËtÕ=Í8Î3ÐHË^Ì�Ó)ËHÐ^ÚBÙ)ÎJÑ:ÓHÍ8Ë:Ô@ÑHÍHÌëôüëâ J÷HÖ@ÓHÙ@ÖBË+ÒHÑrÚ)Ë@ÎJû:ÔHÓBÍ@Ñ+ÒHÏ�Ù)ÐJÑ+ÍHÔHÌ8ÎHÑHÖHÑ:î8æ3ËaÕ/ÏHÌBÍ@ÒHÏ:ÔBÓBÍ@ÑHÖ>�^Ó3ËHÐJÏ�ÕRÓHÍ@ÑHÖp6 â

J÷HÖ@ÓHÙ@ÖBË+ÒHÏrÓ8Ñ�Õ6ÛJÑDÎJå�Õ6Ð^ÍBÓ@Ñ+Ï+ÍHÔHÌ8ÎHÑHÖHÑ:î8æ3ËkÒHÏ>ÑOÕ£Ó)Ë:Ô@Ò:ÍHÓBÍ3Ë^Ô@ÑBÒ3Ëo6

�tâ ó:Í8ÐHÏ:ÔHÌHÍ)Ë:Ô@ÑBÐJÏ@Ô3ÎHËkÒBÏDÎ^ÙH×BÙ@ÖBÑ:î3øHÏ:Ì76

Hìâ ó:Í8ÐHÏ:ÔHÌHÍ)Ë:Ô@ÑBÐJÏ@Ô3ÎHËkÒBÏ�Ú8ËJÖ@Í@Ñ@Ì+Ï�Õ6ËJÒBÑ:Ì�ÒBÏ@Ô8ÎJÑHÒ@Ñ@Ì76

Dtâ ó:Í8ÐHÏ:ÔHÌHÍ)Ë:Ô@ÑBÐJÏ@Ô3ÎHËkÒBÏ�ÓHñ@Ñ%çsÏ3ÎJÑHÌ�6ýëâ

J÷HÖ@ÓHÙ@ÖBË+ÒHÏjÕmË:ÖHÑBÐJÏ@Ô8ÎBË^Ì76

�ãâ J÷HÖ@ÓHÙ@ÖBË:Ì>Ö:Ù8Ð:Í@Ô8ËHÎJå@ÓHÔBÍHÓ8Ë:Ì76

\èâ �Õ6Ë:×@ÖHÏBÐHÑ@Ì>ÛJÏ�ÕRÑ:ÍHÌ>ÒHÏDÐJÑ3ÎJÏ3ÐJ÷8Î:ÍHÓ@Ñp6

bèâ �Õ6Ë:×@ÖHÏBÐHÑ@Ì-Ú@Ñ�ÕRÑ-Ñ�Ì8ËHÖ:ÙHî8æBË-Ò@Ï�ÓHÍ�ÕRÓHÙHÍ8ÎBË:Ì�ÏHÖ@å3ÎtÕ=ÍHÓ)Ë:Ì76ü8þìâ

)ËJÖBÑOÕ=Í@íBÑ@î@æBË-Ò@ÏrÓHÍ�Õ=ÓBÙHÍ8ÎBË^Ì>Ï@ÖBÏBÎtÕf�:ÔHÍHÓ8Ë:Ì�6üHüëâ

J÷HÖ@ÓHÙ@ÖBË ÒHÏ ÝBËJÔ8ÎHÏ:Ì ÒBÏ ÑHÖ:Í3ÐJÏ:Ô8ÎJÑ@î8æBË Ï Ò:Í8ÐJÏ:ÔBÌHÍ)Ë^Ô@Ñ3ÐJÏ@Ô8ÎHË ÒHÏÓ8ËHÐ:Ú8Ë^Ô@Ï@Ô)ÎJÏ:Ìëâ

¶m² �QáRº�#'" ºK¶ ºI¾K¸É½'&)(pÅHÇKÅp¶@½g¿ÄÂIÅq"»µ ¸»¼tÅI¶ïdÌ ÑHÖBÛBËtÕ=Í8ÎHÐ8Ë^Ì Ú8ËJÒHÏ3Ð Ì@ÏOÕ Õ/Ï@Ú�Õ/Ï:Ì@Ï@Ô8ÎJÑ@ÒBË:Ì ÑBÎtÕ/Ñ%çJå:Ì ÒBÑ Ö:Í@Ô8Û^Ù@Ñ3ÛJÏBÐÔ@ÑBÎ^Ù�Õ/ÑHÖèêkÑ3ÎtÕ/Ñ)çså@ÌÞÒHÏ�ÝHÖ:Ù)ÜHËBÛOÕ/Ñ3ÐJÑ:Ì�Ë^ÙyÑBÎtÕ/Ñ3ç:å:ÌÞÒHÏÞÚBÌ@Ï:Ù@ÒBË:ð8Ö:ÍHÔ)Û^Ù@ÑBÛ:Ï@ÔHÌëêÓ@ÑHÒHÑ�Ù8ÐJÑ+Ó8ËHÐrÌBÙ@Ñ:Ì,çHÑ:Ô8ÎJÑ8ÛHÏ:ÔHÌ,Ï-Ö:Í8Ð:Í8Î:Ñ:î8øHÏ:Ìãâ

Page 53: Logica Programacao Aplicada V2.2008

53

4.3.1 L inguagem natural

ïdÌ ÑBÖBÛHËtÕ=Í1ÎHÐHË^Ì Ì@æBË ÏBÜ^Ú�Õ/Ï@ÌBÌ8Ë:Ì Ò:Í�Õ/Ï3ÎJÑBÐ:Ï:Ô)ÎJÏ ÔHÙ)ÐHÑ Ö@ÍHÔ8Û^Ù8Ñ3Û:ÏBÐ ÔBÑBÎ^Ù�Õ6ÑBÖèêÓ8ËHÐHËcÔBÙ8Ð:Ñ�ÕmÏ:Ó@Ï:Í8ÎBÑèâ£ÊBÏ:Ì8ÎJÏqÓ@Ñ@Ì3ËìêYËjÑBÖBÛHËtÕRÍ3ÎHÐHË�Ì8ËJÝOÕ6Ï�Ó8Ë8ÐaÝ3ÑBÎHËtÕ/Ï@Ì�Ó)ËHÐHËÍ8Ð^Ú�Õ6Ï:ÓHÍHÌ8æ8Ë�ÏrÚ8ËJÙHÓ@ÑrÓ8Ë^Ô8Ý@Í@Ñ:×HÍ)Ö:Í@ÒHÑHÒ@Ïèâv=ËtÕEÍHÌBÌ)Ëìê¬ÑkÖ:ÍHÔ1Û^Ù@ÑBÛHÏ8ÐQÔ@Ñ8Î^Ù�Õ/ÑBÖ-åÙ8Î^Í@Ö@Í@íHÑHÒBÑ-Ô8ËtÕmÐHÑHÖBÐJÏ:Ô1ÎJÏrÚBÑ�Õ/Ñ�Ó)ËHÐJÏ:Ô8ÎHÑOÕ�Ë-ÑHÖ3ÛHËtÕRÍ8ÎHÐBË�Ë^Ù+Ú8ÑOÕmÎJÏ:Ì>ÒHÏHÖHÏãâ

4.3.2 Fluxogramas

ÊHÏ:Ì8ÎHÏ Ó8Ñ:Ì8Ë ËJÌ ÑHÖBÛBËtÕ/Í8ÎHÐBË^Ì Ì@æBË Ï:ÌHÓ�Õ=Í8Î@Ë:Ì ÔBÙ8ÐJÑ Ö@ÍHÔ)Û^Ù@ÑBÛ:Ï3Ð ÛOÕ/÷HÝ:Í@Ó@ÑùâúBÎ^Í@Ö@Í@íHÑBÐ^ð8Ì@Ï ÌHö)Ð^×)ËJÖBË:Ì ÛJÏBË8ÐJå3ÎtÕ=ÍBÓ8Ë^Ì Ú8ÑOÕ6Ñ ÕRÏ:Ú�Õ/Ï@Ì8Ï:Ô8ÎJÑ�Õ Ñ@Ì ÒHÍ)çsÏOÕRÌ@Ñ:ÌÑ:î8øJÏ@ÌrÑrÌ8ÏOÕ/ÏBÐ-ÎBËHÐJÑ@ÒHÑ@Ì-Ú@ÑOÕ/Ñ�Õ/Ï:Ì8ËJÖ%çsÏOÕ�ËQÚ�Õ'Ë:×@ÖHÏBÐHÑrÚ�Õ6Ë:Ú8Ë:Ì8Î@Ëèâ�JÑBÒHÑ-Î:ÍBÚ8ËÒHÏ Ë^Ú@Ï�Õ6Ñ:î@æBË å ÕmÏ:Ú�Õ/Ï:Ì)Ï:Ô8ÎJÑ@Ò3Ë Ú8ËtÕ Ù8Ð ÌHö)Ð^×8Ë:ÖBË Ò8Í@ÝHÏOÕ6Ï@Ô8ÎJÏèâ BËHÐHËçsÑ:Ô8ÎHÑBÛJÏBÐèê Ï@Ì3ÎJÏ Î^Í8Ú8Ë ÒHÏ Õ6Ï@Ú�Õ/Ï:Ì@Ï@Ô8ÎHÑ:î@æ8Ë Ú@ÏOÕ6Ð:Í)ÎJÏ Ë Ñ:Ó1ËHÐ^Ú@Ñ:ÔBñ@ÑBÐ:Ï@Ô8ÎHËçdÍHÌHÙ8ÑHÖkÒBË-ÝHÖ:Ù)ÜHËkÒBËkÑHÖBÛ@ËOÕ=Í8ÎHÐ3ËìâYä3Ô8ÎtÕ/ÏBÎ@Ñ:Ô8ÎHËìê Ñ�Ù)Î^Í@Ö:Í8íBÑ:î@æBË-ÒHÏ�ÌBö8Ð^×8Ë:Ö3Ë^ÌÚ8ËJÒHÏ_Ë:×HÌHÓHÙ�Õ'Ï:Ó@ÏOÕ�Ú8ÑOÕmÎJÏ:ÌbÒ3Ë�Ú�Õ6ËHÛtÕ6ÑBÐJÑ�ÒHÏ8Ú@Ï:Ô@ÒHÏ8Ô@ÒBËÞÒHÑ�Ó)ËHÐ:Ú@ÖHÏ3Ü^Í@ÒHÑHÒ8ÏbÒBËÓ8àJÒ:Í)ÛHËìâ«ú%ÐQÝHÖ@Ù8Ü@ËHÛtÕ6ÑBÐJÑrÚ)ËJÒHÏ�Õ/Ï:Ú�Õ/Ï@Ì@Ï:Ô3ÎHÑOÕ�Ð^Ù3Í8ÎHË�×@ÏBÐ-ÎHÑOÕ/ÏHÝBÑHÌDçdÍ@Ì8ÎJÑ:Ì>ÒHÏÝBËtÕ6ÐHÑxÐJÑ:Ó�ÕmËìâ�8ÑdÕ/Ñ Õ/Ï@Ú�Õ/Ï:Ì@Ï@Ô)ÎJÑ:î@æ8Ë ÒHÏÞÎJÑOÕ/ÏHÝ@Ñ@ÌvÐ^ÍBÓ�ÕmËìêjÚ8ËHÒHÏ^ð3Ì@ÏxË^Ú3ÎHÑOÕÚ8ËtÕTÙ8ÐJÑDËJÙ8ÎtÕ/ÑDÝBËtÕ6ÐJÑDÒHÏ�Õ6Ï:Ú�Õ6Ï@Ì@Ï:Ô8ÎJÑ@î@æ8Ëìâ

4.3.3 Pseudo-linguagens

äBÌ8ÎJÑ ÝBËtÕ6ÐBÑ ÒHÏ Õ/Ï:Ú�Õ'Ï:Ì@Ï:Ô8ÎHÑ@î@æ3Ë Ù8Î^Í@Ö@Í@íHÑ Ù%ÐJÑ Ö:Í@Ô8Û:Ù@Ñ3ÛJÏBÐ Í3Ô8ÎJÏOÕ6ÐHÏHÒ:ÍB÷�Õ=Í@ÑÏ:Ô8ÎtÕ6Ï Ñ Ö@ÍBÔ8Û^Ù8ÑBÛJÏ3Ð Ô@Ñ3Î:Ù�Õ/ÑHÖ Ï Ñ Ö:ÍBÔ8Û:Ù@Ñ8ÛJÏBÐ ÒHÏ Ú�Õ6Ë@ÛtÕ6Ñ3ÐJÑ@î@æBËìâ ä3Ì8ÎJÑÑ:×8ËtÕ6ÒHÑBÛJÏ3Ð Ð^ÍHÌ8ÎJÙ�Õ6Ñ Ñ@Ì ÝHÑ@ÓHÍ8Ö:Í@ÒBÑHÒHÏ:Ì ÒHÑ Ö@ÍHÔ)Û^Ù@Ñ8ÛJÏ3Ð Ô8ÑBÎ^Ù�Õ/ÑBÖ Ó8ËHÐ ÑÚ�Õ/Ï:ÓBÍHÌ@æBË�ÒHÑ�Ö:ÍHÔ8Û@Ù@ÑBÛJÏ3ÐaÒ@Ï�Ú�ÕpËHÛtÕ/ÑBÐHÑ:î@æ8Ëìâ¬òxÕ/Ï:ÚsÕ/Ï:Ì@Ï:Ô3ÎHÑ:î@æBË�Ì8Ë:×�Ñ�ÝBËOÕ6ÐJÑÒHÏ ÚHÌ@Ï:Ù@Ò3Ëdð3Ó8à:Ò:Í8ÛBË Ú8Ë^ÌBÌHÍH×BÍ@Ö@Í3ÎJÑ ÑBË Ú�Õ6ËHÛtÕmÑBÐJÑHÒ3ËOÕ Ñ Ñ:×BÌ3ÎtÕ/Ñ:î8æBË ÒBË:ÌÒHÏBÎJÑBÖ:ñ@Ï:ÌDÒHÑrÌBÍBÔ8ÎJÑBÜJÏDÒHÏ�Ö@ÍHÔ8Û:Ù8ÑBÛJÏBÐ-ÒHÏ-Ú�ÕmËHÛOÕ/ÑBÐHÑ:î@æ3Ë â

ï�ÎtÕ/Ñ:×8ÑHÖ:ñ8ËÞÒBÏ:Ì8Ï:Ô)çHËJÖ%çdÍ@Ò8ËÞÔ@Ï@Ì8ÎJÏ�ÓBÙ�Õ=Ì8ËhÙ)Î^Í@Ö@Í@íBÑOÕ/÷bÑ Õ/Ï@Ú�Õ6Ï:Ì@Ï@Ô8ÎJÑ:î@æ)Ë�ÒHÏÑHÖBÛHËOÕ=Í8ÎHÐBËJÌ�ÑBÎOÕ6Ñ3çså:Ì,ÒHÏ-Ý@Ö@Ù8ÜHËBÛOÕ/ÑBÐJÑ:Ìãâ

¶m² ¶-7mµ " ºg¸-"»µ ³ºI¶�#K½'"ɽsÃÆÅp¾K¶¹¸-"-,q&)(pÅJÇKº�,K¼"½K¿·ÂmÅ'"»µÈ¸É¼OÅò�Ó)Ë^ÔHÌ)ÎtÕ/ÙHî@æBË�ÒHÏ�ÑHÖBÛ@ËOÕ=Í8ÎHÐBË^ÌkÎ:ÏBÐ�Ð^ÙBÍ8ÎHËjÒBÏjÍHÔBÌBÚHÍ�Õ/Ñ@î8æBËìê�ÐJÑ@Ìëê�Ñ�Ú@ÑOÕmÎ^Í�ÕÒHÏ�Ù8ÐjÓ8Ë^Ô/�:Ù3Ô8ÎHË�ÒHÏ�Õ6ÏBÛtÕ/Ñ@Ìãê£Ú3ËJÒHÏ^ð3Ì@ÏqÓ�Õ=Í@ÑOÕ+Ù8Ð�ÑBÐ^×BÍ8Ï:Ô8ÎJÏ�ÍHÔ1Î^ÙHÍ8Î^Í1çJËjÓ8ËHÐË Ø:Ù@ÑHÖ Ì@Ï��HÑ Ú8Ë^ÌBÌBö)çsÏHÖ Ó8Ë^ÔBÌ1ÎtÕ=ÙHÍ�ÕdêyÐJÑ@ÍHÌ ÝHÑ:ÓHÍ8Ö3ÐJÏ:Ô8ÎHÏùêhÙ8Ð ÑHÖBÛBËtÕ/Í8ÎBÐHËìâò�ÖBÛ^Ù)ÐJÑ:Ì>Ò@Ï:ÌHÌ@Ñ@ÌqÕ/ÏBÛtÕmÑ:Ì-ÌBæ3Ëìôüëâ

�@ÒHÏ@Ô8Î^Í@Ý@ÍBÓ@Ñ:î@æ3Ë�ÒBË�Ú�Õ6Ë^×BÖHÏBÐHÑèô+ÒBÏBÎJÏOÕ'Ð^ÍHÔ8ÑOÕ�ËyØ:Ù@ÏyÌ@ÏnØ^Ù@Ï�Õ_Õ6Ï:Ì8ËJÖ)çsÏ�ÕË^Ù,Ø^Ù@ÑHÖEË^×/�HÏ3ÎJÍ)çJË-Ñ�Ì@ÏOÕYÑ3Î^Í@Ô)Û^Í@ÒBËèâ â

�@ÒHÏ@Ô8Î^Í@Ý@ÍBÓ@Ñ:î@æ3ËkÒ@Ñ:ÌU�)Ï:Ô)ÎtÕ6ÑHÒHÑ@Ì+ÒHÏ+ÒHÑHÒBË^Ì��tôuÍBÔ8ÝBËtÕ6Ð:Ñ@î8øJÏ:Ì>ÝBËtÕRÔ8Ï:ÓHÍ@Ò@Ñ:ÌëêÑrÚ8ÑOÕ6Î^Í�ÕYÒHÑ:ÌEØ^Ù@Ñ:ÍBÌ+Ì@Ï+ÒHÏ@Ì@ÏHÔ1çJËJÖ3çJÏOÕ/æBËDË^Ì-ÓB÷BÖ:ÓHÙ@Ö3Ë:Ìëâ

�tâ �@ÒHÏ@Ô8Î^Í@Ý@ÍBÓ@Ñ:î@æ3Ë�ÒHÑ:Ì �3Ì8Ñ:ö@ÒBÑ:ÌwÒHÏwÒHÑHÒBË^Ì��tô�Ñ:ÌvÍBÔ@ÝBËtÕmÐHÑ:î8øJÏ@ÌwÑ�Ì@Ï�Õ/Ï3ÐÛJÏOÕ6ÑHÒHÑ:ÌDÓ8ËHÐHË�Õ/Ï:ÌHÙ8ÖBÎHÑHÒBËèâ

Hìâ �@ÒHÏ@Ô8Î^Í@Ý@ÍBÓ@Ñ:î@æ3ËrÒHÑ:ÌqÕ6ÏBÛtÕ6Ñ:Ìãê§Ö@Í8Ð^Í8ÎHÑ:î8øJÏ@Ì>ÏjÕRÏ@Ì8ÎtÕ=ÍBî)øJÏ:Ì>Ò8Ë�Ú�ÕmË^×@ÖHÏBÐHÑèâ

Dtâ óHÏBÎHÏOÕ6Ð^ÍBÔ8Ñ:î@æBË Ò8Ë Ø^Ù@Ï ÒHÏ3çJÏ Ì@Ï�Õ ÝHÏ@Í8ÎBË Ú@ÑOÕ/Ñ ÎtÕ/Ñ@ÔHÌ8ÝBËOÕ'ÐJÑOÕ Ñ:Ì�)Ï:Ô)ÎtÕ/ÑHÒBÑ@Ì�� Ï3Ð �)Ì8Ñ:ö@ÒHÑ@Ì��tâyÊBÏ@Ì8ÎJÏ Ú8Ë:Ô8ÎBË ÒHÏ%çsÏ Ì8ÏOÕwÒ@ÏBÎJÏ�Õ6Ð@ÍHÔ@ÑHÒHÑ ÑÌ@ÏBØ��@û:ÔHÓBÍ8Ñ-ÒHÏ>Ñ:î8øJÏ@Ì,Ø^Ù@Ï+ÖBÏ3ç^Ï � Ì)ËJÖ:ÙHî8æ3ËkÒBË-Ú�Õ6Ë^×8ÖBÏBÐJÑèâýëâ

HË^ÔBÌ8ÎtÕ=ÙBî8æBË ÒBË ò�ÖBÛHËOÕ=Í)ÎHÐHËèê Ù8Î^Í@Ö@Í@íHÑ:Ô8ÒBË Ù8ÐJÑ ÒHÑ:Ì Ý3ËOÕ6ÐJÑ:Ì ÒHÏÕ/Ï:Ú�Õ/Ï:Ì@Ï@Ô)ÎJÑ:î@æ3ËrÒHÏ+ÑHÖ3ÛHËtÕRÍ8ÎBÐHËJÌãâ

�ãâ é�Ï:Ì)ÎJÏ�ÒHÑÞÌ)ËHÖ:ÙHî@æ3Ëxð_ÏBÜJÏ:ÓBÙHî8æ3ËhÒHÏ_ÎHËJÒHÑ:ÌbÑ@Ì�Ñ:î8øJÏ@Ì�Ò3ËhÑHÖ3Û@ËtÕ=Í8ÎBÐHËìêÌ@ÏBÛ:ÙHÍHÔ@Ò3Ë Ë ÝBÖ:Ù8ÜBË Ï:Ì8ÎJÑ@×BÏHÖHÏ@ÓHÍ8ÒBË Ú@Ñ�Õ6Ñ çsÏ�Õ=Í8Ý:ÍHÓBÑOÕ Ì@Ï ÏBÖHÏ Ï@Ì8ÎJ÷

Page 54: Logica Programacao Aplicada V2.2008

54

Õ/ÏHÑBÖBÐJÏ:Ô)ÎHÏ ÛHÏOÕ/Ñ:Ô8Ò3Ë Ë:Ì Õ6Ï:ÌHÙ@Ö3ÎJÑHÒBË^Ì Ï:Ì3Ú@ÏOÕ/ÑHÒ)Ë^Ì Ë^Ù ÒBÏBÎJÏ:Ó3ÎJÑ�ÕÚ8Ë^ÌBÌHö)çsÏ@ÍBÌ�ÏOÕBÕ'Ë^Ì�Ï3ÐrÌHÙ@Ñ+ÒBÏ:Ì@Ó�Õ=ÍHî@æ3Ëìâ

¶m² ÃQá'º�#q"»ºK¶ÆºI¾I¸É½'&)(pÅJÂ'" Ö� µÄÃƽ�08 ¿ ,$Ü ÅpÂq"ɽK¼O½JÅ�,sÇKµ·½mÂ'"»½I¼O½HÇmº�.K¿ÄÅKÃgÅI¶úBÐQÑBÖBÛHËtÕ=Í)ÎBÐHËkåaÕ/Ï@Ú�ÕRÏ:Ì@Ï@Ô8ÎHÑHÒBË+ÛtÕ/ÑHÝ@ÍHÓ@ÑBÐ:Ï@Ô8ÎJÏ-ÑBÎtÕ6Ñ3çJå:ÌrÒBÏ�Ù)Ð-ÝHÖ:Ù8Ü@ËHÛtÕ/Ñ3ÐHÑèâï ÝHÖ@Ù8ÜHËHÛtÕmÑBÐJÑ ÐHË^Ì)ÎtÕ6Ñ ÒHÏ Ù)Ð ÐBËJÒBË ÐHÑ:ÍBÌ Ó@ÖHÑOÕ6Ëùê Ñ Ì@Ï3Ø��@û@ÔHÓHÍ@Ñ ÒBÏË^Ú@ÏOÕ6Ñ:î8øJÏ@ÌÞÕ/Ï8ÑHÖ:Í@íHÑBÒBÑ:ÌaÚ8ÑOÕ6ÑaÏ3ÜHÏ:ÓHÙ8Î:ÑOÕrÙ8ÐJÑjÒHÏBÎHÏ�Õ6Ð^ÍHÔ8ÑHÒBÑjÎJÑ�ÕRÏBÝHÑèâ�ò�Ö3Û^ÙBÔHÌÒBË^Ì�ÌHö8Ð^×)Ë:ÖBË^Ì�ÙHÌ@Ñ3ÒBË^Ì�Ô@Ñ�ÏHÖBÑ:×1ËtÕ/Ñ:î@æ3ËaÒ@ÏjÝ3Ö:Ù8ÜHËHÛ�Õ/ÑBÐJÑ:Ì�Ì8æ3ËjÐBË:Ì8ÎtÕ/Ñ@ÒBË^Ì�Ô@ÑÝ:Í8Û^Ù�Õ/Ñ Hìâ óHÏ@ÚBÏ:Ô@ÒHÏ:Ô)ÒBË ÒBÑ Ö:Í8ÎHÏOÕ/ÑBÎ^ÙdÕ/Ñ Ó8Ë^ÔHÌBÙ8ÖBÎJÑBÒHÑ Ú8ËJÒHÏ3Ð Ì@ÏOÕÏ:ÔHÓ8Ë:Ô8ÎtÕ/ÑBÒ8Ë^Ì Ë^Ù8ÎOÕ6Ë^Ì ÌHö8Ð@×8ËJÖBË:Ìùê ÐJÑ:Ì Ë^Ì Ï8ÜJÏBÐ^Ú8Ö3Ë^Ì ÏBÜ@Ú@ÖBËOÕ/Ñ@ÒBË^Ì ÔBÏ@Ì8ÎJÏÎtÕ/Ñ:×8ÑHÖ:ñ8Ë-Ù8Î^Í@Ö@Í8íHÑBÐkÑ>ÌHÍ8ÐJ×)ËJÖBËBÛ:Í@Ñ-Ñ:×8Ñ:Í3ÜHËìâ

ïdÚ@Ï�Õ/Ñ:î8øJÏ8Ì�ÏrÚdÕ6Ë^Ó@Ï:ÌBÌ)Ë^Ì>ÒHÏ�Ù8Ð>ÐHËJÒBË+ÛJÏ�Õ/ÑBÖèâ�HÔ8ÎHÏOÕmçsÏ:Ô3î@æBËkÒ)Ë�ÙHÌHÙ8÷�Õ=Í8ËrÔ)Ë�Ú�ÕmË^Ó@Ï:ÌBÌ8Ëìâuä1ÜìâHôÙHÌHÙ8÷OÕ=Í8Ë+Ò:Í8Û^Í8Î@ÑDçsÑHÖ3ËOÕ/Ï:Ì+Ú8ÑOÕ/Ñ+Ù8ÐJÑ+Ï:Ô8ÎOÕ/ÑBÒHÑ�ÒHÏÒHÑHÒ3Ë^ÌëâóHÏ:ÓBÍHÌ@æBË�i�HËHÐHÚ@ÑOÕ/Ñ:î8æ3Ëeß/ÍBÔ8Ò:ÍHÓBÑ�Ú8Ë^ÌBÌHÍH×BÍ@Ö@Í@ÒHÑ@ÒHÏ+ÒHÏÒHÏ:Ì1çdÍ8Ë^Ì,ÒHÏ+Ë^Ú3ÏOÕ/Ñ:î8øHÏ@Ì�Ï�Ú�Õ6Ë^ÓBÏ@ÌHÌ8Ë^Ì+Ô8ËrÚ�Õ6ËHÛ�Õ/Ñ3ÐJÑHáèâ

NS

óHÏ:ÓBÍHÌ@æBË�Ó8ËHÐaÕ'Ï:Ú@ÏBÎ^ÍBî8æBËUiEË�Ú�ÕmËHÛtÕ/Ñ3ÐJÑ�Ì8àÚ�Õ6Ë:ÌHÌ@ÏBÛ^Ù)Ï-ÒHÏ:Ú%Ë^ÍHÌ�ÒBÏ�Ì@Ñ3Î^ÍBÌ@ÝHÏHÍ)ÎJÑ-Ñ�Ó8Ë:Ô@Ò@ÍHî@æ8Ëìâ

Inícioé�ÏOÕmÐ^ÍHÔ@ÑHÖ8Í@ÒHÑHÒHϱirÍHÔ8Ò@ÍHÓ@ÑDËrÍHÔ@öBÓHÍ8Ë-ÒBË-ÝHÖ@Ù8ÜHË@ÛtÕ6ÑBÐJÑèâ

Fimé�ÏOÕmÐ^ÍHÔ@ÑHÖ8Í@ÒHÑHÒHϱirÍHÔ8Ò@ÍHÓ@ÑDË-Ý:Í3Ð-ÒBË-ÝHÖ:Ù)ÜHËBÛtÕ/Ñ8ÐJÑùâ

ó:Í�Õ6Ï:î@æBË+ÒBËkÝHÖBÙ8ÜHËkÒBÏ+ÒHÑBÒBË:Ì>ËJÙ>ÒBËrÚ�Õ6Ë:Ó@Ï@ÌHÌ@Ñ8ÐJÏ@Ô8ÎHËìâ

HË^Ô8Ï:Ó8ÎHËtÕmÏ:Ì�ÒHÏBÔ8ÎtÕ6Ë-ÒBÑ+ÐHÏ:Ì)ÐJÑ-Ú8÷BÛ^ÍHÔ8ÑèâHË^Ô8Ï:Ó8ÎHËtÕmÏ:Ì�Ï:Ô%ÎtÕ/ÏrÚ8÷3Û^ÍHÔ8Ñ:Ìãâ

HËHÐHÏ:Ô8ÎJ÷OÕ'Í8Ë^Ì>ËHÙ-Ô8ËHÎHÑ@Ìëâ

õ Ñ:ö8ÒHÑèô¬Ï%Ü^ÍH×HÍ�ÕYÔ@Ñ+ÎHÏBÖHÑèâ

õ Ñ:ö8ÒHÑèôuÍ1Ð^Ú�Õ=Í8ÐHÍ�Õ�ÒBË:ÓBÙ8ÐJÏ@Ô8ÎBËìâ

Page 55: Logica Programacao Aplicada V2.2008

55

òèÕ6Ø:ÙHÍ)çJË+ÒHÏ-ÒHÑ8ÒBË^Ìëâ

1@Ï:Ú8ÏBÎ^ÍHî@æ%Ëìâr3Í)Ûìâ�HZi õ ö3Ð^×)ËJÖBË:Ì-Ú8ÑOÕ6Ñ-Ý@Ö:Ù)ÜBËHÛtÕ/Ñ3ÐJÑ:Ìëâ

ésËJÒBË:Ì Ï@Ì8ÎJÏ:Ì ÌHö8Ð^×8Ë@ÖBË^Ì ÎHû3Ð ÏBØ^ÙHÍ)çJÑBÖHÏ:Ô8Î:Ï@Ì ÏBÐ Ý@ÙHÔHî8øHÏ@Ì Ú�Õ/ÏHÒHÏBÝHÍHÔHÍ8ÒHÑ@ÌÚ@ÏHÖHÑ@Ì Ö:ÍHÔ8Û:ÙBÑBÛJÏ:ÔBÌ ÒBÏ Ú�ÕmËHÛtÕ6ÑBÐJÑ:î@æ)Ëìâ óHÏ:Ì8ÎBÑ ÝBËtÕ6ÐHÑ ØJÙ@Ñ:Ô@Ò3Ë ÝBËtÕÏ:ÌHÚ@Ï@ÓHÍ@Ý:ÍBÓBÑHÒBË Ø^Ù8Ï Ù8Ð Ò8Ë:ÓHÙ8ÐHÏ:Ô)ÎHË ÒHÏ=çsÏ ÌBÏOÕ Û^Ù8ÑOÕ/Ò@ÑHÒ3Ë Ô8Ñ ÝBËtÕ6ÐHÑ ÒHÏÑOÕ6Ø^ÙBÍ)çJËìê¬ÏBÜ:ÍHÌ3ÎJÏBÐ�ÝHÙBÔHî8øJÏ@ÌcÕ/Ï8ÌHÚ8Ë^ÔHÌ8÷3çsÏHÍBÌkÚ@ÏHÖ3ËQÑOÕmÐHÑHíHÏ:Ô8ÑBÐHÏ:Ô3ÎBËQÒBË:ÌrÒHÑBÒBË^ÌÏBÐkÑ�Õ6Ø^ÙHÍ1ç:Ë^ÌëâHËHÐHËeÚ�ÕRÍ)ÐJÏ:Í�Õ'ËaÏ3ÜJÏBÐ:Ú@Ö3ËnÒ3ÏhÕ6Ï@ÖHÑ:ÓHÍ)Ë^Ô@ÑBÐHÏ@Ô8ÎHËjÒ:Í�ÕRÏBÎBËaÏ:Ô8ÎtÕmÏaÑ�ÌHÍ)Ð^×8ËJÖ8ËBÛ^Í@ÑÒBËvÝHÖ:Ù)ÜHËBÛtÕ6ÑBÐJÑhÏ�ÑhÖ@ÍHÔ)Û^Ù@Ñ8ÛJÏ3ÐvÒHÏÞÚ�Õ6ËHÛOÕ6ÑBÐJÑ:î@æ%ËìêQå�ÐBË:Ì8ÎtÕ/Ñ@Ò3ËvÑ:×@Ñ:Í)ÜBËvÑÔ8ËHÎJÑ@î@æBË-Ò@ÏrÓ8ËBÐHÏ:Ô8ÎJ÷OÕ'Í8Ëìâr1ËtÕ6ÐHÑ+ÛJÏ�ÕRÑHÖ-Ò3ËrÓ8ËHÐJÏ8Ô8ÎJ÷OÕ/Í)Ëìô

��ÇZ�BÌ8ÎHËrÏ@ñ-Ù8Ð�Ó8ËHÐJÏ:Ô%ÎJÑOÕ=Í)ËFÇa�

ïdÌ�ÌHö8Ð:×8Ë:ÖBË^ÌZ��Ç�Ça�nÚ)ËJÒHÏBÐ�Ó8Ë:Ô3ÎJÏOÕEçs÷�ÕRÍ@Ñ:Ì�Ö:ÍHÔHñ8Ñ@Ìëâ�ú3ÐJÑ�Ý3ËtÕ6ÐBÑjÑ:×�Õ/Ï)çdÍ8ÑHÒHÑÒHÏ-ÝBÑHíHÏOÕYÓ8ËHÐJÏ@Ô)ÎJ÷OÕ=Í8Ë@Ì�ÏBÐ�Ñ:Ú@Ï@Ô8Ñ:Ì-Ù8ÐHÑ�Ö:ÍHÔBñ@Ñ+å+ÑrÌ8Ï8Û^ÙHÍHÔ)ÎHÏèô�����@Ì8ÎHË-Ï@ñ-Ù8Ð�Ó8ËHÐJÏ:Ô%ÎJÑOÕ=Í)Ë-ÒHÏ+Ù8ÐJÑ-Ö@ÍHÔBñ@Ñ

¶m² Ñ]� Åq"ɼt½I¶�#K½pÇq"-ÅIºp¶{#p½q"»½�,p¸ÉµÄ¿·µ� ½$&)(mÅHÇ'º9 ¿�,'Ü­ÅKÂ+" ½I¼O½K¶ò�ÖBÛ^Ù)ÐJÑ:Ì+Ó3Ë^ÔHÌ8ÎOÕRÙHî8øJÏ:ÌDÌ@æBË-Ó8ËHÐ:ÙBÔHÌ-Ô@Ñ�ÕRÏHÑHÖ@Í@íBÑ:î@æ3ËkÒBÏ�ÝHÖ:Ù)ÜBËHÛOÕ/ÑBÐHÑ:Ìëâ�òdÌÝ:Í8Û^Ù�Õ/Ñ:Ì>Ñ-Ì@ÏBÛ:ÙBÍ�Õ£Í@Ö8ÙHÌ8ÎtÕRÑ3ÐkÏ@Ì)ÎJÑ:Ì-Ó)Ë^Ô@Ì8ÎtÕRÙHî)øJÏ:Ì,Ø^Ù8Ï-Ì@ÏOÕ6æ3Ë-ÏBÜ^Ú8ÖBËtÕ/Ñ@ÒBÑ:ÌÔ8Ë^Ì,Ð^ÙHÍ8ÎBËJÌ�ÏBÜHÏ3Ð^Ú@ÖBË^Ì,ÒHÏ:Ì3ÎHÏ+ÎHÏ3ÜHÎHËìâ õ æ8ËkÏBÖHÑ@Ìëô•

�HÔHÌ)ÎtÕ=ÙHî)øHÏ:Ì-Ì8Ï8Ø��@û:ÔBÓHÍ8Ñ:Ì76•

õ ÏHÖBÏ:î@æBË�Ó8Ë^Ô@Ò@Í@ÓHÍ8Ë^Ô8ÑHÖ�6•

O8Ñ:î)ËkÒHÏ�Õ/Ï:Ú@Ï3ÎJÍHî@æBËrÓ)Ë^Ô8ÎOÕ6ËHÖHÑ@Ò3Ëo6•

O8Ñ:î)ËkÒHÏ�Õ/Ï:Ú@Ï3ÎJÍHî@æBËrÓ)Ë^Ô@Ò@ÍHÓBÍ8ËJÔ8ÑHÖp6•

RJÏ:ÔBÌ@ÑBÛJÏ3Ð-Ï-Ï@Ô3ÎtÕ/ÑHÒBÑ+ÒHÏ+ÒHÑBÒBËJÌãâ

:�;=<?>A@CB?DFE�GH<I<JGFK�L=G�;?M�N�O9NF<

Instruções a serem

processadas

Instruções a serem

processadas

Instruções a serem

processadas

Instruções a serem

processadas

PA< N�;=<?>A@CB?DFE�GH< <FG?K�L=Q�;FMRN?O�< <CSRT >9UFVRN?MFOH< GCW>A@XO=>FOFW�GH;C>�TH<YW�O=>�GCWHZF>9N?M=T�<\[]P^VCO�@X>�N_@a`�GbG�;C>-@�O�`FO_<`�G `ROF`�T�< <CS�T @cGFO�dHN?eFOF`RO�< N�;=fgW9G3@cO�< THVFG3@cO�DFE�GR<@XG�<=B?dF>FO_;C`�Ta`FOR`FT9<h`�GY<CO9UC`ROi[

Page 56: Logica Programacao Aplicada V2.2008

56

j G=d�GFD=SFTkM=T�;?`HNFM�NJT�;CO�d

Instruções a serem processadas quando a

condição é falsa.

Instruções a serem processadas quando a condição é verdadeira.

Condição

Instruções a serem processadas quando a

condição é falsa.

Instruções a serem processadas quando a condição é verdadeira.

Condição

P <FGFdRGFDFS=T M?T9;�`9N?MHNCT9;CORd l;?TA@mW�O�d�W9G�;J>�G MFOA@cO�MF>�G�@�NFeJO�`FO VCT-@BCW�OnV=G3@�o_BF;C>�O4dJp�o�N=M?OiqrV?O�@XO�O�K�BCOHdG?s9NR<C>�G�Wt<CT=W�G�;C>HG�`9B�O9<u@XGH<FV?TH<?>FO�<wvxAG3@c`FO�`RG�N_@cT�GuyCO�d�<�Tzq j NgW{G}|?SFT+[~ OF`RO{B�W�O�`=O�<�@cG�<FVJT�<?>FO_<�>FT=W�O{B�WMFO?W3NF;���T `HG V�@XT�MFGH<F<?OJW9G�;C>RT`9NC�HG3@�GR;?>�G�qI��TRdF>FO_;C`�T�O�<?G^�HB�;C>FO-@W�O�NR<��}�A@�GR;C>�G\[�|?Oud�N�;�o9BCOFoHGCW�`HGV3@�TRoA@XOJW�O�D=SFT � ~i� q G�<J>FO ��TA@�WHOMFT�;R<C>�@gB?>�N���O�GR;FM?T_;C>�@�O�V?O�@�MJT?W�T_<MFT?WHO�;?`=T9<��=�R�c�z���_��G��H�\�?�m�R�A�c�?�F�_�-[

O8Ñ:î8Ë-ÒHÏ�ÕRÏ:Ú@ÏBÎ:ÍBî@æBË�Ó1Ë^Ô8ÎtÕ'ËHÖHÑHÒ3Ë

Instruções a serem

processadas.

Inicialização;Condição;Incremento

Instruções a serem

processadas.

Inicialização;Condição;Incremento

ÊHÏ:Ì)ÎJÏ Î:ÍHÚ8Ë ÒBÏ Õ/Ï:Ú8ÏBÎ:ÍBî@æBË ÑÍHÔHÍBÓHÍ@ÑHÖ@Í8íHÑ:î@æ3Ë ÒHÑBÌ ç^ÑOÕ=Í@÷3çHÏ:ÍHÌ ÒHÏÓ8Ë^Ô)ÎtÕ6ËJÖBÏùê�Ë:Ì�Ó�ÕRÍ3ÎJåOÕ=Í)Ë^ÌkÒ@ÏqÚ8Ñ�Õ/ÑHÒHÑQÏÒHÏvÍBÔHÓ�Õ/Ï8ÐHÏ:Ô8ÎHËxÌ@æ3ËwÎHË:ÒBË^ÌhÒBÏ8Ý:ÍHÔHÍ@Ò3Ë^ÌÔ8ËrÍHÔHöHÓBÍ)ËkÒBË�ÖHÑ:î8ËèâÊHÑ Ö:ÍHÔ)Û^Ù8ÑBÛJÏBÐ n)ol Ë Ó8ËHÐJÑHÔ8ÒBË Ø^Ù@ÏÕ/ÏHÑBÖ:Í@íHÑ ÏHÌ8ÎJÑ Õ/Ï@ÚBÏBÎ^ÍHî8æ3Ë å ÑÍHÔHÌ)ÎtÕ=ÙHî8æ3Ë}�C�-��â

O8Ñ:î8Ë-ÒHÏ�ÕRÏ:Ú@ÏBÎ:ÍBî@æBË�Ó1Ë^Ô@Ò:Í@ÓBÍ8Ë^Ô8ÑBÖ

Condição

Instruções a serem processadas.

Repita

Condição

Instruções a serem processadas.

Repita

äBÌ8ÎHÏ ÎJÍBÚ8Ë ÒHÏ ÕRÏ:Ú@Ï3Î^ÍBî8æBË Ì@ÏÓ@ÑOÕ6Ñ:Ó8ÎJÏ�ÕRÍ@íHÑ Ú)ÏHÖHÑ çsÏ�Õ=Í@Ý:ÍHÓ)Ñ:î8æBË Ò3Ë^ÌÓ�Õ=Í)ÎJåOÕ=Í)Ë:Ì ÒHÏ Ú@ÑOÕ/Ñ3ÒHÑ Ô8Ë Ý:ÍBÔBÑHÖ ÒBËÖHÑ:î)Ëìâ ó@Ï@Ì8ÎJÑ ÝBËOÕ6ÐJÑ Ñ Õ6ÏBÚ@ÏBÎ^ÍHî8æBËÑ:Ó8Ë:Ô8ÎJÏ:Ó8Ï+ÑBË+Ð:Ï:Ô8Ë^Ì+Ù)ÐJÑEçsÏBíèâÊHÑ Ö:ÍHÔ)Û^Ù8ÑBÛJÏBÐ n)ol Ë Ó8ËHÐJÑHÔ8ÒBË Ø^Ù@ÏÕ/ÏHÑBÖ:Í@íHÑ Ï:Ì8ÎJÑ Õ6Ï:Ú@Ï3Î^ÍHî8æBË Ì@æBË Ñ:ÌÍHÔHÌ)ÎtÕ=ÙHî)øHÏ:Ì����i ?¡_¢¤£�¥�¦ãâ

RJÏ:ÔHÌ8ÑBÛJÏBÐ�Ï-Ï:Ô)ÎOÕ/ÑHÒHÑDÒHÏ-Ò@ÑBÒBË^Ì

Informe os Dados

Entrada dos dados

Informe os Dados

Entrada dos dados

äBÌ8ÎHÑ ÝBËOÕ6ÐJÑ Ó8Ë:ÔHÌ8ÎOÕ=Ù)Î^Í)çJÑ Ì8Ï Õ/Ï:Ú8ÏBÎJÏÐ^ÙHÍ)ÎJÑ:Ì çJÏ@íHÏ:Ìëê Ù)ÐJÑ çJÏHí Ø^Ù8Ï åÔ@Ï:Ó8Ï:ÌHÌ@÷OÕ6Í8Ë Ï:Ô)ç^Í@ÑOÕ ÑBË Ù@ÌHÙ8÷OÕ=Í)Ë Ò3ËÚ�Õ6ËBÛtÕ/ÑBÐJÑ Ù8ÐJÑ ÐHÏ:ÔHÌBÑBÛHÏBÐ ÍBÔ@Ý3ËtÕ6ÐJÑHÔ@Ò3ËØ^Ù@Ï Ë Ú�ÕmËHÛtÕ/Ñ3ÐHÑ Ï:ÌBÚ@ÏOÕ/Ñ Ø^Ù@Ï ÏHÖHÏÒ:Í8Û:Í8ÎJÏ-Ñ8ÖBÛHË�Ô1Ë�Ó8Ë:ÔHÌ3ËJÖHÏùâ

Page 57: Logica Programacao Aplicada V2.2008

57

¶m² Ú:Û Ü­ºK¼C#p¿·Å'¶ü i 1@Ï@Ì8ËJÖ:ÙBî8æBË Ì@Ï8Ø��@Ï@ÔHÓBÍ@ÑHÖ¢â ä1Ð Ù8ÐHÑ ÒBÏ8ÎJÏOÕ6Ð:ÍBÔ@ÑHÒHÑ ÌBÍ%Î^Ù@Ñ:î@æ3Ëìê Ì8æBËÌ8ËJÖ:ÍBÓHÍ8ÎJÑBÒ8Ë^ÌQÑcÙ8Ð�ÙHÌ@Ù8÷OÕ=Í8Ë�ÒBË:Í@ÌjÔ��8ÐHÏOÕ6Ë:Ìëê�Ë^ÌQØ:Ù@Ñ:ÍHÌQÒHÏ3ç:ÏBÐ�Ì@ÏOÕ�Ì8Ë@ÐJÑBÒBË^ÌÏ Ë çsÑBÖ3ËtÕ Ï:ÔBÓ8Ë^Ô3ÎtÕ6ÑHÒBË ÒBÏ=çsÏ Ì8ÏOÕ ÏBÜ^ÍH×HÍ)ÒBË Ô@Ñ ÎHÏHÖHÑùâ ä8ÖHÑ@×8ËtÕ6Ï ËÝHÖ:Ù8ÜBËHÛtÕ/Ñ3Ð:Ñ-ÒHÏ@Ì)ÎJÏrÚ�ÕpËHÛtÕ/Ñ8ÐHÑèâ

Soma=Valor1+Valor2

Início

Fim

“Informe o primeiro valor”

Valor1

“Informe o segundo valor”

“A soma é:”, Soma

Valor2

Soma=Valor1+Valor2

Início

Fim

“Informe o primeiro valor”

Valor1

“Informe o segundo valor”

“A soma é:”, Soma

Valor2

iÌ1@Ï:Ì8ËHÖ:ÙBî@æBË�Ì@Ï3Ø��BÏ:ÔHÓHÍ)ÑHÖèâ«ú%ÐkÎtÕ6Ñ:×@ÑHÖ:ñ3ÑHÒBËtÕ�ÒBÏ3çsÏ-Ñ:Ú�Õ6Ï@Ì@Ï:Ô8ÎHÑ�Õ£ÑBË�Ú@ÑBÎ�Õ6æBËÙ8Ð Õ/ÏBÖHÑ3ÎHà�Õ=Í8Ë ÒBÏwçdÍ@Ñ3ÛJÏ8Ð Ó)ËBÐ Ñ Ø:Ù@ÑHÔ8Î:Í@ÒHÑBÒHÏ ÒBÏ ØJÙHÍ8Ö��HÐHÏBÎOÕmË^Ì Ú8ËtÕbÏBÖHÏÚ@ÏOÕ=Ó)ËtÕHÕ=Í8Ò8Ë^Ì Ô1Ë Ì@ÏHÙ ÎtÕ/Ñ��BÏBÎHË ÒHÏ ÎtÕ/Ñ:×@Ñ@Ö@ñ8Ëìâ Ê3Ë ÑHÖ3ÛHËtÕRÍ8ÎHÐHË ÒBËÎtÕ/Ñ:×8ÑHÖ:ñ@ÑBÒ8ËtÕ+ÏHÖHÏqÍHÔ@ÝBËOÕ6Ð:Ñ�Ë^ÌkØ^ÙHÍ@Ö��BÐJÏBÎ�Õ6Ë:Ì�Ï�ËcÚ�ÕmË@ÛtÕ/ÑBÐHÑ�ÎtÕ6Ñ@ÔHÌ@ÝBË�Õ6ÐJÑ�ÏBÐÐJÏBÎtÕmË^Ì�Ñ>Ò:ÍHÌ8Î�Y@ÔHÓHÍ@Ñ>Ú@ÏOÕ=Ó3ËOÕHÕ=Í8ÒBÑèâ

inicio

“Este programa transforma km em m!\n”

“Informe a distância em km: ”

f Distancia

f Distancia*=1000.;

“ A distancia em metros eh = “,fDistancia

Fim

inicio

“Este programa transforma km em m!\n”

“Informe a distância em km: ”

f Distancia

f Distancia*=1000.;

“ A distancia em metros eh = “,fDistancia

Fim

Page 58: Logica Programacao Aplicada V2.2008

58

Capítulo 5 - Funções básicas (funções de entrada e saída).

HËHÐHËaçdÍBÌ8ÎHËyÔ8ËbÓ8Ñ@ÚHö8Î^ÙBÖ3Ë��têDÙ8ÐyÑHÖBÛHËOÕ=Í8ÎBÐHËyånÓ8Ë@Ð^Ú8Ë:Ì)ÎHËb×@Ñ@ÌHÍHÓ8ÑBÐJÏ:Ô)ÎHÏnÒHÏçsÑOÕ=Í8÷3çsÏ:ÍBÌùê Ë^Ú8Ï�Õ/ÑHÒBË�Õ6Ï:Ì Ï Ý:ÙHÔBî8øJÏ@Ìëâ ÊBË:Ì Ó@Ñ:ÚBö)Î^Ù@ÖBË:Ì Ú�Õ/Ï:Ó8ÏHÒ@Ï:Ô)ÎJÏ:ÌÏ:Ì8Î^Ù8ÒHÑBÐHË:Ì+Ñ:ÌUçJÑOÕ=Í@÷3çHÏ:ÍHÌ+ÏDË^ÌUË^Ú@ÏOÕ/ÑBÒBË�Õ/Ï:Ìãâ�r)ÑHÖ3ÎJÑBÐ^ð8Ô8Ë^Ì>Ñ@Ì>Ý:ÙHÔBî8øJÏ:ÌëâúBÐ ÑHÖ3ÛHËtÕ=Í8Î8ÐHË Ú�Õ6Ï:ÓBÍHÌ@Ñ ÒHÏ Ù8Ð ÒHÏBÎJÏOÕmÐ^ÍHÔ8ÑHÒ3Ë Ô��8Ð@ÏOÕ6Ë ÒHÏ Ý:ÙHÔHî)øJÏ:ÌÚ�Õ/ÏHÒBÏHÝ:ÍHÔBÍBÒHÑ:Ì�Ú@ÑOÕ/Ñ�Ý:ÙBÔHÓHÍ8Ë:ÔBÑOÕ�Ó8ËtÕHÕ/Ï3ÎHÑBÐJÏ@Ô8ÎJÏjÔ@ÑjÝ3ËtÕ6ÐHÑjÒHÏ�Ù8ÐeÚ�ÕmËHÛ�Õ/Ñ3ÐJÑèâ)ËtÕ�ÏBÜJÏBÐ^Ú)ÖBËìêuÌ@æ8ËQÔBÏ:Ó@Ï:ÌBÌ8÷OÕ=Í@Ñ8ÌrÝ:ÙHÔBî8øJÏ:ÌDØ^Ù@ÏrÚ8Ë:ÌHÌBÍH×HÍ@Ö@Í)ÎJÏBÐkÑ-Ï:Ô8Î�Õ/ÑHÒHÑ+ÒHÏÒHÑHÒBË:Ì ÍBÔ@ÝBËOÕ6ÐJÑBÒBËJÌ Ú8ÏHÖBË ÙBÌHÙB÷OÕRÍ8Ëìê ÝHÙBÔHî8øJÏ:Ì Ø^Ù@Ï Í8Ð:Ú�Õ=Í)ÐJÑ3Ð Ô@Ñ ÎJÏBÖBÑèêÝ:ÙHÔHî)øJÏ:Ì�Ø@Ù@Ï�Ú8Ñ:Ì@Ì@ÏBÐ-Ë^Ì�ÒBÑHÒBË^Ì+Ú@ÑOÕ6ÑkÑrÍ8Ð^Ú�Õ/Ï@ÌHÌ8Ë�Õ/Ñùê«Ý:ÙBÔBî8øJÏ:Ì,ÐJÑBÎHÏBÐJ÷BÎ^Í8Ó@Ñ:ÌÏ+Ð^ÙBÍ8ÎJÑ:ÌEË^Ù8ÎtÕ6Ñ@Ìëâò Ö:ÍHÔ3Û^Ù8ÑBÛJÏ3Ð ä)oä Ú)Ë^ÌHÌHÙ@Í ÍBÔ��8ÐJÏ�Õ6Ë^Ì Õ6Ï:ÓHÙ�Õ=Ì)Ë^Ì Ø^Ù@Ï Ì@Ï ÎtÕ/ÑBÒ:Ù@íHÏ3Ð ÏBÐÝ:ÙHÔHî)øJÏ:Ì Ø^Ù@Ï Ú)ËJÒHÏ3Ð Ì@Ï�Õ ÙBÌ8Ñ@ÒHÑ:Ì ÒBÏ@Ô8ÎtÕmË Ò3Ë Ú�Õ6ËHÛtÕ6Ñ8ÐJÑèâ�HÑBÒHÑ Ý:ÙBÔHî8æBËÏBÜJÏ:ÓBÙ8ÎJÑ�Ù)ÐHÑ-ÎHÑOÕ/ÏHÝ@Ñ-Ï:ÌHÚ8Ï:ÓBö@Ý:Í3Ó@ÑèâWòdÖBÛ^Ù8Ð:Ñ@ÌrÒHÏ@Ì8ÎJÑ@Ì�Ý:ÙHÔHî)øHÏ:Ì-ÌBæBËQÚ�Õ=ÍHÔ8ÎHÝ�ßRáß/Í8Ð^Ú�Õ=Í8Ð^Í�ÕRáèê ÌBÓBÑ:Ô@Ý�ßKá ßRÖHÏdÕ/á Ï ÛJÏBÎ^Ó3ñOßRá ßmÚ@÷OÕ/Ñ Ë Ú�ÕmËBÛOÕ/ÑBÐHÑ Ï ÝBÑHíÖHÏ:Í8Î:Ù�Õ/ÑHáùâ

Ãm² ±=� ,K¾%&$(IÅJÇpºJ¶ ½$Þ·Ç'½�0 #%" µ·¾K¸§ ©¨«ª

ò Ý:ÙHÔ@î@æBË ÒBÏ Ì@Ñ:ö@ÒBÑ Ú�Õ=ÍHÔ)ÎHÝ�ßRá Ó8Ë:ÖBË:Ó@Ñ Ô8Ñ ÎHÏHÖHÑ ÒBË Ó8ËHÐ:ÚHÙ8ÎJÑ@Ò3ËtÕÓ@ÑOÕ/Ñ@Ó8ÎJÏOÕ6ÏHÌëêcÌ8Î�Õ=ÍHÔ8Û^Ì¢êcÔ��8ÐHÏOÕmË^Ì Í@Ô8ÎJÏ:Í�ÕmË^Ìëê�Ô��3ÐJÏOÕmË^Ì Õ/ÏBÑ:ÍHÌxÏwÎHËJÒHÑ:ÌxÑ@ÌË^Ù8ÎtÕ6Ñ:Ì ÍHÔ@Ý3ËtÕmÐJÑ:î)øJÏHÌ Ø^Ù@Ï Ï:Ì)ÎHæBË Û^Ù@ÑOÕ/ÒBÑBÒHÑ:Ì Ô@Ñ Ð:Ï3ÐHàtÕ=Í8Ñ Ñ3ÎtÕ/Ñ3çså@Ì ÒHÑ@ÌçsÑOÕ=Í8÷3çsÏ:ÍBÌùâ�òhÝ@ÙHÔHî@æ3ËbÚ�Õ=ÍHÔ8ÎJÝ�ß'áaÐHË^Ì8ÎOÕ/ÑnÑ:ÌeÍHÔ@Ý8ËOÕ6ÐJÑ:î1øJÏ:ÌnÔ@ÑjÎJÏHÖBÑeÒHÏ_Ù8ÐÐHËJÒBË ×@Ï3Ð ÑOÕ8Õ=Ù8ÐJÑHÒ3Ë ßRÝBË�ÕmÐJÑBÎHÑHÒ3ËJá Ë^Ù Ô@æBË â édÙ@Ò3Ë çsÑ@Í ÒBÏ:Ú@Ï@Ô@ÒHÏOÕ ÒBË^ÌÓ@ÑOÕ/Ñ@Ó8ÎJÏOÕ6ÏHÌ�ÒHÏDÝBËtÕ6ÐJÑ%ÎJÑ:î@æ8ËrÙ8Î:Í8Ö:Í@íHÑHÒ3Ë^Ìùâò�ÝBËOÕ6ÐJÑDÐ:Ñ:ÍHÌ+×8÷:ÌHÍHÓ@ÑDÒHÑ�Ý@ÙHÔHî8æ3ËkåèôÚ�Õ=ÍHÔ)ÎJÝcß_�)Ù8Ð-ÎHÏ3ÜHÎHË-Ø@Ù@ÑHÖBØJÙ8ÏOÕTÓ)ËHÐ�Ó@Ñ�Õ/ÑHÓ8ÎJÏ�Õ/Ï@Ì>ÒHÏ-Ý3Ë�Õ6ÐJÑBÎHÑ@Ó@Ñ3Ë��)á�6

Pr ogr ama Exempl o: pr i nt f – saí da de dados Descr i ção: Est e pr ogr ama demonst r a a saí da de dados com pr i nt f ( ) . #i nc l ude <st di o. h> voi d mai n ( voi d) { pr i nt f ( " Sai da de dados com pr i nf ( ) ; \ n" ) ; pr i nt f ( " Funcao de i mpr essao com sai da f or mat ada! " ) ; pr i nt f ( " Ut i l i za uma st r i ng de cont r ol e na f or ma mai s basi ca. \ n" ) ; } ò Ý:ÙHÔHî8æ8Ë Ú�Õ=ÍHÔ)ÎJÝ�ß'á ÎJÑ3Ð:×@åBÐ Ú8ËJÒBÏ ÎHÏOÕ ËJÙ8ÎOÕ6Ë^Ì ÑOÕ6Û:Ù3ÐJÏ:Ô)ÎHË:Ì Ó8ËHÐBË Ù8ÐJÑâ¾t5liaqp-x f�d ¹5g�p¾t5l=g±ced Ó8Ë:Ô3ÎJÏ:Ô@Ò3Ë Ï:ÌBÚ8Ï:ÓHÍ@Ý@ÍHÓBÑHÒ3ËtÕ/Ï@Ì ÒHÏ Ý8ËtÕ6ÐJÑ3ÎHËìêÏ:ÌHÚ@Ï@ÓHÍ@Ý:ÍBÓBÑHÒBËtÕ6Ï@Ì�ÒHÏ>Ó8ËHÐ^Ú�ÕRÍ8ÐJÏ@Ô)ÎHËkÏ+ÒHÏ-Ú�Õ6Ï:ÓBÍHÌ@æ3Ëìâò�ÝBËOÕ6ÐJÑDÐ:Ñ:ÍHÌ+Ó)ËHÐ^Ú@ÖHÏ%ÎJÑ-Ò@Ñ+Ý:ÙBÔBî@æBË�Ú�Õ=Í@Ô8ÎJÝ�ßRáDÎJÏ3ÐkÑ+Ì@ÏBÛ^ÙBÍBÔ8ÎHÏrÌBÍHÔ8ÎJÑBÜ@ÏèôÚ�Õ=ÍHÔ)ÎJÝcß_F5â¾t5liaqp/x¥f�d ¹�g�p¾t,l�gÔc¿d�FOê¬Ö:ÍHÌ)ÎJÑ�ÒHÏ+Ñ�Õ6Û^Ù)ÐJÏ:Ô)Î@Ë^Ì@áp6

Page 59: Logica Programacao Aplicada V2.2008

59

º¾t5liaqp-xôf�dI¹�g�p�t5l/gÔc¿d ô«å-Ý3ËtÕ6ÐJÑ3ÒBË�Ú8ÏHÖBË�Ó8Ë:Ô/�:Ù@Ô8ÎBËQÒBÏ�Ó@Ñ�Õ6Ñ:Ó8ÎJÏdÕ/Ï:Ì-Ó8ËJÖBË^Ó3ÑHÒBËÏ:Ô8ÎtÕ6ÏhÑ:ÌBÚ@Ñ@Ìt���tâ�äBÌ)ÎJÏÞÓ8Ë^Ô��:ÙBÔ8ÎHËhÒHÏwÓ@Ñ�Õ6Ñ:Ó8ÎJÏOÕmÏ:ÌhÚ8ËJÒ8ÏhÓ8Ë^Ô3ÎHÏOÕjËÞÎJÏ8ÜBÎHËØ^Ù@Ï_Ì@ÏOÕ6÷cÐHË^Ì8Î�Õ6ÑHÒBËyÔ@ÑaÎJÏ3ÖHÑjÐJÑ:ÍHÌcË^ÌaÏHÌHÚ@Ï:ÓBÍ8Ý:ÍHÓ@ÑBÒ3ËtÕ/Ï:ÌeÒHÏaÝ3ËtÕ6ÐJÑBÎBËnØ^Ù@ÏÒHÏHÝ:ÍBÔ@ÏBÐyË_ÐHËHÒ3Ë�Ó8ËHÐHË�Ì@Ï�Õ/æBËeÐHË^Ì)ÎtÕ/ÑHÒBËHÌaË^Ì_ÒHÑHÒBË@ÌëâEïdÌ_Ï:ÌHÚ)Ï:ÓHÍ@Ý:ÍBÓ@ÑHÒ8ËOÕ/Ï:ÌÒHÏ ÝBËtÕmÐHÑBÎHË Ó3ËBÐJÏ:î@Ñ3Ð Ó8ËHÐ Ë ÌHÍHÔ8ÑHÖ Ú@ÏOÕ=Ó8Ï@Ô8Î^ÙBÑHÖ ß���á Ï ÝBËOÕ=Ô@Ï:ÓBÏBÐ Ù8ÐÓ8Ë^Ô8ÎOÕ6ËJÖHÏ+Ó8Ë^ÔHÌBÍ8ÒHÏOÕ/÷3çHÏHÖrÌ3Ë:×�Õ/ÏDÑrÌ@Ñ:ö8ÒHÑ�ÝBËOÕ6ÐHÑBÎJÑBÒHÑ+Ò@Ñ-Ý:ÙBÔBî@æ3Ëìâ�sayâ¾t�� f�d ¸îl�x�w��Od�p¾t�g�â ô Ê3ËBÐJÏ ÒHÑ�ß/Ì3á çsÑOÕ6Í@÷3çsÏBÖ�ß/ÍHÌ@á ØJÙ@Ï ÌBÏOÕ/÷�ßRæ3ËJáÍ8Ð^Ú�Õ6Ï:ÌHÌ@Ñ�ßRÌ@á Ô)Ë-ÐHË:ÔBÍ8ÎHËtÕ�â

5.1.1 Especificadores de formato

óHÑjÐJÏ:Ì8ÐHÑnÝ3ËtÕ6ÐJÑjØ^Ù8ÏeÙ8ÐJÑqçsÑOÕ/Í8÷3çsÏHÖeÍHÔ)ÎJÏ:Í�Õ/ÑeÔ@æ3Ë_Ú8ËJÒHÏjÛ^Ù8Ñ�Õ/ÒHÑOÕ-ËjçsÑBÖBËtÕÒHÏ_Ù8ÐJÑ�çsÑ�Õ=Í@÷3ç^ÏBÖwÕ/ÏHÑHÖaË^ÙnÙ)Ð_ÌBö8Ð^×8ËJÖ3ËbÓ@ÑOÕ/Ñ@Ó)ÎJÏOÕ/Ïùê>ånÚ�ÕRÏ:ÓBÍHÌ)Ë�Í@Ô@ÝBËtÕmÐHÑOÕÚ@ÑOÕ/ÑhÑwÝ:ÙHÔ@î8æBË�Ú�Õ/ÍBÔ8ÎJÝ�ß'á�Ø^Ù@Ï�Î^ÍBÚ8ËxÒHÏhÒHÑBÒBË�ÏBÖHÑbçsÑ:ÍhÍ8Ð:Ú�Õ=Í)Ð^Í�Õ�â õ ÏhÑÝ:ÙHÔHî8æBËÞÔBæBË�ÝBËOÕqÍHÔ@ÝBË�ÕmÐJÑHÒHÑùêDË�Ø^Ù@ÏbÑ:Ú@ÑdÕ/Ï:Ó@Ï�ÕR÷�Ô@Ñ_ÎJÏBÖBÑ�åyÙ8ÐbÐHË^Ô)ÎJÏyÒHÏÒHÑHÒBË:ÌjÌ@Ï3ÐeÔ3Ï:ÔHñHÙ8ÐcÌ8Ï@Ô8Î^Í@Ò8Ëèâ�1ÑOÕ/Ñ�ÍHÌHÌ8ËcÏBÜ@ÍHÌ8ÎJÏBÐ�Ë:Ì�Ï:ÌHÚ8Ï:ÓBÍ@Ý@ÍBÓ@ÑHÒBË�Õ/Ï:ÌQÒHÏÝBËtÕ6ÐHÑBÎHËìâò�ÎJÑ@×@ÏHÖHÑqÕ/Ï:ÌHÙ)ÐBËkÒHÏDÏ:ÌHÚ@ÏHÓBÍ@Ý:ÍBÓ8ÑHÒBËtÕ/Ï@Ì+ÒHÏ+ÝBËOÕ6ÐJÑ3ÎHË-å�ÑrÌ8Ï3Û^ÙBÍHÔ8ÎHÏèô¬R­F®�¯?°R± ²3¯�³?± ´C±Aµ�¶�·R¸F±¹ ` N�;C> :�;C>HG�N3@�Ta`�G=M�NgWHO�dIMJTFW4<FN�;COHd¹ N N�;C> :�;C>HG�N3@�Ta`�G=M�NgWHO�dIMJTFW4<FN�;COHd¹ B N�;C> :�;C>HG�N3@�Ta`�G=M�NgWHO�dk<JG?W4<FN�;COHd¹ � �Hd?T�O=> ��O�d=TA@hM=T?W4<�NF;JO�d�`=OI�RTA@�W�O�ºc»J¼F`F`F`R`i[½`=`�`F`R`F`kM=T?W4V3@XGFMHNF<?S=T

`�G?�RO�BFd?>a`�Ga¾¿`�U?o�N�>�T�<ÀO9VCp_<�O¿�9U_@co�BFdJOz[¹ G �Hd?T�O=> ��O�d=TA@hM=T?W4<�NF;JO�d�`=OI�RTA@�W�O�ºc»J¼F`i[Á`R`F`�`RÂ\ºÁÃRÄ9»F¼?`R`F`¹ o �Hd?T�O=> ��O�d=TA@hM=T?W4<�NF;JO�dk;�OI�RTA@�W�OY¿T9BÆÅYÇFOH<FG?OR`FTÈ;JOÈV�@�GFM�NR<CS�T

`�T¿��O�d?T-@r`=O�`FT¹ M MH�CO�@ É?W�M?O�@�OHM?>�G9@¹�¹ ;JOF`�O ÊÈM=OA@XO�M=>�GA@ ¹ lkNgW_V3@XGH<F<?T¹ < <J>A@JNF;Jo É?W�Oa�9N?d=OI`RGIM=OA@XO�MJ>�G3@gG�<�lYNCW_V3@XG�<R<COé�Ñ@×ëâ�b�i£é�ÑH×@ÏBÖHÑ�Õ/Ï:ÌBÙ8Ð:Í@ÒHÑ�ÒBÏ+Ï:ÌHÚ8Ï:ÓHÍ@Ý@Í@Ó@ÑHÒBË�Õ/Ï:Ì�ÒBÏ+ÝBËtÕ'ÐHÑBÎHËèâ

Pr ogr ama Exempl o: pr i nt f – saí da f or mat ada Descr i ção: est e pr ogr ama ut i l i za especi f i cador es de f or mat o par a f or mat ar os dados de saí da. I mpr i me númer os i nt ei r os, r eai s, sí mbol o, car act er e e st r i ng. #i ncl ude <st di o. h> / * par a o pr i nt f * / #i ncl ude <coni o. h> / * par a o get ch* / voi d mai n ( voi d) { pr i nt f ( " d i mpr i me um numer o deci mal i nt ei r o %d\ n" , 2) ; pr i nt f ( " i t ambem i mpr i me um deci mal i nt ei r o %i \ n" , 11) ; pr i nt f ( " f i mpr i me um val or r eal %f \ n" , 13. 12) ; pr i nt f ( " e i mpr i me um r eal com not acao c i ent i f i ca %e\ n" , 8. 1e+2) ; pr i nt f ( " use doi s s i nai s per cent uai s par a most r ar um si mpl es %%\ n" ) ; pr i nt f ( " c i mpr i me um car act er e %c\ n" , ' #' ) ; pr i nt f ( " s i mpr i me a pal avr a %s\ n" , " model o" ) ; get ch( ) ; }

Page 60: Logica Programacao Aplicada V2.2008

60

5.1.2 Seqüências de Escape

�jÓ8ËHÐ^Ù8ÐnÑ@Ú@ÑOÕ/Ï:Ó8Ï�Õ/ÏBÐnÒHÑBÒBË^ÌaÔBÙ8ÐJÑjÎJÏBÖHÑaÒBË_Ó8ËHÐ:ÚHÙ8ÎJÑBÒ3ËtÕ�Ô@ÑaÝBËtÕ6ÐHÑnÒBÏeÙ8ÐJÑÎJÑ:×@ÏBÖHÑèâj�BÌ8ÎBË å Ó8Ë^ÔBÌ@ÏBÛ^Ù@Í8ÒBË ÑBÎOÕ/Ñ3çså@Ì ÒHÑ:Ì Ì@ÏBØ��8û:ÔHÓHÍBÑ ÒHÏ Ï:ÌHÓ@Ñ@Ú@ÏèâaúBÐJÑÌ@ÏBØ��8û:ÔHÓHÍ8Ñ ÒHÏ Ï:ÌHÓ8Ñ:Ú@Ï å Ù1ÐJÑ Ì@åOÕ=Í@Ï ÒHÏ ÓBÑOÕ6Ñ:Ó8ÎJÏ�Õ6Ï:Ì ÙHÌ@ÑHÒBËJÌ Ú3ÑOÕ/ÑÐJÑ:ÔHÍBÚHÙ@ÖHÑ�ÕTÑ+ÎHÏBÖHÑ-ÏEË-ÎJÏHÓ8ÖHÑHÒ3ËèâË Â?ÌHÍFÎ�ÏJÐ ¯?· Ñ ÂFÒ�ÓFÔ ¸F·�®=±

Õ O Ö=GFG�VÕ Ç ×=G?>�@�THMFG�<=<?TÕ � O=��O9;?D=TI`RGkVJZFo9NF;JOÙØm�FT�@�WH��G�GJ`�ÚÕ ; ;JT?��OYd�N�;=�?O�ØgÛR;C>HG3@�W�O9NF<IÜRN=;FG?�HGFG?`�ÚÕ @ @gG?>�TA@C;CTa`�GaM?O�@F@cTÙØ=@XGF>�B9@�;FÚÀÝ3Û?|gÞAÛR×XßÕ > >RO�Çk�JTA@JNJeFT�;J>FO�dÕ � >RO�Ç��_G3@X>HNFM?OHdÕAà O_<FV?O�<À`9B=VFd?O_<Õâá O_<FV?O�<a<�NXW�V?dRG�<Õ�ã ä G3@XTÕ�Õ Ç=OA@�@�O�N�;X�9G3@c>�N?`FOÕ9å :H;C>�G3@R@�T�o=O�D?SRTé�Ñ:×ëâ¬ü8þ�ð õ ÏBØ��8û:ÔHÓHÍBÑ@Ì�Ï+Ï@ÌHÓ@Ñ@ÚBÏèâ

Pr ogr ama Exempl o: pr i nt f – saí da com seqüênc i as de escape Descr i ção: est e exempl o demonst r a seqüênci as de escape de nova l i nha, t abul ação e aci onament o do al t o- f al ant e do mi cr o. #i ncl ude <st di o. h> #i ncl ude <coni o. h> voi d mai n ( voi d) { pr i nt f ( " A\ nB\ nC" ) ; get ch( ) ; pr i nt f ( " \ nA\ t B\ t C" ) ; get ch( ) ; pr i nt f ( " \ nAB\ b\ bC" ) ; get ch( ) ; pr i nt f ( " \ nBeep\ a" ) ; get ch( ) ; }

Ãm² O� ,'¾+&)(KÅJÇpº�Û ¾I¸-"»½IÇK½�æèç ºIµÁ¸å,%" ½�0 ¶ÆÃƽg¾c 騧ªò�Ý:ÙBÔHî@æBË�ÒHÏ-Ï@Ô)ÎtÕ/ÑHÒHÑ>ÌHÓ@ÑHÔ8Ý�ßRáDÖHû+ÎJÏ3ÜHÎ@Ë-Ë:Ù+Ó@ÑOÕ6Ñ:Ó8ÎHÏ�Õ/Ï:Ì>Ò3Ë+ÎJÏ:Ó8ÖHÑHÒBËìâò�Ì�Ý3ËtÕ6ÐJÑ@ÌDÐJÑ:ÍBÌ+×@÷:ÌHÍ3Ó@Ñ:Ì+ÒBÑ-Ý@ÙBÔHî@æBËrÌ@æ8Ëìô

scanf ( " %s" , uma_st r i ng) ; / * l ê uma pal avr a do t ecl ado* / scanf ( " %d" , &um_i nt ei r o) ; / * l ê um númer o i nt ei r o do t ecl ado* / scanf ( " %f " , &um_r eal _t i po_f l oat ) ; / * l ê um númer o r eal do t ecl ado* / scanf ( " %l f " , &um_r eal _t i po_doubl e) ; / * l ê um númer o r eal do t ecl ado* /

Page 61: Logica Programacao Aplicada V2.2008

61

ò Ý:ÙBÔHî@æBË ÌHÓ@Ñ:Ô8Ý�ßRá ÎHÑBÐ^×@å8Ð ÝHÑHí ÙHÌ8Ë ÒBË^Ì Ï:ÌHÚ@Ï:ÓBÍ8Ý:ÍHÓ8ÑHÒ3ËtÕ/ÏHÌ ÒHÏ ÝBËtÕ6ÐHÑBÎHËÙ8Î^Í@Ö@Í@íHÑHÒ3ËJÌ Ú8ËOÕ Ú�ÕRÍBÔ8ÎJÝ�ß'áèâcò ÌHÍHÔ3ÎJÑBÜJÏ ÒHÏ ÌHÓ@Ñ:Ô8Ý�ßRá Ó8ËHÐ Ñ Ì8ÎtÕRÍHÔ8Û ÒHÏÓ8Ë^Ô8ÎOÕ6ËJÖHÏ>åèôÌHÓ@Ñ:Ô8ÝcßaF,âÀt5liayp/x f�dϹ=g�p¾t5l/g±c¿d�FOêUc�ayâ¾t��Ff�dJ�Dlyx]w��Qd�p¾t�g�âBáp6º¾t5liaqp-xôf�d »�g�p�t5l/gÔc¿d ô«å-Ý3ËtÕ6ÐJÑ3ÒBË�Ú8ÏHÖBË�Ó8Ë:Ô/�:Ù@Ô8ÎBËQÒBÏ�Ó@Ñ�Õ6Ñ:Ó8ÎJÏdÕ/Ï:ÌkÓ)ËJÖBË^Ó3ÑHÒBËÏ:Ô8ÎtÕ6ÏyÑ@ÌHÚ8Ñ:Ì����Oâ �´�{}]N:|�Àaz�À�\�~ P{~�x�»c¼>~�À/}�»]N�½�»�À��/¾�z�»/À��Ç~Q�c¼�¾]N�¾�¼�}�»�N_»/�»���P/»�¼�|/¾�|��Àý�Ma~�������|�¾�P/»/À/¾��n~���»/��P/»�¼�|�É�|/¼�¾>x�~]N_»��nx�»¼É�~iNI½�¾/}�~Vx�»�É�|�À�|{x�~��¾�À/}�»�N:|{~iNI½/»�À/}�»þýEïdÌyÏ:ÌHÚ8ÏHÓHÍ@Ý:ÍBÓ)ÑHÒBËtÕ/Ï@ÌbÒHÏbÝBËtÕpÐJÑBÎHËÞÓ3ËHÐHÏ:î@Ñ3Ð�Ó8ËHÐ�ËÞÌHÍHÔ8ÑHÖÚ@ÏOÕ=Ó8Ï:Ô8Î^Ù8Ñ@Öcß��dáùâ�sayâ¾t�� f�dH¸îl�x]w���d�p¾t�g�â ôUÊBË3ÐJÏjÒ@Ñ�ß/Ì@á�çsÑdÕ=Í@÷3çsÏBÖ�ß/ÍHÌ@áqØ^Ù8ÏeÌ)ÏOÕ/÷�ß'æ3ËJájÖ:Í@Ò@Ñ�ß/Ì@áÚ@ÏHÖBË+ÎJÏ:Ó8Ö@ÑHÒBËìâ

�Linguagem 'C' ÊHÑhÖ:ÍHÌ)ÎJÑ�ÒHÏhÑ�Õ6Û:Ù8ÐJÏ@Ô8ÎHËJÌ�Ò@Ï3çJÏwÌ@Ï�ÕeÚ@Ñ:ÌBÌ8ÑHÒBËhËhÏ@Ô@ÒHÏOÕ6Ï@î8ËvÒ3ËvÑOÕmÛ^Ù8ÐJÏBÔ8ÎHËØ^Ù@ÏrÌ@ÏOÕ/÷+Ö:Í@ÒBËëâuÊBËkÓ@Ñ:Ì8ËkÒBÏFâ�t5liayp/x]âëê Ø:Ù@Ñ:Ô@Ò8Ë�Ù8ÐJÑ�Ì8ÎtÕ=ÍBÔ)ÛQÒ3Ï�Ó@ÑOÕ6Ñ:Ó8Î:Ï�Õ/Ï:ÌåÞÚ@Ñ:ÌHÌ8ÑHÒBÑÞÚ@Ñ�Õ6ÑÞÙ8ÐJÑbÝ@ÙHÔHî@æBËëêrÔ@Ñ Õ/ÏHÑBÖ@Í@ÒHÑHÒBÏ�åÞÚ@Ñ:ÌBÌ8ÑHÒBË�ËbÏ:ÔBÒHÏOÕ/Ï:î)Ë�ÒBËÚ�Õ=Í8ÐHÏ:Í�Õ6Ë Ó@Ñ�Õ/Ñ:Ó3ÎJÏ�Õ/Ï ÒHÑ Ì)ÎtÕRÍHÔ8Ûèâ ½��Hê�c�a�¹�a5t�����d�p�t;d\ë g p�g5��d f�d w5�Q�µ��Dliaqå¾µ;d±cÏâit5liayp-x ì³w��{ê�g�pÀt;d¾a;l=gîí�ò�ÌBÌHÍ8ÐèêqÏ@ÌHÚ@Ï:ÓBÍ8Ý:ÍHÓ@Ñ�ÕaËhË^Ú@Ï�Õ/ÑHÒBËOÕnÒBÏÏ:Ô@ÒHÏ�Õ/Ï:î8ËjÔ@Ñ�ÝOÕ/Ï:Ô1ÎJÏ�ÒBÏcÙ)ÐHÑ�Ì3ÎtÕ=ÍHÔ)ÛjåbÕ/ÏHÒBÙHÔ@ÒHÑ@Ô)ÎJÏèâYóHÏ:Ì8Î:Ï�Ð3ËJÒBËìêYØJÙ@Ñ@Ô@ÒBËÑkÝ:ÙBÔHî@æ3Ë�ÌHÓ@Ñ@ÔBÝ�ßRá-Ý3ËtÕEÙBÌ8ÑHÒHÑ�Ú@ÑOÕ/Ñ-Ñ-ÖHÏ@Í8Î^Ù�Õ/Ñ-ÒHÏ�Ù8ÐJÑrÌ)ÎtÕ=ÍHÔ1ÛkË-Ë^Ú@Ï�Õ/Ñ@ÒBËtÕÒHÏ-Ï@Ô@ÒHÏOÕ6ÏHî8Ëeß¿Æsá-ÒHÏ3çHÏrÌ@Ï�ÕXËHÐ:Í)Î^Í@ÒBËìâò�ÎJÑ@×@ÏHÖHÑ>Ñ:×@Ñ:Í)ÜBËaÕ/Ï:Ì3Ù8ÐJÏ>Ë:Ì�Ï@ÌBÚ@Ï:ÓHÍ@Ý@ÍHÓBÑHÒBËOÕ/Ï@Ì�ÒBÏ-Ý3Ë�Õ6ÐJÑBÎBË-ÒBÏrÌBÓ@Ñ:Ô@Ý�ßmáèâ¬�­=®�¯?°R± ²3¯�³?± ´C±Aµ�¶R·�¸F±¹ ` NR;C> Ê_Ç?>�l�WbB�WI��OHd?T�@ÆNF;C>HG�N3@mTI`HGFM�NgWHO�d¹ N NR;C> Ê_Ç?>�l�WbB�WI��OHd?T�@ÆNF;C>HG�N3@mTI`HGFM�NgWHO�d�Ø�`�GFMHNgW�ORdiqïT�MF>FOHdI<=G�T�HO�dFT�@r`_NCo9NC>ROF`�Ta�FTA@ÆV3@cG�MFG=`�N?`FTa`�G ã T_BI�JG?s�OR`�G�M�N�W�O�dY<FGV9@XG�M=GF`�NJ`FTI`HG ã s9Ú¹ B NR;C> Ê_Ç?>�l�WbB�WbNF;J>�G�N�@XT�`HGFM�NXW�O�dY<FGCW4<FNR;CO�d¹ M MH�CO�@ Ê_Ç?>�l�WbB�WÈM?O-@�O�MJ>�G3@¹ � �Hd?T�O=> Ê_Ç?>�l�WbB�WI��OHd?T�@�GCW4VCT9;�>�Ta��d�BC>_BCO�;J>�Gi[¹ dJ� `RT�BFÇ=d�G Ê_Ç?>�l�WbB�WI��OHd?T�@ð`�G¿`�B�VJdFT�VCT9;C>RT��Hd�B?>�BJO�;?>RGi[¹ < <J>A@JN=;?o Ê_Ç?>�l�WbB�W�OÈ<J>A@JN=;?o�`HGIMJO�@�OHM?>�G3@gG�<hW�O9<ÀOkGR;?>A@cOF`�Oa`�G`ROF`�TH<�laG�;?MRG3@�@mO�`FOaK�B?OH;?`FT�BCW�M?OA@cO�MF>�G�@XG¿`�GaG�<�VCOHD?TYGCWÇ�@�O9;JMFTYlIG�;=M?T9;�>�@�OF`RTi[äBÌHÚ8Ï:ÓHÍ@Ý:Í8Ó@ÑHÒBËtÕmÏ:Ì�ÒHÏ>ÝBËtÕmÐJÑ3ÎHË-ÒBÏrÌHÓBÑ:Ô@Ý�ßRáùâòbÝ@ÙHÔHî@æBËcÌHÓ3Ñ:Ô@Ý�ßRá�Ï@Ô)ÎJÏ:Ô@Ò@Ï�Ï:Ì3Ú@Ñ:î8Ë^ÌqÏBÐa×�ÕmÑ:ÔHÓ8ËcÔHÙ)Ð:ÑjÏ:Ô)ÎtÕ6ÑHÒBÑ�ÝBË�Õ6ÐJÑBÎHÑBÒHÑÓ8ËHÐHËrÌ@Ï:Ú8Ñ�Õ/ÑHÒBËOÕ6Ï:Ì�ÒHÏ>Ó@ÑBÐJÚ)Ë^Ì+Ô8Ñ+ÐJÏ:Ì)ÐJÑ�Ö:ÍBÔHñ8Ñèâ

Pr ogr ama Exempl o: scanf – ent r ada f or mat ada si mpl es Descr i ção: est e pr ogr ama most r a a ut i l i zação da f unção scanf . Obser ve os car act er es ' &' ant es das var i ávei s i nt ei r as. #i ncl ude <st di o. h> / * par a o pr i nt f e scanf * / #i ncl ude <coni o. h> / * par a o get ch* / voi d mai n ( voi d) { i nt i Val or , i Val 1, i Val 2; pr i nt f ( " di gi t e val or i nt ei r o: " ) ; scanf ( " %d" , &i Val or ) ; pr i nt f ( " di gi t e doi s val or es ( separ ados por espacos) : " ) ;

Page 62: Logica Programacao Aplicada V2.2008

62

scanf ( " %d %d" , &i Val 1, &i Val 2) ; pr i nt f ( " %d + %d = %d\ n" , i Val 1, i Val 2, i Val 1+i Val 2) ; get ch( ) ; } Pr ogr ama Exempl o: pr i nt f – scanf Descr i ção: est e pr ogr ama most r a a ut i l i zação das f unções pr i nt f e scanf . Obser ve que scanf pr i mei r o per mi t e a ent r ada de uma st r i ng com no máxi mo 127 car act er es de compr i ment o. A posi ção 128 deve ser r eser vada par a um nul o. A st r i ng não pr eci sa do car act er ' &' . Quando o val or i nt ei r o i I dade é r ecebi do, o car act er ' &' é obr i gat ór i o. #i ncl ude <coni o. h> / * par a o get ch* / #i ncl ude <st di o. h> / * par a o pr i nt f * / voi d mai n ( voi d) { i nt i I dade; char szNome[ 128] ; pr i nt f ( " Qual seu Nome: " ) ; scanf ( " %s" , szNome) ; / * nome é o ender eço da st r i ng " nome" * / pr i nt f ( " Qual a sua I dade: " ) ; scanf ( " %d" , &i I dade) ; pr i nt f ( " Seu nome eh %s e sua i dade eh %d\ n" , szNome, i I dade) ; pr i nt f ( " For mat ando o dr i ve C: " ) ; get ch( ) ; }

5.2.1 Usando scanf com str ings

ò Ý:ÙBÔHî@æBË ÌHÓ@Ñ:Ô8Ý Ù8Î:Í8Ö:Í@íHÑ Ë Ú�Õ/Í8ÐJÏ:Í�ÕmË Ó@ÑdÕ/Ñ:Ó8ÎJÏdÕ/Ï ÏBÐ ×�Õ/Ñ@Ô@Ó8Ë ÒHÍ8Û^Í8ÎHÑHÒBËÓ8ËHÐHË Ú8Ë^Ô)ÎHË Ý:ÍHÔ@ÑBÖùâVBËHÐ ÍBÌHÌ3Ëìê�ÑBË Ò:Í8Û:Í8ÎJÑOÕ6ÐBËJÌ Ì8ÎtÕ=ÍHÔ)Û^Ì Ó)ËHÐ Ï:ÌHÚ@Ñ@î8Ë^ÌÏ:Ô8ÎtÕ6ÏnÑ8ÌnÚ8ÑBÖHÑ3çãÕ6ÑHÌcÚ8ËJÒ@Ï3ÐHË^Ì�Ï@ÔHÓ8Ë:Ô8ÎtÕ/ÑOÕrÌHÙ�Õ/Ú�Õ/Ï@Ì@Ñ:ÌãêDÓ8ËBÐBËyÏ%ÜHÏBÐ^Ú@ÖHÍ@Ý:ÍHÓ8ÑBÒBËÚ@ÏHÖBËrÚ�Õ6ËBÛ�Õ/ÑBÐJÑDÑrÌ@Ï3Û:ÙHÍ�Õ�â

Pr ogr ama exempl o: st r i ngs com espaços e scanf Descr i ção: Est e pr ogr ama r ecebe uma st r i ng at r avés de scanf e i mpr i me a mesma com put s. A st r i ng pode t er 127 car act er es, desde que não possua espaços. . . #i nc l ude <st di o. h> #i ncl ude <coni o. h> voi d mai n ( voi d) { char szSt r i ng[ 128] ; pr i nt f ( " Di gi t e uma st r i ng e t ecl e ent er : " ) ; scanf ( " %s" , szSt r i ng) ; pr i nt f ( szSt r i ng) ; get ch( ) ; }

Page 63: Logica Programacao Aplicada V2.2008

63

R^ÙHÍ8ÎBË^ÌkÚ�ÕmËHÛtÕ/Ñ8ÐHÑ:ÌkÙ)Î:Í@Ö:Í@íBÑBÐkÑ�Õ6ËHÎ^Í@Ô@Ñ�Û@ÏBÎ^ÌkÚ8Ñ�Õ/Ñ-Ï:Ô)ÎtÕ/ÑBÒHÑ-Ò@ÏrÌ8ÎtÕRÍHÔ8Û:Ìëâ�òÕ6ËHÎ^ÍBÔ@Ñ ÌHÓ@Ñ:Ô8Ý å Ù3Î^Í@Ö:Í8íBÑHÒHÑ Ú@ÑOÕ6Ñ Ñ Ï:Ô8Î�Õ/ÑBÒHÑ ÒHÏ Í@Ô8ÎHÏ:Í�ÕmË:Ìãê ÝHÖBËHÑBÎ:ÌëêÓ@ÑOÕ/Ñ@Ó8ÎJÏOÕ6ÏHÌ Ï Ì)ÎtÕ=ÍBÔ8Û:Ìëâ�8Ñ�Õ/Ñ Ñ:Ù)Ü^Í@Ö:Í8Ñ�Õ�Ñ Ï@Ô8ÎOÕ/ÑHÒBÑ ÒHÏ Ì)ÎOÕ=ÍHÔ)Û^Ì Ó3ËBÐ ÑÝ:ÙHÔHî8æBË ÌHÓ8Ñ:Ô8Ýèê Ñ Ö:ÍHÔ)Û^Ù@Ñ8ÛHÏBÐ n)pl ÝBËtÕRÔ@Ï:Ó@Ï Ë^Ì Ï@ÌHÚ@Ï@ÓHÍ8Ý:Í@Ó@ÑHÒ3ËtÕ/Ï:Ì ÒHÏÝBËtÕ6ÐHÑBÎHËØ�<2%3�ÏJ� 2���3ëâï Ï:ÌHÚ@Ï:ÓBÍBÝ:ÍHÓ8ÑHÒBËOÕ ÒHÏ Ý8ËOÕ6ÐJÑ3ÎHË �?2%3 ÝHÑBí Ó8ËBÐ ØJÙ@Ï ÌHÓ@Ñ8Ô@Ý Ó8ËJÖBË@Ø:Ù@ÏÓ@ÑOÕ/Ñ@Ó8ÎJÏOÕ6ÏHÌ�ÒBÏ@Ô8ÎtÕ6Ë�ÒHÏ�Ù8ÐJÑqÌ8ÎOÕ/ÍHÔ8ÛjÑ3ÎJå�Ø^Ù8Ï�ÏHÖBÑ�Ï:Ô3Ó8Ë^Ô8ÎtÕ'ÏcÙ1ÐeÓ@Ñ�Õ/ÑHÓ8ÎHÏOÕ/ÏØ^Ù@Ï�Ô@æBË-Ý@ÑHírÚ8Ñ�Õ6ÎJÏ-Ò%Ë�Ó8ËJÔ{�:ÙHÔ)ÎBËkÏ:ÌHÚ8Ï:Ó@Í@Ý:ÍBÓ@ÑBÒBË-ÒHÏ:Ô)Î�Õ6ËkÒ3Ë:Ì+Ó8ËJÖ@ÓHñ@ÏBÎJÏBÌëâï Ú�Õ6ËHÛOÕRÑBÐJÑ Ñ Ì8ÏBÛJÙHÍ�Õ Í@Ö:ÙBÌ)Î�Õ/Ñ Ñ Ù8Î:Í@Ö:ÍBíHÑ@î@æBË ÒBË Ï:ÌBÚ@Ï:ÓBÍ8Ý@ÍHÓ@ÑHÒ8ËtÕ ÒHÏÝBËtÕ6ÐHÑBÎH˱�ñ2%3ëâ ï�Ú�Õ6Ë@ÛtÕ/ÑBÐHÑrÚ@ÏOÕpÐ^Í8ÎJÏ-ÑkÏ:Ô)ÎOÕ/ÑHÒ@ÑrÒ@ÏrÓ@ÑOÕ/Ñ@Ó)ÎJÏOÕ/Ï8Ì�ÐJÑ:Í��HÌHÓHÙ3ÖBË^ÌÏ-ÒBË-Ï:ÌHÚ8ÑHî8ËkÏ3Ðr×�Õ/Ñ:Ô3Ó8Ëìâ

Pr ogr ama exempl o: scanf com del i mi t ador es %[ ]

Descr i ção: est e pr ogr ama r ecebe uma st r i ng at r avés de scanf e i mpr i me a mesma com put s. A st r i ng pode t er 127 car act er es, desde que os car act er es est ej am dent r o do conj unt o del i mi t ado pel os [ ] ( car act er es mai úscul os e o ‘ ‘ ( br anco) ) . #i ncl ude <st di o. h> #i ncl ude <coni o. h> voi d mai n ( voi d) { char szSt r i ng[ 128] ; pr i nt f ( " Di gi t e uma st r i ng e t ecl e ent er : " ) ; scanf ( " %[ ABCDEFGHI JKLMNOPQRSTUVWXYZ] " , szSt r i ng) ; put s( szSt r i ng) ; get ch( ) ; }

ï Ï:ÌHÚ8Ï:ÓHÍ@Ý:Í3Ó@ÑHÒBËtÕaÒHÏvÝBË�Õ6ÐJÑBÎHË�� 2���3wÝBÑHívÓ8Ë@Ð�ÌHÓ@Ñ:Ô3Ý�ßRáwÖHÏ@ÍBÑvÓ@ÑOÕ6Ñ:Ó8ÎJÏ�Õ6Ï:ÌÔHÙ8ÐJÑrÌ8ÎtÕRÍBÔ8ÛQÑ)ÎJå�Ø^Ù3Ï-Ë�ÙHÌBÙ@÷OÕ'Í8Ë�ÍBÔ8ÎtÕ6ËHÒHÙ@íHÑrÙ)ÐQÒBË@ÌkÓ@ÑOÕ6Ñ@Ó8ÎJÏ�ÕRÏ:Ì-Ò8Ë��HÙBÔ8ÎHËÏ:ÌHÚ@Ï@ÓHÍ@Ý:ÍBÓBÑHÒBË-Ï@Ô8ÎtÕ/Ï>Ó8ËJÖ:Ó@ñ8ÏBÎJÏ@Ìãâ

Pr ogr ama exempl o: scanf com del i mi t ador es

Descr i ção: est e pr ogr ama r ecebe uma st r i ng at r avés de scanf e i mpr i me a mesma com put s. A st r i ng pode t er 127 car act er es. A ent r ada da st r i ng ser á i nt er r ompi da quando o usuár i o di gi t ar uma t abul ação ou ENTER. #i ncl ude <st di o. h> #i ncl ude <coni o. h> voi d mai n ( voi d) { char szSt r i ng[ 128] ; pr i nt f ( " Di gi t e uma st r i ng e t ecl e ent er : " ) ; scanf ( " %[ ^ \ t \ n] " , szSt r i ng) ; put s( szSt r i ng) ; get ch( ) ; }

Page 64: Logica Programacao Aplicada V2.2008

64

Ãm² �O� ,m¾q&)ÅpºK¶�#K½$"»½sºg¾p¸å"»½IÇm½HºJ¶Æ½'Þ·ÇK½HÇpºJ¶¹¸-"»µ·¾'Âp¶)0 Âpºg¸É¶Bº�#+,p¸»¶òjÝ:ÙBÔHî@æBË+ÛJÏBÎ^Ì�ßRá�Ë^×%ÎJåBÐ�Ù8ÐHÑ�Ì1ÎtÕ=ÍHÔ8ÛkÒHÏ�Ó@ÑOÕ/ÑHÓ)ÎJÏOÕ/Ï@Ì�ÒBË�ÙBÌHÙ@÷�Õ/Í8Ë�ÑrÚ@Ñ�ÕmÎ^Í�ÕÒBË ÎJÏ@Ó@ÖHÑHÒ)Ë Ï Ú)øJÏ Ù)Ð Ó@ÑOÕ/Ñ@Ó3ÎJÏOÕ/Ï ÔHÙ@ÖBË ÑBË Ý@Í8Ð Ò@Ñ Ì8ÎtÕRÍHÔ)Ûìâkò Ý:ÙHÔ@î@æ3ËÕ/Ï:ÓHÙBÚ@ÏOÕ/ÑDÎHËJÒBËJÌ>Ë^Ì-Ó@Ñ�Õ/Ñ:Ó)ÎJÏ�Õ/Ï@Ì>Ø^Ù@Ï-Ñ:Ú@Ñ�Õ/Ï:Ó@ÏBÐrÔ@Ñ+ÎJÏBÖHÑ-ÑBÎJå+ÖBË^Ó@ÑHÖHÍ@íHÑ�Õ£Ù8Ðä8Ê%éOä>1ëâWò�ÌBÌHÍ8Ðìê¡ËQÙHÌ8Ù@÷OÕ=Í8ËrÚ8ËJÒ3ÏkÏHÒ:Í)ÎJÑOÕTÑrÏ:Ô3ÎOÕ/ÑHÒHÑ+ÒHÏkÒBÑBÒBË^Ì+Ó8ËHÐkÏ:ÌHÚBÑ@î8Ë^ÌÏèê ÎJÑ8Ð^×8åBÐìê Ó8ËHÐ TRò��] õ 6ò�däãâ õ Ï Ë ÙHÌHÙ8÷OÕRÍ8Ë Ù3ÖBÎtÕ/Ñ:Ú8Ñ@ÌHÌ@Ñ�Õ Ë Ï:Ì@Ú8Ñ:î8ËÕ/Ï:Ì@Ï�ÕmçsÑHÒ3ËxÚ@ÑOÕ/ÑvÑwÌ8ÎtÕ=ÍBÔ)ÛìêQÛHÏ3Î^ÌOßRáxÌ)Ë^×�Õ6Ï:Ú)øJÏhË^ÌyçsÑHÖ3ËtÕ6Ï:ÌhÔ@ÑÞÐ:ÏBÐHàtÕ=Í8Ñùâ�HÌ8ÎHËwÚ)ËJÒBÏ�ÝHÑ@íBÏOÕ�ËwÚ�ÕmËHÛtÕ/ÑBÐ@ÑbÝHÑHÖ:ñ@Ñ�Õ�êrÚ8ËtÕcÍ8ÌHÌ8ËhÑ�Ì8ÎOÕ=ÍHÔ)Û�Ò@Ï�Ï:Ô8ÎtÕ6ÑBÒHÑÒHÏ3çsÏ Ì@Ï�ÕbÛ�Õ6Ñ:Ô@ÒBÏxË ÌHÙ3Ý:ÍHÓHÍ8Ï@Ô)ÎJÏèâjr3ÙHÔ@î)øJÏ:Ì Ó)ËHÐ ÛJÏ8Î^ÌOß'áxÎJÏ@Ì)ÎJÑBÐ Ë nòñHþolÚ@ÑOÕ/Ñ+Ï:ÔHÓ)ËJÔ8ÎtÕ/Ñ�ÕXËkÝ:Í3Ô@ÑHÖ�ÒBÑrÌ)ÎOÕ=ÍHÔ8Ûìâò Ý:ÙHÔHî8æBËwÚHÙ8Î:ÌOßRá�ÏBÜ:ÍH×@ÏÞÙ8Ð:ÑÞÌ8ÎtÕ=ÍBÔ8ÛvÒBÏwÓ8ÑOÕ/Ñ:Ó)ÎHÏOÕ/Ï:Ìãâ�ä8ÖHÑÞÔ@æ8ËvÚ@ÏOÕ6ÐHÍ8ÎJÏÐ^ÍHÌ8Î:Ù�Õ/ÑOÕÞÓ@Ñ�Õ/Ñ:Ó3ÎJÏ�Õ/Ï@Ì Ó8ËHÐ Ë^Ù)ÎtÕmË^Ì Î:ÍHÚ8Ë^Ì ÒHÏ ÒBÑHÒ3Ë^ÌëâQò Ý@Ù@ÔHî@æBË ÎJÑBÐ:×@åBÐÏBÜ^ÍH×8Ï Ù8Ð Ó8ÑOÕ6Ñ:Ó8Î:ÏOÕ6ÏxÒHÏhÐ^Ù@ÒHÑ8ÔHî@Ñ�ÒHÏwÖ:ÍHÔHñ8Ñ Ô)Ë ÝHÍHÔ@ÑHÖwÒBÏ Ó@ÑHÒBÑ�Ì8ÎtÕ/ÍHÔ)ÛØ^Ù@Ñ:Ô8ÒBËkÏ@Ô@Ó8Ë^Ô8ÎOÕ6Ñ+Ë�Ó)ÑOÕ/Ñ:Ó3ÎHÏOÕ/Ï>ÔHÙ@ÖBË-ÒHÑ>ÐJÏ@Ì8ÐHÑèâ

Pr ogr ama Exempl o: put s & get s Descr i ção: o pr ogr ama a segui r pede par a que o usuár i o di gi t e uma st r i ng e usa a f unção get s( ) par a r ecuper á- l a. O pr ogr ama usa a f unção put s par a most r ar a st r i ng na t el a. Você pode usar a t ec l a Backspace e espaços em br anco par a edi t ar sua ent r ada. #i ncl ude <coni o. h> / * par a o get ch * / #i ncl ude <st di o. h> / * par a o put s e get s * / voi d mai n ( voi d) { char szSt r [ 128] ; put s( " di gi t e uma st r i ng e pr essi one ENTER " ) ; get s( szSt r ) ; put s( szSt r ) ; get ch( ) ; }

Ãm² ¶�� ,'¾+&)('ÅBÇmº�Û�¾I¸å"»½IÇ'½�0³ÂIºg¸»ÃmóX¨«ªòjÝ:ÍBÔ@ÑHÖ:Í8ÒBÑHÒHÏ-Ò@ÑrÝ:Ù@ÔHî8æBË-ÛJÏBÎ:Ó3ñOßRáHåjÕ/Ï:ÓBÏ@×@ÏOÕEÙ1Ð�Ó@Ñ�Õ/Ñ@Ó8ÎJÏ�Õ/Ï-Ò@Ï-Ï:Ô8ÎOÕ/ÑHÒBÑ-ÒBËÎJÏ:Ó@ÖBÑHÒBË Ï Õ/ÏBÎHËtÕ'Ô@÷^ð8Ö8Ë ÑBË Ú�Õ'ËHÛtÕ/Ñ3ÐJÑèânò Ý:ÙHÔHî8æ3Ë Ô8æBË ÏBÜ^ÍB×@Ï Ñ ÖHÏ3ÎtÕ/ÑÑ:ÌHÌ8Ë:ÓHÍ@ÑHÒBÑ�ÑBËDçJÑHÖBËtÕXÒHÏ-ÏHÔ)ÎtÕ/ÑBÒBÑrÔ@ÑDÎJÏ@ÖHÑèâÝBËtÕ6ÐHÑ+ÐJÑ@Í@Ì-×@÷@ÌBÍHÓ@Ñèô ÛJÏBÎ^Ó@ñ�ßRáp6

Pr ogr ama Exempl o: get ch Descr i ção: o pr ogr ama pede que o usuár i o di gi t e um l et r a. O t ecl ado é ver i f i cado com get ch( ) e em segui da a l et r a é i mpr essa com pr i nt f . O segundo get ch( ) apenas segur a o pr ogr ama par a a v i sual i zação da t el a. #i ncl ude <coni o. h> / * par a o get ch * / #i ncl ude <st di o. h> / * par a o pr i nt f * / voi d mai n ( voi d)

Page 65: Logica Programacao Aplicada V2.2008

65

{ char cLet r a; pr i nt f ( " di gi t e uma l et r a: " ) ; cLet r a = get ch( ) ; pr i nt f ( " \ nVoce di gi t ou a l et r a %c\ n" , cLet r a) ; get ch( ) ; }

Ãm² ¶�ÛÝܹº'" Ã)Þ·ÃIµÄÅI¶)0üëâ

r)Ñ:î@Ñ Ù8Ð ÝBÖ:Ù8Ü@ËHÛOÕ/ÑBÐHÑ Ë^Ô@ÒBÏ Ì8Ï Ú8ÏHÒHÏ ÚBÑOÕ/ÑxË ÙBÌHÙ8÷OÕ=Í8Ë Ò:Í8Û:Í8Î:ÑOÕÞÒ8Ë:ÍHÌÔ��8ÐJÏ�Õ6Ë^ÌyÍHÔ)ÎHÏ:Í�Õ6Ë^Ì_Ï_ÒBÏ@Ú8Ë^ÍHÌnÓ8ÑHÖ:ÓHÙ@ÖBÏyÏyÍ8Ð^Ú�Õ=Í3Ð^Í@Ñ_ÑeÐJå@Ò@Í@ÑeÒBË^Ì_ÒBË:ÍHÌçsÑHÖBËOÕ/Ï:Ìëâ¬äBÌHÓ�Õ6Ï%çsÑ+Ë-Ú�Õ6ËHÛOÕ6ÑBÐJÑDÏBÐkÖ:Í@Ô8Û:Ù@ÑBÛHÏBÐ��_��tâ

Expr essões Médi a: M = ( A+B) / 2 Var i ávei s Os númer os: i A, i B A médi a: f C Rest r i ções Os doi s númer os são val or es i nt ei r os Descr i ção o pr ogr ama cal cul a a médi a de doi s númer os

início

Digite o primeiro número

iA

Digite o segundo número

iB

A média é fC

fC=(iA+iB)/2.0

fim

Page 66: Logica Programacao Aplicada V2.2008

66

#i nc l ude <st di o. h> #i ncl ude <coni o. h> voi d mai n ( voi d) { i nt i A, i B; f l oat f C; pr i nt f ( " Di gi t e o pr i mei r o numer o: " ) ; scanf ( " %d" , &i A) ; pr i nt f ( " Di gi t e o segundo numer o: " ) ; scanf ( " %d" , &i B) ; f C = ( f l oat ) ( i A + i B) / 2. ; pr i nt f ( " A medi a eh: %f " , f C) ; get ch( ) ; } â

r)Ñ:î@Ñ_Ù8Ð_Ý@Ö:Ù8ÜHËBÛtÕ6ÑBÐJÑaØ^Ù8ÏeÖHÏ:ÍBÑeÒBË:ÍHÌnÔ��8ÐJÏ�Õ6Ë^ÌeÏnÍ8Ð^Ú�Õ6Í8ÐJÑcËJÌaÒBË:ÍHÌnÔ@ÑËtÕ/ÒHÏ3Ð Ó8ËHÔ8ÎtÕ/÷OÕRÍ8Ñ ÒHÑ Ö8Ï:Í8Î^Ù�Õ6ÑùâväBÌHÓ�Õ/Ï%çJÑ Ë Ú�ÕKËHÛtÕ/ÑBÐHÑ Ï3Ð Ö:Í@Ô8Û^Ù@Ñ3ÛJÏ3Ð�_��tâ

Var i ávei s Os doi s númer os: i A, i B Medi a: f Medi a Rest r i ções: Os doi s númer os são val or es i nt ei r os Descr i ção: Est e pr ogr ama pede que usuár i o di gi t e doi s númer os e depoi s os i mpr i me na or dem cont r ár i a à l ei t ur a.

Início

Primeiro número?:

iA

Segundo número?:

iB

iB

iA

FIm

Page 67: Logica Programacao Aplicada V2.2008

67

#i ncl ude <st di o. h> #i ncl ude <coni o. h> voi d mai n ( voi d) { i nt i A, i B; pr i nt f ( " Di gi t e o pr i mei r o numer o: " ) ; scanf ( " %d" , &i A) ; pr i nt f ( " Di gi t e o segundo numer o: " ) ; scanf ( " %d" , &i B) ; pr i nt f ( " Segundo: %d\ n" , i B) ; pr i nt f ( " Pr i mei r o: %d\ n" , i A) ; get ch( ) ; } �tâ

r)Ñ:î@Ñ Ù8Ð ÝHÖ:Ù)ÜHËHÛOÕ/Ñ8ÐJÑ Ø:Ù@Ï ÖBÏHÍ@Ñ ÎtÕ/û:Ì Ô��8Ð:ÏOÕ6Ë:Ì Ï Í8Ð^Ú�Õ=Í)ÐJÑ Ñ ÐJåBÒ:Í@ÑÏ:Ô8ÎtÕ6Ï+Ë^ÌEÎtÕ/û:ÌãâuäBÌHÓ�ÕRÏ3çsÑDËrÚ�ÕmËBÛtÕ/ÑBÐJÑ�Ï3ÐkÖ@ÍHÔ)Û^Ù8ÑBÛJÏBÐÉ�_��tâ

Expr essões Médi a: M = ( A + B + C) / 3 Var i ávei s Tr ês númer os: i A, i B, i C Medi a: f Medi a Rest r i ções: Os t r ês númer os são val or es i nt ei r os A médi a é um númer o r eal Descr i ção: Nest e al gor i t mo o usuár i o deve di gi t ar 3 númer os e a médi a é cal cul ada e i mpr essa.

Page 68: Logica Programacao Aplicada V2.2008

68

Início

Primeiro número? :

iA

Segundo número? :

iB

Terceiro número? :

iC

fMedia

fMedia=(iA+iB+iC)/3

Fim

#i nc l ude <st di o. h> #i ncl ude <coni o. h> voi d mai n ( voi d) { i nt i A, i B, i C; f l oat f Medi a; pr i nt f ( " Di gi t e o pr i mei r o numer o: " ) ; scanf ( " %d" , &i A) ; pr i nt f ( " Di gi t e o segundo numer o: " ) ; scanf ( " %d" , &i B) ; pr i nt f ( " Di gi t e o t er cei r o numer o: " ) ; scanf ( " %d" , &i C) ; f Medi a = ( f l oat ) ( i A + i B + i C) / 3. f ; pr i nt f ( " A medi a eh: %f " , f Medi a) ; get ch( ) ; } Hìâ

r)Ñ:î@Ñ Ù8Ð Ý@Ö:Ù8ÜHËBÛOÕ/ÑBÐHÑ Ú8ÑOÕ6Ñ Ó@ÑBÖ:ÓHÙ@ÖHÑdÕ Ñ ÷OÕ/ÏBÑ ÒHÏ Ù)Ð ÎtÕ/Í/Y:Ô8Û:Ù8ÖBËÕ/ÏBÎ�Y@Ô8Û^Ù@Ö8ËèâXäBÌBÓ�Õ/Ï3çsÑ,Ë�Ú�ÕmËBÛtÕ/Ñ3ÐHÑ-ÏBÐrÖ:ÍBÔ8Û^Ù8ÑBÛHÏBÐ��_���â

Expr essões: Ár ea do t r i ângul o: A=bxh/ 2 Var i ávei s:

Page 69: Logica Programacao Aplicada V2.2008

69

A base do t r i ângul o: f B A al t ur a do t r i ângul o: f H A ár ea do t r i ângul o: f A Rest r i ções: A base, al t ur a e ár ea podem ser val or es r eai s. Descr i ção: Est e al gor i t mo cal cul a a ár ea de um t r i ângul o r et ângul o depoi s que o usuár i o i nf or ma a base e a al t ur a.

fA=fB*fH/2

A área é fA

Fim

Base e altura?

fB, fH

Início

#i nc l ude <coni o. h> #i ncl ude <st di o. h> voi d mai n ( voi d) { f l oat f Base, f Al t ur a, f Ar ea; pr i nt f ( " Di gi t e a base e a al t ur a do t r i angul o, b h: " ) ; scanf ( " %f %f " , &f Base, &f Al t ur a) ; f Ar ea = f Base* f Al t ur a/ 2; pr i nt f ( " A ar ea eh: %f \ n" , f Ar ea) ; get ch( ) ; } Dtâ

r)Ñ:î@Ñ Ù)Ð ÝHÖ:Ù8ÜBËBÛtÕ/ÑBÐHÑ Ø^Ù@Ï ÖBÏ:Í8Ñ Ë Õ6Ñ:Í8Ë Ò8Ï Ù8ÐJÑ ÓHÍ�ÕRÓBÙHÔ8ÝHÏ�Õ/û:ÔHÓBÍ@ÑùêÓ@ÑHÖ:ÓBÙ@ÖHÏ-Ë�Ú@Ï�ÕRö8ÐJÏBÎ�ÕmË�ÏkÑk÷�Õ/ÏBÑQÏ�Í8Ð^ÚsÕ=Í8ÐJÑ+Ë^ÌrÒBË:ÍHÌ>çsÑBÖBËOÕ/Ï:Ìùâ�äBÌHÓ�ÕRÏ%çsÑË�Ú�ÕmËHÛtÕ/Ñ8ÐHÑ-ÏBÐ+Ö:ÍHÔ8Û^Ù3ÑBÛJÏBÐ��_��Oâ

Expr essões: Ár ea da ci r cunf er ênci a: A = PI * r * r Per í met r o da ci r cunf er ênci a: P = 2 * PI * r Var i ávei s: O r ai o do cí r cul o: f Rai o O per í met r o do cí r cul o: f Per i m A ár ea do do cí r cul o: f Ar ea Rest r i ções: O r ai o, o per í met r o e a ár ea podem ser val or es r eai s. O val or da const ant e PI ser á um def i ne Descr i ção:

Page 70: Logica Programacao Aplicada V2.2008

70

Est e al gor i t mo cal cul a a ár ea e o per í met r o de uma ci r cunf er ênci a depoi s que o usuár i o i nf or ma o val or do r ai o.

fPerim = 2*PI*fRaiofArea = PI*fRaio*fRaio;

PerímetroÁrea

Fim

Raio?

fRaio

Início

#i nc l ude <coni o. h> #i ncl ude <st di o. h> #def i ne PI 3. 141592654 voi d mai n ( voi d) { f l oat f Rai o, f Per i m, f Ar ea; pr i nt f ( " Qual o r ai o?: " ) ; scanf ( " %f " , &f Rai o) ; f Per i m = 2. f * PI * f Rai o; f Ar ea = PI * f Rai o* f Rai o; pr i nt f ( " O per i met r o eh: %f \ n" , f Per i m) ; pr i nt f ( " A ar ea eh: %f \ n" , f Ar ea) ; get ch( ) ; }

Page 71: Logica Programacao Aplicada V2.2008

71

Capítulo 6 - Estruturas de controle e de repetição.

Ñm² ±Jôª·gµ�#KÅm¶)Ç6º�Ä/ÅI¼O½p¾KÇpÅI¶

6.1.1 Seqüência

õ æBËbÓ8ËHÐHÑ:Ô@Ò3Ë^ÌcØ:Ù@ÏnÔ8ËyÝHÖ:Ù1ÜHËnÒHÏ_Ó8Ë^Ô8ÎOÕ6ËJÖBÏnÒBËyÚ�Õ'ËHÛtÕ6Ñ3ÐJÑ_Ì@æ3Ë_ÏBÜJÏHÓHÙ8ÎJÑBÒ3Ë^ÌÚ@Ñ:ÌHÌ8Ñ:Ô@ÒBË�Ñ-ÏBÜHÏ@ÓHÙHî@æBË�Ú@ÑOÕRÑ+Ñ�Ú�Õ6àHÜ^Í8ÐHÑ-ÍHÔHÌ)ÎtÕRÙHî@æ3Ëìâ

Exempl o: comandos em seqüênci a cl r scr ( ) ; / * Li mpa a t el a * / pr i nt f ( " Let r a: " ) ; / * I mpr i me * / l et r a = get ch( ) ; / * At r i bui ção * / pr i nt f ( " Val or = " ) ; / * I mpr i me * / scanf ( " %f " , &Val or ) ; / * Ent r ada de um val or * / r esp = val or * 1. 25 / * At r i bui ção é comando de seqüênci a * /

6.1.2 Seleção

õ æBË Ó8ËHÐHÑ:Ô8ÒBË^Ì Ø^Ù)Ï Ô)Ë ÝBÖ@Ù8ÜHË ÒHÏ Ó8Ë:Ô8ÎtÕ6ËHÖ@Ï Ò3Ë ÚsÕ6ËHÛtÕ/Ñ)ÐJÑ Ú@ÏOÕ6Ð^Í)ÎJÏBÐ ÑÌ@ÏHÖHÏ@î@æBË-ÏHÔ8ÎtÕ/ÏDÒ:Ù@Ñ:ÌUË^Ù>Ð:Ñ@ÍHÌ+ÍBÔHÌ8ÎtÕ=ÙBî8ø:Ï:Ìëâ

Exempl o: ut i l i zação de sel eção i f ( numer o % 2 == 0) { pr i nt f ( " NUMERO PAR\ n" ) ; } el se { pr i nt f ( " NUMERO I MPAR\ n" ) ; }

6.1.3 Repetição

õ æBË Ó8ËHÐHÑ:Ô8ÒBË^Ì Ø^Ù)Ï Ô)Ë ÝBÖ@Ù8ÜHË ÒHÏ Ó8Ë:Ô8ÎtÕ6ËHÖ@Ï Ò3Ë ÚsÕ6ËHÛtÕ/Ñ)ÐJÑ Ú@ÏOÕ6Ð^Í)ÎJÏBÐ ÑÕ/Ï:Ú@Ï3Î^ÍHî@æ3ËrÒHÏ�Ù)Ð-Ë^ÙUÐJÑ:ÍHÌ>ÍHÔHÌ)ÎOÕ=ÙHî8øJÏ@Ìëâ

Pr ogr ama exempl o: r epet i ção Descr i ção: est e pr ogr ama pede que o usuár i o pr essi one qual quer t ecl a. À medi da que as t ecl as vão sendo pr essi onadas os códi gos das mesmas vão sendo i mpr essos na t el a: o car act er e e o deci mal equi val ent e da t abel a ASCI I . O pr ogr ama é i nt er r ompi do quando a t ecl a ENTER é pr essi onada. #i ncl ude <st di o. h>

Page 72: Logica Programacao Aplicada V2.2008

72

#i ncl ude <coni o. h> #def i ne TRUE 1 #def i ne FALSE 0 voi d mai n( voi d) { char cTecl a, cCont i nua; cl r scr ( ) ; pr i nt f ( " Most r a as t ecl as pr essi onadas. \ n" ) ; pr i nt f ( " Pr essi one qual quer t ec l a: " ) ; cCont i nua = TRUE; whi l e ( cCont i nua) { cTecl a = get ch( ) ; i f ( cTecl a == 13) / * ( 13) códi go da t ecl a ENTER * / cCont i nua = FALSE; pr i nt f ( " Tecl a: %d | %c\ n" , cTecl a, cTecl a) ; } get ch( ) ; }

6.1.4 Atr ibuição

L�Ï��HÑ�Í8ÎJÏ3ÐkDtâfDrßKïdÚ@ÏOÕmÑHÒBËtÕ�ÒHÏ�ò^ÎtÕ=ÍH×HÙBÍHîBæBËJáùâ

Ñm² 3ô$Ä'Åp¼O½I¾mÇKÅJµ� m¨�ªïbÓ8ËHÐJÑ:Ô8ÒBË_Í@ÝeÚ@ÏOÕ6Ð:Í8ÎHÏaÑHÖBÎHÏOÕ6ÑOÕkÑeÌ@ÏBØ��@û:ÔHÓHÍ8ÑnÒBÏaÏBÜJÏ:ÓBÙBî@æBËaÒBËnÝHÖ:Ù)ÜHËnÒBËÚ�Õ6ËHÛOÕ/ÑBÐJÑ+Ó8ËHÐr×8Ñ:Ì@ÏrÔ)Ñ-Ñ3ç^ÑBÖ:Í@Ñ@î8æBËkÒHÏ�Ù3ÐJÑ�Ó8Ë:Ô@Ò@ÍHî@æBËèâ

Sintaxe: i f ( condi ção) { decl ar ação 1; } el se { decl ar ação 2: }

ï Ó)ËHÐJÑ:Ô8Ò3Ë ÏBÖHÌ@Ï å Ë:ÚHÓHÍ8Ë:Ô)ÑHÖèâ õ Ï Ñ Ó3Ë:Ô@Ò:ÍHî8æBË Ý3ËtÕ Ñ)çsÑHÖ:Í8ÑHÒHÑ ÏBÐçsÏOÕ/ÒBÑHÒHÏ:Í�Õ'Ë ßKØ^Ù@ÑHÖ3Ø:Ù@ÏOÕ çsÑBÖBËtÕ Ò:Í@Ý@ÏOÕ6Ï:Ô8ÎHÏ ÒHÏ þJáèê Ë Ó8Ë@ÐHÑ@Ô@ÒBË ü Ì8ÏOÕ/÷ÏBÜJÏ:ÓBÙ8ÎJÑHÒ3Ë êEÓ8Ñ@Ì8Ë Ó8ËJÔ)ÎtÕ/÷OÕRÍ8Ë�ßRÓ8Ë^Ô@Ò@ÍHî@æ3ËjÝHÑBÖ:ÌBÑèêuçsÑHÖBËOÕ�Í8ÛJÙ8ÑBÖ�Ñjí8ÏOÕ6ËJá�ËÓ8ËHÐJÑ@Ô@ÒBË Ì@ÏOÕ'÷rÏBÜJÏBÓHÙ8ÎJÑHÒ3Ëèâ�3ËHÐJÑ:Ô@Ò8ËQüDË^ÙrÓ3ËBÐJÑ:Ô@Ò3Ë Ú)ËHÒHÏBÐrÌ@ÏOÕ£ÌHÍ8ÐJÚ8ÖHÏ:ÌË^Ù Ó8ËHÐ:Ú8Ë:Ì8ÎHË:Ìùê§ÐJÑHÌ�Õ/Ï:Ó)ËBÐJÏ:Ô@Ò3Ñ^ðBÌ@Ï+Ë�ÙHÌ3Ë�Ò@ÏrÓHñ8Ñ3çJÏ:ÌÉôdßTá�õ�ÐJÏ:Ì8ÐHË-ØJÙ@Ñ@Ô@ÒBËË�Ó8ËBÐJÑ:Ô@Ò3ËrÝBËtÕ�ÌHÍ8Ð^Ú@Ö3Ï:Ìëâ

i f ( condi ção) { decl ar ação 1; / * comando compost o * / decl ar ação 2; / * mai s de uma l i nha de i nst r ução * / } el se

Page 73: Logica Programacao Aplicada V2.2008

73

{ decl ar ação 3; / * comando si mpl es* / }

Pr ogr ama exempl o: i f - el se Descr i ção: est e pr ogr ama ver i f i ca se o númer o di gi t ado pel o usuár i o é par ou í mpar . #i ncl ude <st di o. h> #i ncl ude <coni o. h> voi d mai n( voi d) { i nt i Numer o; / / c l r scr ( ) ; pr i nt f ( " Ver i f i ca se o numer o di gi t ado eh par ou i mpar . \ n" ) ; pr i nt f ( " Ent r e com um numer o i nt ei r o: " ) ; scanf ( " %d" , &i Numer o) ; i f ( ( i Numer o % 2) == 0) / / se o r est o da di vi são f or i gual a zer o { pr i nt f ( " NUMERO PAR\ n" ) ; } el se { pr i nt f ( " NUMERO I MPAR\ n" ) ; } get ch( ) ; }

6.2.1 I f ´s aninhados

úBÐ�ÍBÝ�Ñ@ÔHÍHÔHñ@Ñ8ÒBË�å�Ù8ÐqÓ8ËHÐHÑHÔ@ÒBËQÍ@Ý�ÍHÔHÌ@ÏOÕRÍ@ÒBËqÑ@Ú8à^ÌQÙ8ÐqÓ8ËHÐHÑHÔ@Ò3ËqÍ@Ý Ë^Ù�ÒHÏÙ8Ð�Ó)ËHÐJÑ:Ô8Ò8ËkÏHÖ@Ì8Ïèâ

Pr ogr ama exempl o: i f ani nhado Descr i ção: est e pr ogr ama pede que o usuár i o di gi t e um val or i nt ei r o qual quer posi t i vo, negat i vo ou zer o e depoi s i mpr i me na t el a o r esul t ado: mai or , menor ou i gual a zer o. #i ncl ude <st di o. h> #i ncl ude <coni o. h> voi d mai n( voi d) { i nt i Numer o; pr i nt f ( " Ver i f i ca se o numer o eh >, < ou == a zer o. \ n" ) ; pr i nt f ( " Ent r e com um numer o i nt ei r o: " ) ; scanf ( " %d" , &i Numer o) ; i f ( i Numer o == 0) { pr i nt f ( " ZERO\ n" ) ;

Page 74: Logica Programacao Aplicada V2.2008

74

} el se { pr i nt f ( " voce di gi t ou %d\ n" , i Numer o) ; i f ( i Numer o > 0) { pr i nt f ( " o numer o eh mai or que zer o\ n" ) ; } el se { pr i nt f ( " o numer o eh menor que zer o\ n" ) ; } } get ch( ) ; } Exempl o: mai s i f ’ s ani nhados i f ( x) { i f ( y) { pr i nt f ( " 1" ) ; } el se { pr i nt f ( " 2" ) ; } } ò�Ø^Ù8ÑHÖ¼a�j Ë�Ó3ËHÐJÑ:Ô@Ò3Ë�d±c â�d+Ì@Ï�Õ/ÏHÝHÏ�Õ/Ï�X ä)Ðg�I��UËUd±ceâ�d,Ï:Ì8ÎJ÷ Ö:Í)ÛJÑHÒBË-ÑBËa�j ÐJÑ:ÍBÌqÚ�ÕmàHÜ^Í8ÐHË�Ø^ÙBÏ�Ñ:ÍBÔ@ÒHÑ�Ô@æBËQÎ^Í)çsÏ�Õ>Ù8Ð�Ó8ËHÐHÑ:Ô@Ò3ËqÏHÖ:Ì8Ï�ÑHÌBÌ8Ë^ÓHÍ@ÑBÒBË ÑÏHÖHÏèâ�òÞÙ8Î^Í8Ö:Í@íHÑ@î8æBËnÒHÏeÓHñ@Ñ%çsÏ@ÌaÔ8ËnÏBÜJÏ3Ð^Ú@ÖBËnÑ:ÓBÍ8ÐJÑeÔ@æBËnÒHÏ@Í)ÜJÑaÒ��)çdÍ8ÒHÑ:ÌcÑÏ:Ì8ÎJÏ Õ6Ï:ÌHÚ@Ï:Í%ÎHËìâUò�ÌbÓBñ@Ñ3ç^Ï:ÌyÏ3Ö:Í8Ð^ÍHÔ8ÑBÐÞÑbÑBÐ^×BÍ)Û��HÍ@ÒBÑ@ÒHÏbÒHÑ�Í3Ô8ÎJÏOÕ=Ú�Õ/ÏBÎHÑ:î8æBËÒBË Ú�Õ6ËHÛtÕ6Ñ3ÐJÑHÒBËtÕ Ï ÒBË Ö@Ï:Í8Î3ËtÕ�ê ÏBÖ:Í8Ð:ÍBÔ@Ñ:Ô@ÒBË Ï3çsÏ:Ô)Î:Ù@Ñ:ÍHÌ Ñ:ÌHÌ8Ë:ÓHÍ@Ñ:î%øJÏ:ÌÍHÔ@ÒHÏ@Ì@Ï��HÑBÒ@Ñ:Ìëâ

Ñm² �Aô)âdÃIÅI¼t½I¾pÇKÅJ¶èõsµÈ¸»ÃmóA¨§ªäBÌ8ÎJÏ Ó3ËHÐHÑ:Ô@ÒBË ÝHÑHí Ë Ú�Õ6ËHÛtÕ6Ñ%ÐJÑ Î:Ï:Ì)ÎJÑOÕ�Ù)Ð:Ñ çJÑ�Õ=Í@÷3çJÏ@Ö ÌBÙ3Ó@Ï:ÌHÌHÍ%çsÑBÐHÏ:Ô)ÎJÏÓ8Ë^Ô8ÎOÕ/ÑbÙ8ÐJÑ_Ö@ÍBÌ8ÎJÑyÒHÏyÓ8ËHÔHÌ8ÎJÑ@Ô)ÎJÏ:Ì_ÍHÔ8Î:Ï:Í�Õ/Ñ:ÌaË:ÙyÓ@Ñ�Õ/Ñ:Ó)ÎJÏOÕ6ÏHÌãâ+óHÏ:Ú8Ë:ÍHÌ_ÒHÏÏ:ÔHÓ8Ë:Ô8ÎtÕ/Ñ�Õ Ù8ÐHÑ Ó8Ë^ÍBÔHÓBÍ@ÒHû:ÔBÓ@Í@ÑùêwË Ó8ËHÐ^ÚBÙ8ÎJÑHÒ)ËtÕ ÏBÜJÏ:ÓBÙ3ÎJÑ Ë Ó8ËHÐJÑ:Ô8ÒBË Ë^Ù×@ÖBË^Ó)Ë^Ì ÒHÏ Ó8Ë@ÐJÑ@Ô@ÒBË:Ì Ø^Ù@Ï Ï@Ì3ÎJÏ��HÑ3Ð Ñ@ÌHÌ8ËJÓBÍ@ÑHÒBË:Ì � Ø:Ù@ÏHÖHÑ Ó3Ë:ÔHÌ8ÎJÑ:Ô)ÎJÏùâhïÓ8ËHÐJÑ@Ô@ÒBËjÒ@ÏHÝHÑ@Ù@ÖBÎ�åjÏ3ÜJÏ:ÓHÙ3ÎHÑHÒBË�Ì@Ï�Ô@æBËañ8Ë^Ù1çsÏ�Õ�Ô@Ï:ÔHñBÙ3ÐJÑ�Ó8Ë^ÍHÔ3ÓHÍ@ÒHû:ÔBÓHÍ@ÑëâXïÓ8ËHÐJÑ@Ô@ÒBËr×�Õ/ÏHÑ^ÿUårÙHÌ@Ñ3ÒBË�ÚBÑ�Õ/ÑDË:×�Õ=Í8ÛJÑ�ÕTÑrÌ8Ñ:ö8ÒHÑ+ÒBËrÓ3ËHÐJÑ:Ô8Ò3ËrÌ�^�Í)Î^ÓHñëâ Sintaxe: swi t ch ( var i ável ) { case const ant e_1 : { decl ar ação; } br eak; case const ant e_2 :

Page 75: Logica Programacao Aplicada V2.2008

75

{ decl ar ação; } br eak; def aul t : { decl ar ação; } }

Pr ogr ama exempl o: swi t ch- case Descr i ção: Est e pr ogr ama pede que o usuár i o di gi t e um númer o ent r e 0 e 2 e depoi s aval i a o númer o com um swi t ch- case, escr evendo o númer o l i t er al ment e. #i ncl ude <st di o. h> #i ncl ude <coni o. h> voi d mai n( voi d) { i nt i Di gi t o; cl r scr ( ) ; pr i nt f ( " Ent r e com um numer o [ 0 . . 2] : " ) ; scanf ( " %d" , &i Di gi t o) ; swi t ch ( i Di gi t o) { case 0: { pr i nt f ( " Zer o\ n" ) ; } br eak; case 1: { pr i nt f ( " Um\ n" ) ; } br eak; case 2: { pr i nt f ( " Doi s\ n" ) ; } br eak; def aul t : { pr i nt f ( " ERRO: de 0 a 2\ n" ) ; } } get ch( ) ; } Pr ogr ama exempl o: swi t ch- case

Page 76: Logica Programacao Aplicada V2.2008

76

Descr i ção: Est e pr ogr ama pede que o usuár i o di gi t e um númer o ent r e 0 e 3 e depoi s aval i a o númer o com um swi t ch- case, t al como no exempl o ant er i or , ent r et ant o f az a l ei t ur a at r avés de um car act er e ao i nvés de ut i l i zar um i nt ei r o. Depoi s escr eve o númer o l i t er al ment e. #i ncl ude <st di o. h> #i ncl ude <coni o. h> voi d mai n( voi d) { char cDi gi t o; cl r scr ( ) ; pr i nt f ( " Ent r e com um di gi t o [ 0 . . 3] : " ) ; scanf ( " %c" , &cDi gi t o) ; swi t ch ( cDi gi t o) { case ' 0' : { pr i nt f ( " Zer o\ n" ) ; } br eak; case ' 1' : { pr i nt f ( " Um\ n" ) ; } br eak; case ' 2' : { pr i nt f ( " Doi s\ n" ) ; } br eak; case ' 3' : { pr i nt f ( " Tr es\ n" ) ; } br eak; def aul t : { pr i nt f ( " ERRO: Numer o f or a dos l i mi t es! \ n" ) ; } } get ch( ) ; } Pr ogr ama exempl o: swi t ch- case Descr i ção: Est e pr ogr ama mont a uma pequena ent r ada de dados ut i l i zando swi t ch- case. A capt ur a da opção do usuár i o é f ei t a com um car act er e. Cada opção l eva a um di r eci onament o onde um conj unt o de pr ocedi ment os pode ser r eal i zado. #i ncl ude <st di o. h> #i ncl ude <coni o. h>

Page 77: Logica Programacao Aplicada V2.2008

77

voi d mai n( voi d) { char cOpcao; cl r scr ( ) ; pr i nt f ( " [ I ] ncl usao\ n" ) ; pr i nt f ( " [ A] l t er acao\ n" ) ; pr i nt f ( " [ T] er mi no\ n" ) ; pr i nt f ( " Qual a opcao: " ) ; scanf ( " %c" , &cOpcao) ; swi t ch ( cOpcao) { case ' i ' : case ' I ' : { pr i nt f ( " Faz uma chamada a um pr ocedi ment o de i ncl usao. \ n" ) ; } br eak; case ' a' : case ' A' : { pr i nt f ( " Faz uma chamada a um pr ocedi ment o de al t er acao. \ n" ) ; } br eak; case ' t ' : case ' T' : { pr i nt f ( " Faz uma chamada a um pr ocedi ment o de encer r ament o. \ n" ) ; } br eak; def aul t : { pr i nt f ( " ERRO: Opcao I nval i da\ n" ) ; } } get ch( ) ; }

Ñm² ¶�ô$Ä'Åp¼O½I¾mÇKÅ�õöó6µ·¿Áº3¨éªäBÌ8ÎJÏ_Ó8ËBÐJÑ:Ô8ÒBË�Õ6ÏHÑHÖ:Í8íBÑ_Ù8Ð�F)Ö8ËHË:Ú�F�ßRÖHÑ:î3ËHácØ^Ù@Ï_Ì@ÏvÕ/Ï@Ú@Ï3Î^Í�Õm÷yÏ@Ô8Ø^Ù@Ñ@Ô8ÎHËyÑÓ8Ë^Ô@Ò@ÍHî@æBË-ÝBËtÕXç^ÏOÕ/ÒHÑBÒBÏ:Í�Õ/ÑùâW4dÙ8ÑHÔ@ÒBËkÑkÓ8ËHÔ@Ò:ÍHî@æ%ËQÝBËtÕYÝHÑHÖ@Ì@Ñ+ËkÓ8Ë^Ô8ÎOÕ6ËJÖBÏ-ÒBËÚ�Õ6ËHÛOÕ/ÑBÐJÑcÚ@Ñ:ÌBÌBÑaÚ@ÑOÕ/ÑjÑaÖ:ÍHÔ8ñ@Ñ�Ø^Ù@ÏaÌ@ÏBÛHÙ@ÏjË�F=ÖBËHË^Ú�F�â�ïGF%Ö3ËBË^Ú�FP^�ñBÍ@ÖBÏaåÙ8Î^Í@Ö@Í@íHÑHÒ3Ë ÏBÐ ÌBÍ8Î^Ù@ÑHî)øJÏ:Ì�Ë^Ô@ÒBÏ Ñ çsÏ�Õ=Í@Ý:ÍHÓ8Ñ:î@æ3Ë ÒHÑ Ó)Ë^Ô@Ò:Í@î8æBË ÒBÏ3çsÏ Ì@ÏOÕçsÏOÕ=Í8Ý:ÍHÓ@ÑBÒ@Ñ�Ô8Ë�ÍHÔBö@ÓHÍ8Ë�ÒBË�F)Ö8ËBË:Ú�Ftâ õ ÏqÑ�Ó8Ë:Ô8Ò:ÍHîBæBËjÝ%ËtÕ+Ý@ÑHÖ:Ì8ÑùêYË��)ÖBËBË^Ú��Ô@æBË-å-ÏBÜHÏHÓHÙ8ÎJÑBÒ3Ë�Ô@ÏBÐ�Ô@Ñ-Ú�Õ=Í8ÐHÏ@Í�Õ/ÑDçJÏHíëâW |�À/}�¾�Â�»èô whi l e ( condi ção) { comando 1;

Page 78: Logica Programacao Aplicada V2.2008

78

comando 2; } HË^Ô@Ò@ÍHî@æBËèôqØ^Ù@ÑHÖ%Ø^Ù@ÏOÕyÏ3Ü^Ú�Õ/Ï@ÌHÌ8æBËxç^÷HÖ:Í@ÒBÑ�ÓHÙ/�3Ë Õ6Ï:ÌHÙ8ÖBÎHÑHÒ3Ë Ì8Ï��HÑ�é�1@ú^ä�Ë^Ùr'ò�O õ ä�ß/üEË^Ù>þHáùâHËHÐJÑ@Ô@ÒBËìôÞÚ8Ë:ÒHÏ Ì@Ï�Õ Ù)Ð Ó)ËHÐJÑHÔ@Ò3Ë çsÑBí:Í8ËìêÞÌHÍ8Ð:ÚBÖHÏ:Ì Ë^Ù Ó8ËHÐ@Ú8Ë^Ì8ÎHË â_ésÑ:ÍHÌÓ8ËHÐJÑ@Ô@ÒBË^Ì>Ì@ÏOÕ/æ3ËjÕ/Ï:Ú@Ï%Î^Í@ÒBËJÌ>ÑBÎHåDØ^Ù@Ï+Ñ-Ó8Ë^Ô8Ò:ÍBî@æBË+ÎHËOÕ/Ô@Ï^ðBÌ8Ï+ÝBÑHÖ:Ì8Ñèâ

Pr ogr ama exempl o: whi l e Descr i ção: f az a cont agem de 1 at é 10 com o l oop whi l e. A compar ação é r eal i zada NO I NÍ CI O do l oop. Se f or f al so não execut a o l oop. #i ncl ude <st di o. h> #i ncl ude <coni o. h> voi d mai n ( voi d) { i nt i Cont = 1; whi l e ( i Cont <= 10) { pr i nt f ( " %d\ n" , i Cont ) ; i Cont ++; } get ch( ) ; }

Ñm² ÃAô)âd¿ÄÅIÅ$#A Å+"X¨é÷ ÷ ªï�Ó8ËBÐJÑ:Ô@Ò3ËrÝBËtÕXÒHÏHÝ:ÍBÔ8ÏrÙ8Ð>Î^ÍHÚ)Ë-ÒHÏ-ÖBÑ:î3ËkÒBÏ+ÏBÜHÏ:ÓHÙHî8æ8Ëìâ)Ë^ÌHÌBÙHÍqÎOÕ/û:Ì�Ï@ÖHÏ3ÐJÏ:Ô)ÎHË:ÌaÔ)ÑeÌBÙBÑjÒHÏHÝ:ÍHÔ3ÍHî@æBËìô£ÍHÔBÍHÓHÍBÑHÖ@Í@íHÑ:î8æ3Ëìê£Ó8Ë^Ô@ÒHÍHî8æBËaÏÍHÔHÓ�Õ6ÏBÐJÏ:Ô)Î@Ëìâ�ò ÍHÔBÍHÓ@Í@ÑHÖ@Í@íBÑ:î@æ3Ë å Ù)Ð Ó)ËBÐJÑ:Ô@Ò8Ë ÒHÏ ÑBÎtÕ=Í@×BÙBÍHî@æ3Ë ØJÙ@Ï ËÓ8ËHÐ^ÚBÍ@ÖHÑHÒ3Ë�ÕrÙBÌ8ÑcÚ)ÑOÕ/ÑqÏ:Ì8ÎJÑ@×@ÏBÖBÏ:ÓBÏOÕ+Ñ�çsÑ�Õ=Í8÷3çsÏ@Ö�ÒBÏ�Ó8Ë:Ô8ÎtÕ'ËHÖHÏ�Ò3ËaÖ8Ñ:î8Ëìâ òÓ8Ë^Ô@Ò@ÍHî@æBË å Ù3ÐHÑ Ï3Ü^Ú�Õ6Ï:ÌHÌ8æBË ÒBÏ Õ/ÏBÖHÑ:î8æBË Ø^Ù@Ï ÎHÏ:Ì8ÎJÑ Ñ çsÑ�Õ=Í@÷3ç^ÏBÖ ÒHÏÓ8Ë^Ô8ÎOÕ6ËJÖHÏqÒBË�ÖHÑ:î8Ë�Ó8ËJÔ)ÎtÕ/Ñ�ÑHÖBÛ:Ù3Ð�çJÑHÖ3ËtÕ�Ú@Ñ�ÕRÑjÒBÏ3ÎJÏOÕ6Ð:ÍBÔ@ÑOÕ,Ø^Ù8Ñ:Ô8ÒBË�ËcÖBÑ:î8ËÎJÏOÕ6Ð:ÍHÔ@ÑOÕ6÷ëâ ï ÍHÔHÓ�Õ6ÏBÐJÏ:Ô)ÎBË ÒBÏHÝ@ÍHÔ@Ï Ñ ÐJÑ:ÔBÏ:Í�Õ/Ñ Ó8ËHÐ@Ë Ñ çsÑOÕRÍ@÷3çsÏBÖ ÒHÏÓ8Ë^Ô8ÎOÕ6ËJÖHÏ+ÒBËQÖ8Ñ:î8ËQÌ3ÏOÕ/÷-ÑHÖ3ÎJÏOÕmÑHÒHÑrÓ@ÑHÒHÑ,çsÏHí+Ø:Ù@Ï-ËrÓ8ËHÐ:ÚHÙ)ÎJÑHÒ)ËtÕrÕ/ÏHÚ@ÏBÎ:Í�ÕYËÖHÑ:î8ËèâW |�À/}�¾�Â�»èô f or ( i ni c i al i zação; condi ção; i ncr ement o) { decl ar ação 1; decl ar ação 2; } ½�pba�¹�ay�Ôc�aòø���ùHú�gãô�Ù8Ð Ó8ËHÐHÑ@Ô@ÒBË ß'Ë^Ù çs÷�Õ=Í3Ë^Ì Ì8Ï:Ú@ÑOÕ6Ñ@ÒBË^Ì Ú8ËtÕbçdö�Õ6Û:Ù@ÖHÑHá ÒHÏÑBÎtÕ=ÍB×HÙHÍHî8æ8ËrØ^ÙBÏ�Ë�Ó8Ë@Ð^ÚHÍ8ÖHÑBÒBËtÕTÙHÌ@ÑrÚ@ÑOÕ/ÑrÍHÔHÍBÓ@Í@ÑHÖ:Í8íBÑOÕUÑ�ß/Ì@áEçsÑOÕ=Í@÷%çsÏHÖOß6ÍHÌ@áÒHÏrÓ)Ë^Ô8ÎtÕmË:ÖHÏ-Ò3Ë-ÖBËHË^Útâ»�g�p�f¾agùHú�gãô Ù8Ð:Ñ Ï8Ü:Ú�Õ/Ï:ÌBÌ8æBË Õ/ÏHÖHÑ:Ó@Í8Ë^Ô8ÑHÖ Ø^Ù8Ï ÎJÏ@Ì8ÎJÑ Ñ çsÑOÕ=Í@÷%çsÏHÖ ÒHÏÓ8Ë^Ô8ÎOÕ6ËJÖHÏqÒBË�ÖBËHË^Ú�Ó8ËJÔ)ÎtÕ/Ñ�ÑHÖBÛ:Ù3Ð�çJÑHÖ3ËtÕ�Ú@Ñ�ÕRÑjÒBÏ3ÎJÏOÕ6Ð:ÍBÔ@ÑOÕ,Ø^Ù8Ñ:Ô8ÒBË�ËcÖ3ËHË^ÚÎJÏOÕ6Ð:ÍHÔ@ÑOÕ6÷ëâ

Page 79: Logica Programacao Aplicada V2.2008

79

½�pO¹Ol=d5��d�p�tÂgëôDÒHÏHÝ:Í8Ô@ÏeÑaÐJÑ:Ô@Ï:ÍsÕ6Ñ_Ó8ËHÐHËyÑ�çsÑ�Õ=Í@÷3ç^ÏBÖeÒHÏ_Ó8Ë^Ô8Î�Õ'ËJÖHÏeÒBËyÖBËBË^ÚÌ@ÏOÕ/÷+ÑHÖBÎHÏ�Õ/ÑHÒHÑDÑ:Ú8à^ÌUËkÖBË@Ë:Ú-Ì8Ï�Õ-Õ/Ï:Ú8ÏBÎJÍ@ÒBËèâðUïkÖBËHË^ÚqßRÝBËtÕ6á�Ì@ÏOÕ6÷�Õ/Ï:ÚBÏ3Î^Í@Ò3Ë-Ï:Ô8Ø^Ù8Ñ:Ô3ÎHË-Ñ�Ó8Ë:Ô@Ò:ÍHî8æ8ËkÝBËOÕuçJÏOÕ/ÒBÑHÒHÏ:Í�Õ'ÑèâðTòqÓ8Ë^Ô@Ò@Í@î@æBËrÌ8ÏOÕ/÷DÎHÏ:Ì8ÎJÑ@ÒBÑrÔ)ËrÓ8ËHÐJÏ@î8ËrÒBË-Ö3ËHË:Úëâð 4dÙ@ÑHÖ%Ø^Ù@ÏOÕ Ù8ÐHÑ ÒHÏ ÌBÙ@Ñ:Ì � ÌBÏ@î8øJÏ:Ì ßzaypba�¹�a¿�Ôc�a�ø��AùHú�g�6 ¹,g�p�fîagùRú�g76aypO¹Ol=d5��d�p�tÂg@árÚ)ËHÒHÏrÌ@ÏdÕYØ^ÙBÑBÖBØ^Ù8Ï�Õ�ÏBÜ^Ú�Õ/ÏHÌHÌ@æ3ËDçs÷HÖ@Í@ÒHÑ>ÏBÐZèâ

Pr ogr ama exempl o: f or

Descr i ção: f az a cont agem de 1 at é 10 com o l oop f or . #i ncl ude <st di o. h> #i ncl ude <coni o. h> voi d mai n( voi d) { i nt i Cont ; f or ( i Cont = 1; i Cont <= 10; i Cont ++) { pr i nt f ( " %d\ n" , i Cont ) ; } get ch( ) ; } Pr ogr ama exempl o: f or

Descr i ção: f az a cont agem par a ci ma e par a bai xo em duas var i ávei s. O l oop é encer r ado quando os val or es das var i ávei s se i gual am ( em 5) . #i ncl ude <st di o. h> #i ncl ude <coni o. h> voi d mai n( voi d) { i nt i Cont , i Cont B; f or ( i Cont = 0, i Cont B = 10; i Cont ! = i Cont B; i Cont ++, i Cont B- - ) { pr i nt f ( " | %d| %d| \ n" , i Cont , i Cont B) ; } get ch( ) ; } ïQÖBËBË^Ú�Ý3Ë�Õ:ßu6�6Æá+å-ÏBØ@ÙHÍ)çsÑ@ÖBÏ:Ô8ÎHÏ+ÑBË�Ì8ÏBÛJÙHÍHÔ)ÎJÏ�Ó8ËBÐJÑ:Ô8Ò8ËQ^�ñBÍ8ÖHÏùô i ni ci al i zação; whi l e ( condi ção) { comando; i ncr ement o; }

Page 80: Logica Programacao Aplicada V2.2008

80

Ñm² Ñ�ô$âd¿·ÅIÅ$#sÇpÅAûgü�õwópµÄ¿·ºï�Ó8ËBÐJÑ:Ô@Ò3ËrÒBË�ô>õM^�ñHÍ)ÖHÏ+Î:Ñ3Ð^×@å3ÐjÕ/ÏHÑHÖ@Í@í@ÑrÙ)ÐJÑ+ÖHÑ@î8Ë-Ò@ÏjÕ/Ï@Ú8ÏBÎ:ÍHî@æ3Ëìâï ÖBÑ:î8Ë å ÏBÜ:Ï:ÓBÙ8ÎJÑBÒBË Ï:Ô)Ø:Ù@Ñ:Ô)Î@Ë Ñ Ó)Ë^Ô@Ò:ÍBîBæBË ÝBË�Õ�çsÏOÕ/Ò8ÑHÒHÏ@Í�Õ6ÑèêhÐJÑ:Ì ÑÓ8Ë^Ô@Ò@ÍHî@æBË-å-ÎJÏBÌ8ÎJÑHÒHÑ�Ô8ËkÝ:ÍBÔ@ÑHÖ¢ê«ÝHÑHíBÏ:Ô@Ò8Ë�Ó8ËHÐ+Ø^Ù@ÏDËQÖBËHË:Ú-Ì@Ï>�HÑkÏBÜHÏ:ÓHÙ3ÎHÑHÒBËÚ@ÏHÖBË+ÐJÏ:Ô)ËJÌ-Ù8ÐHÑEçsÏHíèâW |�À/}�¾�Â�»þË

`RT4ýM=T?W�OH;?`FT+þ

ÿ�� �FN=dFG�ØXM?T_;C`�NFDJS�T�Ú�þ

Pr ogr ama exempl o: do- whi l e Descr i ção: f az a cont agem de 1 at é 10 com o l oop do- whi l e. A ver i f i cação é r eal i zada no f i nal , l ogo o l oop do- whi l e é sempr e execut ado pel o menos uma vez. #i ncl ude <st di o. h> #i ncl ude <coni o. h> voi d mai n( voi d) { i nt i Cont = 1; do { pr i nt f ( " %d\ n" , i Cont ) ; i Cont ++; } whi l e ( i Cont <= 10) ; get ch( ) ; }

Ñm² ÚJô$ßÁ¾K¸Éº+"Ý"-,'#+&$(KÅ:ÇKºH¿ÄÅKÅ�#K¶

6.7.1 O comando break

4dÙ@Ñ:Ô8ÒBËhËwÓ8ËHÐ:ÚHÙ8ÎHÑHÒ8ËtÕcÏHÔHÓ)Ë^Ô8ÎOÕ6Ñ�ËxÓ8ËHÐJÑ8Ô@ÒBËx×�ÕmÏHÑ^ÿ�ÒHÏBÔ8ÎtÕ6ËhÒBÏwÙ8ÐwÖBË@Ë:ÚëêÏHÖHÏ Í8ÐJÏBÒ:Í8ÑBÎJÑBÐHÏHÔ8ÎJÏ Ï:ÔHÓ@ÏOÕ3Õ/Ñ Ë ÖBËHË^Úãê Ï Ë Ó8Ë^Ô)Î�Õ6ËJÖHÏ ÒBË Ú�Õ6ËHÛ�Õ6ÑBÐJÑÚ�Õ6Ë^ÌBÌ@ÏBÛ^Ù8Ï-Ô8ËrÚ�Õ=Í8ÐJÏ:ÍsÕ6Ë�Ó3ËBÐJÑ:Ô8Ò3ËkÒHÏ:Ú)Ë^Í@Ì�Ò3Ë-ÖBËHË:Úëâ

Pr ogr ama exempl o: br eak Descr i ção: est e pr ogr ama t em um l oop f or que f ar i a a cont agem de 0 at é 99. Mas a exi st ênci a do comando br eak i nt er r ompe a cont agem quando i Cont f or i gual a 10. #i ncl ude <st di o. h> #i ncl ude <coni o. h> voi d mai n( voi d)

Page 81: Logica Programacao Aplicada V2.2008

81

{ i nt i Cont ; f or ( i Cont = 0; i Cont < 100; i Cont ++) { pr i nt f ( " %d\ n" , i Cont ) ; i f ( i Cont == 10) { pr i nt f ( " sai ndo. . \ n" ) ; br eak; } } get ch( ) ; }

6.7.2 O comando continue

ï Ó8ËHÐJÑ@Ô8ÒBË Ó8ËJÔ)Î^ÍHÔHÙ8Ï ÏBÐ çsÏ@í ÒHÏ Ý%ËtÕ=î@ÑOÕ Ë ÏHÔHÓ@ÏOÕBÕ/Ñ3ÐJÏ:Ô1ÎHËìê ÝBË�ÕRî@Ñ ÑÚ�Õ6àHÜ:Í8ÐJÑ�Í3ÎJÏOÕ/Ñ@î8æBËkÒBË+ÖBËHËJÚ>Ï�ÚBÙ@ÖHÑ+ËrÓ3àJÒ:Í)ÛHË+Ø^Ù8Ï-Ï@Ì3Î^Í)çsÏ�ÕTÔ)Ë-ÐHÏ:Í8Ëìâ

Pr ogr ama exempl o: cont i nue Descr i ção: est e pr ogr ama i mpr i me soment e os númer os par es. Quando o númer o f or í mpar o i f ser á ver dadei r o e o pr ogr ama vai pul ar a execução das l i nhas abai xo e cont i nuar á na pr óxi ma i t er ação. O r esul t ado é a i mpr essão só de númer os par es, poi s o i f dar á zer o como r esul t ado. #i ncl ude <st di o. h> #i ncl ude <coni o. h> voi d mai n( voi d) { i nt i Cont ; / / c l r scr ( ) ; f or ( i Cont = 0; i Cont < 100; i Cont ++) { i f ( i Cont % 2) / * 0 é par , 1 é i mpar * / { cont i nue; } pr i nt f ( " %d " , i Cont ) ; } get ch( ) ; } ÊBË^ÌnÖBË@Ë^ÚHÌk^�ñHÍ8ÖHÏyÏ_ÒBË´ô>õÉ^�ñBÍBÖHÏyÙ8Ð�Ó8Ë@ÐJÑ@Ô@ÒBË�Ó)Ë^Ô3Î^ÍHÔBÙ@Ï_ÝHÑBíbÓ8ËBÐ_Ø^Ù@ÏnËÓ8Ë^Ô8ÎOÕ6ËJÖHÏ ÒBË Ú�ÕmËHÛtÕ/Ñ8ÐHÑ çs÷ Ò:Í�Õ6ÏBÎJÑBÐJÏ@Ô)ÎJÏ Ú8ÑOÕ/Ñ Ë ÎJÏ@Ì8ÎHÏ Ó)Ë^Ô@Ò:ÍHÓ@Í8Ë^Ô8ÑHÖ ÏÒHÏ:Ú8Ë:ÍHÌ-Ó)ËJÔ8Î^ÍHÔBÙ8Ï+ËkÖ%ËHË^ÚëâÊBË Ó@Ñ:Ì8Ë Ò)Ë ÖBËHË^Ú ÝBË�Õ:ßu6�6Iá¢ê Ë Ó3ËHÐ^ÚHÙ1ÎJÑHÒBËtÕ Ú�Õ=Í8ÐJÏ@Í�Õ6Ë ÏBÜJÏ:Ó@Ù8ÎJÑ ËÍHÔHÓ�Õ6ÏBÐJÏ:Ô)Î@Ë ÒBË ÖBËHË^Ú Ïèê Ò3Ï@Ú8Ë^ÍHÌùê Ë ÎJÏ:Ì8ÎHÏ Ó8Ë^Ô8ÒHÍHÓHÍ8Ë:Ô8ÑHÖ Ñ@Ô8ÎJÏ:Ì ÒHÏÝ:ÍHÔ@ÑBÖBÐJÏ:Ô)Î:Ï_ÝHÑHíHÏ�ÕQËbÖ3ËHË^ÚyÓ8Ë:Ô)Î^ÍHÔHÙ@Ñ�Õ�âZ�BÌ8ÎHË�Ú)ËtÕ'Ø^Ù8Ï_Ë�Í@ÔHÓ�Õ/Ï3ÐJÏ:Ô8ÎHË�Ú3ËHÒHÏÒHÏHÝ:ÍBÔHÍ�ÕhÑ Ó8Ë^Ô)Î^ÍHÔBÙ@ÑHî@æBË ËJÙ Ú@Ñ�Õ/ÑHÒHÑ ÒBË Ö3ËHË^Úëêc�H÷ Ø:Ù@Ï ÑxçsÑOÕ=Í8÷%çsÏHÖ ÒHÏÓ8Ë^Ô8ÎOÕ6ËJÖHÏbÒBË�ÎHÏ@Ì8ÎJÏ�Ó)Ë^Ô@ÒHÍHÓBÍ8Ë:Ô@ÑHÖbÏ@Ì8ÎJ÷�Ú�Õ6ÑBÎ^ÍBÓ@Ñ3ÐJÏ:Ô)ÎJÏbÌ@ÏBÐ^Ú�Õ6ÏbÖ:Í8ÛJÑHÒ@ÑbÑBËÍHÔHÓ�Õ6ÏBÐJÏ:Ô)Î@Ëìâ

Page 82: Logica Programacao Aplicada V2.2008

82

Ñm² �Aô)â�Ä'Åg¼O½K¾KÇpÅsº)Ü µÈ¸é¨«ªï�Ó8ËBÐJÑ:Ô@Ò3ËrÏBÜ^Í)Î-Ñ:×8ËtÕpÎJÑ+Ë-Ú�Õ6ËBÛOÕ/ÑBÐJÑ+ÏBÐ�Ø^Ù8ÑHÖ3Ø^Ù@Ï�Õ£ÌBÍ3Î^Ù@Ñ:î8æ3Ëìâ

Page 83: Logica Programacao Aplicada V2.2008

83

Capítulo 7 - Funções definidas pelo usuário.

Ê�< V3@mT�oA@cO?W�O9< G?sROFW9NR;CO�`FTH< OF>Hl ORoFT�@mO <JSFT @XG�d?O=>9Ng��O=W�G�;J>�G <FNCW9V=dFG�<�q MJT?WO�@mK9BFN���T9< �RT�;?>RG�< M�B�@X>FT_<öqtVJT�B?M?T M=T?W�VJd�N?M?OR`FT9< G MFT?W BC>�N=d�NC`�O=`�G dRNCW9NJ>FOF`�O�[ÛR;�>�@XG=>FO9;C>RTiq4M?T9;���TA@mW�G^T�O�B�W�G�;C>=T `RO MJTFW9V?dRGCs�N�`�OF`HG^`FTH< V9@�T�oA@cO?W�O_<^OHBCW�GH;C>�O T;�fXW9G3@cT `RG M?T?W�OH;?`FT_<ö[ �JOA@cO <=NCW9V=d�N?��N=M?O�@ O >FO-@XGF�FO `HG V�@XTFo-@�OFW�OHD?S�T�q B�WV3@mT�oA@cO?W�O VJTF`�G <?G�@ K�BFG=ÇA@�OR`FT G?W M?THdFG�DJE�G�< d=TFo�N=M?O?W9GR;C>�G @cG�d?OHM�N?T�;JOF`�OH< `�GMFTJW�O�;J`FT9<öq]M���OFW�OR`FO�<À�9BF;=D?E�G�<w[Ê V9@�T�o�@XO?WHOF`FT�@uVCT�`RG M3@CNCO�@�<=BCO�< V9@�p9V�@JNCO_<u�9BF;=D?E�GR<\q^T�K_B?G VJGA@�W3NC>�G{W�O9NCT�@d�GJo9N?ÇHN?d�NC`ROF`�GaGb@XG?O9V�@XT?�_G�N?>FO=W�G�;�>FTI`RTkMJp�`�NJoFTz[

For ma ger al : t i po nome ( t i po par âmet r os) { cor po da f unção; }

Þ-N=V?Tiv�ÛF<FVFG=M�NC�_N?MFO�T >HN�VCT�`RT���O�d=TA@4K�B?G�O���B�;JDFSFT `RG?��G�`RG?��T�dJ��G3@4O=>�@�O?�_l�<�`RTB�<�TI`RTkM?T=W�O9;�`�T à µ  ¸ Ó µ ÏbØ���OHd?T�@cÚ à [�JO�@��?W_G?>�@�T_<öv � BgW�O dRNF<?>FO+q <?G�VJOA@XO=`�O VCT-@ ��U_@co�BFdJO9<öq MJTFW TH< ;?TFWHG�< `�OH<��O�@JNCZ=��G�NF<ÀK9BJGn@gGFMFG�Ç=GA@�SRTIT�<ÀO�@mo�BCW�GH;C>�TH<�K_BCO9;C`RTIO¿�9BF;=D?S�Ta�FT-@hM���OFW�OR`FOz[Ê4V3@�TRoA@XO?WHOIO�<?G=o�BFN3@ÆN?dHBF<?>A@cOÈBXW�OI�_BF;FDJS�Ta`�GF��NR;FN?`=OÈV?GRd?T�B�<FBJZA@JNCT�[

Pr ogr ama exempl o: f unção def i ni da pel o usuár i o Descr i ção: o pr ogr ama a segui r def i ne uma f unção cr i ada pel o usuár i o ( Most r aAl f abet o) . O pr ogr ama ut i l i za a f unção par a i mpr i mi r o al f abet o um númer o de vezes det er mi nado pel o usuár i o. #i ncl ude <st di o. h> #i ncl ude <coni o. h> voi d Most r aAl f abet o ( voi d) ; voi d mai n ( voi d) { i nt i I , i Num; pr i nt f ( " I mpr i me Al f abet o\ n" ) ; pr i nt f ( " Quant as Vezes? : " ) ; scanf ( " %d" , &i Num) ; f or ( i I =0; i I <i Num; i I ++) { Most r aAl f abet o( ) ; } get ch( ) ; } voi d Most r aAl f abet o ( voi d) { i nt i I ; f or ( i I =' A' ; i I <=' Z' ; i I ++) put char ( i I ) ;

Page 84: Logica Programacao Aplicada V2.2008

84

put char ( ' \ n' ) ; }

Ú ² ±;Õ6½g¿ÄÅ'"»ºK¶3Ç'º�á6ºg¸ Å$" ¾mÅÞ9T=`�O�< O9<��9B=;FD?EHG�<\qYGCs9MFGJ>�T OFK_B?GFd=O�<�K9BJG <CSRT `�G�M=dFOA@cOF`�O�<�M?TFWRT <?G�;�`�T `FT >�N�V�T� ±R¯F® q�`�G���T�dJ��G?W�BCW���O�dJTA@A[�Ê @gG?>�T�@J;CT�`�Tb��ORdFTA@Yl�G�<�V?GRM�N?�HNFM?OR`FT V=G�d?T�M?T=W�O9;C`RTà µ  ¸ Ó µ Ï à [ÛR;JMFT�;J>A@XO?WHT�<a;?TA@mW�O�d?WHG�;C>HG�>A@gQ�<À>�N�VCT_<�`RG��_BF;FD?EHG�<\vO�Úky=BR;?DFE�GH<�KHBFGY;CSFTa`�GC�HT�d?��GJWI�RO�dFTA@gG�<\[ j SRTÈVFB9@�OFWHG�;?>�GYV3@mT�MFG=`�B3@�OHN�<ö[

Pr ogr ama exempl o: sem val or es de r et or no

Descr i ção: est e pr ogr ama ut i l i za duas f unções def i ni das pel o usuár i o par a i mpr i mi r val or es e st r i ngs. Ambas não r et or nam nenhum val or . #i ncl ude <st di o. h> #i ncl ude <coni o. h> voi d Most r aSoma( f l oat f V1, f l oat f V2) ; voi d Most r aMensagem ( char * sMsg) ; voi d mai n( voi d) { f l oat f V1, f V2; pr i nt f ( " Soma val or es. \ n" ) ; pr i nt f ( " Di gi t e doi s val or es, separ ados por espaços: " ) ; scanf ( " %f %f " , &f V1, &f V2) ; Most r aSoma( f V1, f V2) ; Most r aMensagem( " Sai ndo. . . " ) ; get ch( ) ; } voi d Most r aSoma( f l oat f V1, f l oat f V2) { pr i nt f ( " Soma dos val or es %f + %f = %f \ n" , f V1, f V2, f V1+f V2) ; } voi d Most r aMensagem ( char * sMsg) { put s( sMsg) ; }

Ç�Ú�y=BR;?DFERG�<ÈK9B?G�GF��GJ>9BCO=W�THVFG3@cO�D?E�GR<nGJW <=G�B�<ÈO�@�oHBCW�G�;J>FT9<�Gb`�GC�HT�d?�HG?W BgW���O�d?T-@MFTJW ÇFO�<=G ;CO9< T�VFG3@cO�DFERG�<ö[�Ê3< ��O�dJT�@XGH< `�G @�GJ>�TA@C;CT ;?SFT <FG @�GR<C>�@�NR;Co�G�W O��ORdFTA@gG�< N�;C>HG�N3@�T_<ö[ �JTF`HGCW <FG3@ @gG?O9NF< T_B THB?>A@cT�< >9NFVJT�< `�G?�_NF;�NC`RT�< VFGFd=TB�<=B?ZA@CNCTz[

Pr ogr ama exempl o: val or es de r et or no

Descr i ção: Est e pr ogr ama ut i l i za uma f unção def i ni da pel o usuár i o par a cal cul ar a base el evada ao expoent e. #i ncl ude <st di o. h> #i ncl ude <coni o. h>

Page 85: Logica Programacao Aplicada V2.2008

85

#i ncl ude <mat h. h> f l oat pot ( f l oat x, i nt y) ; voi d mai n( voi d) { f l oat f Base, f Resp; i nt i Expoent e; cl r scr ( ) ; pr i nt f ( " Cal cul a a base el evada ao expoent e. \ n" ) ; pr i nt f ( " Base: " ) ; scanf ( " %f " , &f Base) ; pr i nt f ( " Expoent e: " ) ; scanf ( " %d" , &i Expoent e) ; f Resp = pot ( f Base, i Expoent e) ; pr i nt f ( " Pot enci a = %7. 2f \ n" , f Resp) ; get ch( ) ; } / * - - - Função def i ni da pel o Usuár i o - - - - * / f l oat pot ( f l oat f X, i nt i Y) { f l oat f Val or ; f Val or = exp( l og( f X) * i Y) ; r et ur n( f Val or ) ; }

M�Ú y=BR;?DFE�GH< KHBFG W�O�;FNRVFBFdJO?W NF;?�FT-@�W�ORDFE�G�< G `�G?�RT�dC�_GCW B�W �RO�d?T-@ K�B=G<�NXW�V?dRG�<CW�GH;C>�GYNF;J`�N?MFOaT�<FBFMFGH<F<?T¿T9BÀTI��@XO�M=O�<�<CTa`�OÀW�O�;RNFV�BJdFO�D=SFTz[

Pr ogr ama exempl o: val or es de r et or no

Descr i ção: est e pr ogr ama ut i l i za uma f unção def i ni da pel o usuár i o par a cal cul ar o det er mi nant e da equação do segundo gr au ( t ambém conheci da como equação de Bhaskar a) . Dependendo do r esul t ado, a f unção r et or na um i nt ei r o: 0, 1, - 1, com o qual o r esul t ado é cl assi f i cado pel a f unção mai n( ) . #i nc l ude <st di o. h> #i ncl ude <coni o. h> i nt Ver i f i caDet er mi nant e( f l oat f A, f l oat f B, f l oat f C) ; voi d mai n( voi d) { f l oat f A, f B, f C; i nt i Val or ; / / c l r scr ( ) ; pr i nt f ( " Cal cul a o Det er mi nant e da Equacao de Bhaskar a\ n" ) ; pr i nt f ( " a = " ) ; scanf ( " %f " , &f A) ; pr i nt f ( " b = " ) ; scanf ( " %f " , &f B) ; pr i nt f ( " c = " ) ; scanf ( " %f " , &f C) ;

Page 86: Logica Programacao Aplicada V2.2008

86

i Val or = Ver i f i caDet er mi nant e( f A, f B, f C) ; i f ( i Val or == 0) pr i nt f ( " Det er mi nant e ZERO\ n" ) ; el se i f ( i Val or > 0) pr i nt f ( " Det er mi nant e POSI TI VO\ n" ) ; el se pr i nt f ( " Det er mi nant e NEGATI VO\ n" ) ; get ch( ) ; } i nt Ver i f i caDet er mi nant e( f l oat f A, f l oat f B, f l oat f C) { f l oat f Det ; f Det = f B * f B - 4. f * f A * f C; i f ( f Det == 0) r et ur n( 0) ; el se i f ( f Det > 0) r et ur n( 1) ; el se r et ur n( - 1) ; }

Ê�< G?s�GCW3V?dFTH< � G Ð�q O�d=l?W `�G G�;C�_NCO�@XGJW V?O�@��FW�G=>A@XTH< `�G K�B?O�d=K�BFG9@ >9NFVJTØ�N=;?>�GHN_@XT�<wq�@�GJO�N�<öqÆVCT9;�>�G�N9@�T9<?ÚwqhBC>�N=d�NFe?O=WnTnM=T?W�O�;J`FT µ  ¸ Ó µ Ï4VCOA@cO @�GJ>�TA@C;CO�@IBXW��ORdFTA@ðO�TYM?TFWRO9;C`RT�K9BJGIMH�COFW�T_B�O¿�9BF;=D?S�T�[|FT4GJs�GCW3V?dFT��q T4M?TFW�O_;C`�T µ  ¸ Ó µ Ïa`9N?eY���_BF;FD?SRT ³?±�¸ V�O�@�O�@�GJ>�TA@C;COA@�TY��OHd?T�@Æ`=OV?T=>�Q�;=M�N?O VCO�@XO Ou@�T�>�NR;CO `�G�M���O?W�OF`=Oz[�Ê V_@XT=oA@XO?WHOiq4G�;C>RSFTzqYO�>�@�NFÇ�BRN�T���O�d?T-@@�GJ>�TA@C;CO�`FT�V?T�@ ³J±F¸ �¿��O-@�N?Z?�_GFd¿Å Ñ ÂFÒ ³ [|FT}GCs9G�W�V?d=T Ðiq�T{M?T=W�O9;�`�T µ  ¸ Ó µ Ï�l}BC>9N?dHN?eFO=`�T�>-@XQ�< ��G�eFGH<öqÙ`RG�V?GH;C`�G�;J`FT `RTMFOJW�NF;R�CT4`�Gb<CO9UC`ROÙV_@cT�V?TA@gM�NCT_;CO�`FTnV=GFd?T_<�M?TFWRO9;C`RT�<Y`�Gb<?G�dFGRD?S�T�[�JOA@cOnM?O�`=OnMFO�<JTTnM=T?W�O�;J`FT µ  ¸ Ó µ ÏY`�N=eY�4��BF;=D?S�T��� µ�¯ Å ¯ Ð ·�  ¸  µ�¶�¯ Ï · Ï ¸ ÂnVCO-@�O�@�GJ>�TA@C;CO�@�Tk��O�d?T-@`�O�O_;CZ�dHNF<FG4VJOA@�O4O�@�TR>�N�;�Ok`HG�M��CO=W�O�`FO+q K�BFGwqhVCTA@I<=B?OY��GRe\q]O�>A@CN?Ç�B�NaTY�HO�dFT�@Æ���O�@JNCZ=��G�d ¯ � · Ô ±Aµ [Ê G�s9GCW9V=d?T · ;�SFT @XG=>FT�@�;JO ;FG�;R�FBCW �HO�dFT�@Aq GH;C>A@�GJ>�O�;C>RT G�;��9NCO VCO-@��FWHGF>A@cT�<W�fJdF>�NRV?dFT�< ;JO MR�?O?W�OR`FO `FO �9BF;JDFSFT G >�O?W_ÇFl?W BgWHO <C>-@�N�;�o ;JO ��TA@�WHO `RG B�WV?TH;?>�GHN_@XT VJOA@XO M?O�@�ORMF>�G�@XG�<ö[ Ê�Ç�<=G3@���G K9B?G G�<?>FO_< �9BF;=D?E�GR< GCs9G=M�BC>RO?W O_V?G�;?OH<V3@mT�MFG=`�NCW�GH;C>�TH< `HG NgW9V3@cG�<�<CS=T ;�O >HGFdFO�[ ~ T?W�T ;CSRT @cGF>FTA@C;COFW ;?GH;F��BgW �HO�dFTA@�qK9B�O�d?K_B?GA@nV_@cT�M�GR<�<CO=W�G�;C>=T GCs9GFMRB?>FOF`RT^;?O�<ÈW_G�<gW�OH<���N?M=O�@cG�<C>-@�N?>FT���GJs�G�M�BJDFSFT�`RO�9B=;FD?SRTi[

Ú ² �ÄCóm½I¼O½KÇp½�#KÅ'"3Õ6½g¿ÄÅ$"ÛR<�>�O�l O��=T�@�WHO�`RG�M��?O?WHOF`�O�T9;�`�G�T^�HO�dFT�@�`FT O�@�o_BgW�G�;�>�T�l M=T�V�N�O�`FT VJOA@�O TV?O�@��?W_G?>�@�T ��TA@�WHO�d `=O ��B�;JDFSFTi[ �JTA@c>FO�;?>=Tzq O�< O�dF>RG3@XO�DJE�G�< �HG�NC>RO�< ;CT_<V?O�@��?W_G?>�@�T_<4;?S=T4>�G3@cSFTÙGJ��G�NC>RTn;?O�<I��O�@gN?Z?�_G�N�<4B�>9N?dHN?eFOF`RO�<4VCO-@�OnMH�COFW�Z_»?dFO�[h|�B�W�OM���OFW�OR`FO�VCT-@ ��OHd?TA@ O��HB�;?D=SFT�O�MRG�<�<CO G�O�dF>RGA@�O�OHVFG�;JO�<�BgWHO MFp�VRNCO�`RT ��O�d=TA@T�@gN?o�NR;CO�d\[

Pr ogr ama exempl o: chamada por val or Descr i ção: est e pr ogr ama demonst r a a ut i l i zação das chamadas por val or . O val or r ecebi do pel a f unção é al t er ado at r avés de um pr ocessament o, mas quando a f unção r et or na o val or or i gi nal per manece i nal t er ado. #i ncl ude <st di o. h> #i ncl ude <coni o. h> voi d MudaVal or ( i nt i A) ;

Page 87: Logica Programacao Aplicada V2.2008

87

voi d mai n( voi d) { i nt i Quant i a = 10; pr i nt f ( " Ant es da chamada da f uncao: %d\ n" , i Quant i a) ; MudaVal or ( i Quant i a) ; pr i nt f ( " Depoi s da chamada da f uncao: %d\ n" , i Quant i a) ; get ch( ) ; } voi d MudaVal or ( i nt i Quant i a) { put s( " Dent r o da f uncao! " ) ; i Quant i a = i Quant i a * 5 + 10; pr i nt f ( " Val or dent r o da f uncao: %d\ n" , i Quant i a) ; }

P�<?O�UJ`FOI`HG�<?>RGkV9@�TFo�@mOFW�Oa>�GCWYO�<?GFo�BRNF;?>RG��RTA@�W�O+v

Ant es da chamada da f uncao: 10 Dent r o da f uncao! Val or dent r o da f uncao: 60 Depoi s da chamada da f uncao: 10

Ê9ÇR<FG3@m��G K_B?G�O^�HB�;?D=SFT��9BJ`FOJx_OHd?TA@HØ�Ú�`�GJ�9NF;=G^BCW�O ��OA@CNCZF��G=d^dFTRMFO�d�M=TFW^T�W_G�<CWRT;?TJW9G�`FO���O�@gNCZF��G=d G�s�NF<J>�G�;C>HG�;COn�_B�;?D=SFT�W�O9NF;�Ø�Úi[¿ÛXW_Ç?TA@XO�>�GH;F�?OJW TbW9GH<gW�T ;?T?W_G<?S=T��HOA@JNCZ=��G�N=<�M=T?W9VFd=GF>FO=W�G�;C>HG�`HNC��G3@gG�;?>RG�<ö[

Ú ² ��Ä�óp½K¼O½KÇp½�#KÅ+"3á/ºm º+"ݺg¾'ÃƵ·½yJT�@�W�O�`�G�M���OFW�OF`ROÙTH;?`�G�T�G�;?`�G�@XG�DJT `RTÙO-@�o9BXW9G�;C>RT l�VCO_<F<?O=`�TÙM=T?W�T VCO-@��FWHGF>A@�T+[j N�o9;FNJ��NFM?O K�BFG�O9<�ORdF>�G3@cO�DFERG�<��HG�NC>RO�< ;JT�< VCO-@��FWHGF>A@cT�<�OF�HG?>FO-@�SFT O ��OA@CNCZF��GRdB�<�O�`FO�V?OA@cOkMR�?O?WHOA@rO�@�TR>�N�;CO+[ÛR<�>�G¿>Fp9VFN=M?T�<FG3@cZIG?s_VFd?T-@�O�`FT�;?TYV3@�p=s9NCWRTkM=O�V�UC>_B?dFT�[

Ú ² ¶�mÐ" Â+,K¼tºI¾K¸ÉÅI¶�� ½$" ÂpÃe�=º��³½+" ª¹e�/ÇKÅ�� ¼O½Kµ·¾X¨�ª �Ê à WHO�N�;9ØXÚ à VJT�<�<FBRN}`FT9N=<uOA@�o_BgW�G�;�>�T�< à O�@�o�M à G à OA@co?� à NR;C>A@JU=;F<FGFM=T�<�BF<JOF`FT_<V?O�@XO�@XG�MFGRÇFGA@ðT�<aVCO�@��FW�G=>A@XT�<À`�Oad�NF;R�COa`�GaM?TFW�O_;C`�T�[O�@mo�MY» ~ T_;C>�l�WkT�;FfCWHGA@�Ta`�G¿OA@XoHBgW9G�;J>FT9<a;COYd�NF;R�COa`�GIM=T?W�OH;?`FTO�@moF�4»���T_;C>�GRN3@�T�VCO�@mOÈB�W�O�WHOF>�@gN?e�`HGkV�T9;C>HG�N3@�T_<IV�OA@XOYM?O�@mO�M?>HG3@�G�<Ê V_@XT=o�@�O=W�OuOt<?G=o�B�N�@ WRT9<C>-@�OuOtBJ>�NFd�N=e?O�DJS�T}`�T�< O�@�o_BgW9GR;?>FT_<�VCO_<F<?O=`�T�<uVCO-@�OW�OHN�;3ØcÚ\[

Pr ogr ama exempl o: ar gument os par a mai n Descr i ção: est e pr ogr ama r ecebe par âmet r os do Si st ema Oper aci onal ( uma st r i ng qual quer ) e i mpr i me a st r i ng ao cont r ár i o. #i ncl ude <st di o. h> #i ncl ude <coni o. h> #i ncl ude <st r i ng. h> / * Par a o st r l en* /

Page 88: Logica Programacao Aplicada V2.2008

88

voi d mai n( i nt ar gc, char * ar gv[ ] ) { i nt i I , i N; i f ( ar gc ! = 2) { pr i nt f ( " ERRO: Fal t ou o Nome par a I NVERTER\ n" ) ; } el se { i N = st r l en( ar gv[ 1] ) - 1; f or ( i I = i N; i I >= 0; i I - - ) { pr i nt f ( " %c" , ar gv[ 1] [ i I ] ) ; } } get ch( ) ; }

ÛR<�>�G V_@mT�oA@cO?W�OuV_@XG�MRN�<CO�<JGA@^M���OFW�OR`FT�O�VCO-@�>9N�@ `FO d�NR;F�?O�`HG M?T=W�O9;�`�T�MFTJW T;?TJW9G4V?O�@XOnNF;���GA@�>HG3@A[]Ê_B4<?GY�FT-@ÀGJs�G�MRB?>FOR`FT4OnVCO-@�>9N_@À`FT4M?T?W3VFNFd?OR`FT�@9q Tn;?T?WHG�O<FG9@ NR;g�9G3@m>9NC`RT V_@XGRM�N�<�O <?G9@ NF;=MFd�B=U?`FT ;CT9< NC>�GR;F< `RT V3@mT���G?>RTiq M?TFW9B�W�G�;J>�GM���OFW�OR`FTI`HG���Pi@�o_BgW�G�;�>�T�<aV?OA@cOIT��9@�TRoA@XOJW�O��4Ø���@cTFo�@mO?W¿P�@�o9BXW9G�;J>�<FÚ\[P�<?O�UJ`FOÈVJOA@XOYG�<J>�GkV�@XTFo-@�OFW�O�V?T=`�GA@�NJOÈ<JGA@3vÛR;�>�@�OR`FOz[Fv1P v Õ ß9NR;g��GA@m>�G���G�B?|=T?W9G×FGR<�VCT_<C>�Oiv]G?WRT�|�B=G��

Pr ogr ama exempl o: ar gument os par a mai n Descr i ção: est e pr ogr ama r ecebe par âmet r os pel o Si st ema Oper aci onal ( uma st r i ng de car act er es) e or dena ( col oca em or dem al f abét i ca) , i mpr i mi ndo-os em or dem al f abét i ca. #i ncl ude <st di o. h> #i ncl ude <coni o. h> voi d mai n( i nt ar gc, char * ar gv[ ] ) { i nt i I ; i nt i NumCar ; char cTmp; i f ( ar gc ! = 2) { pr i nt f ( " ERRO: Fal t ou o nome\ n" ) ; } el se { i I = 0; i NumCar = 1; whi l e ( ar gv[ 1] [ i I ] ! = ' \ 0' ) { i I ++; i NumCar ++; } i NumCar - - ; pr i nt f ( " Numer o de car act er es: %d\ n" , i NumCar ) ;

Page 89: Logica Programacao Aplicada V2.2008

89

i I = 0; do { i f ( ar gv[ 1] [ i I ] > ar gv[ 1] [ i I +1] ) { cTmp = ar gv[ 1] [ i I ] ; ar gv[ 1] [ i I ] = ar gv[ 1] [ i I +1] ; ar gv[ 1] [ i I +1] = cTmp; i I = 0; } el se { i I ++; } } whi l e ( ar gv[ 1] [ i I ] ! = ' \ 0' ) ; pr i nt f ( " Nome or denado. . . . . . . : " ) ; f or ( i I = 1 ; i I <= i NumCar ; i I ++) { pr i nt f ( " %c" , ar gv[ 1] [ i I ] ) ; } } get ch( ) ; }

P�<?O�UJ`FOÈVJOA@XOYG�<J>�GkV�@XTFo-@�OFW�O�V?T=`�GA@�NJOÈ<JGA@3vÛR;�>�@�OR`FOz[Fv1P v Õ ß�T-@�`�G�;�OÀx�y�Þ-×RÛ?É��9|=M?��o��J��B?ORÇNumer o de car act er es: 16 Nome or denado. . . . . . . : EFMNRTUVabcf ghj u

Ê9ÇR<FG3@m��G�K_B?G¿TÈV9@�TFo�@mOFW�OaT�@�`HG�;?O¿O9<hW�O9N=f�<?MHB?dFO�<¿G¿`�G�VCT_NF<ÀO9<hW9N�;Ff=<FM�B=d?O9<öqï`�GO�MJT�@�`RTkM?T=WkOa>FOHÇFGFdFOÆP j=~ :�:\[

Page 90: Logica Programacao Aplicada V2.2008

90

Capítulo 8 – Matrizes, Vetores e Strings

É?WRO WRO�>A@CN?e l BgWHO M?THdFG�D?SRT `HG �HOA@�N?ZJ�9G�NR< `�T W�GH<gW�T >�N�VCT K�B=G <CSRT@�GJ��G3@gG�;FM�NJOF`�OH<IV=GFd?T¿W9G�<�W�TÈ;JT?W9Gwq�BC>_N?d�NJeFO�;J`FT9»F<=G�`RGkBgW4U�;�`9N?MRG\[É?WRO�W�O�>�@�NFe�MJT9;F<RNF<?>�G�GJW�VCT9<=NFD?E�GH< M?T9;�>9UCo_BCO9<�`�G�W_GCW�p�@JNCO+[4Ê G�;?`RGA@XGRD?T W�O�NR<ÇFOHNCs�T M?T-@F@�G�<RVCT9;�`�G}OFT�V_@JNgW_G�N3@mT{GRdFG?W�GH;C>�T�q G T W�O�NR<�OHd?>�TuMFTA@R@XG�<=V?T�;J`�G}OFTfFdJ>9NgWHT4G�dFGJW�G�;C>RTi[r|?Obd�N�;CoHB?OFoHGCW ~ TÙV_@�N�W�G�N�@XT4G�d=G?W�GH;C>�T�<I`�G4BgW4��G=>FT�@�GH<C>�Zn;JOV?TH<�N?D=SFT ã ØXeFG�@�T�Ú�G�T^fJdF>�N�W�T G�<?>=Z ;CO^VCT_<FNFD?SRT |�»��wqÆT�;?`�G�| M=TA@�@cG�<FVJT�;?`�G OFTMFTJW�V_@CNgW9G�;J>FTa`�T¿��G?>�T�@A[É?W �9GJ>�TA@ul BXW�O W�O�>A@CN?e `�G BXW�O `9NgW_G�;�<CS=T G BCW�O j >�@JNF;Jo l BCW ��GF>FT-@�`HGMFO�@XO�M=>�GA@XGH<ö[

�m² ±;Õmºp¸ Å'"»ºI¶_¨ ÓJ½I¸-"»µ� ºK¶BÇpº�,K¼O½A76µ·¼tºI¾p¶)(IÅXªPÈ`�GFMRd?O�@�OHD?S�Ta`�GYBgW�O¿W�OR>A@JN?eYB�;=NC`9NgW_G�;�<=N?T�;JO�dÙØ ��GF>=TA@�Ú¿>�G?WYO�<?GFo�B=N�;C>HG��FT-@�W�O�v

t i po nome_var i ável [ t amanho] ;

>9N=V?Tiv Þ-NFVJTI`RG�`ROF`FTa`�GaM?O�`FOYG�d=GCW9G�;J>FTz[>�OJW�O�;R�CTzv]|�fCWHGA@�Ta`�GaG�dFGJW�G�;C>RT�<À`FO�WHOF>�@gNFe�Ø ã OR>�l¿>FOFW�O_;F�?T�»��?Úi[

Exempl o: dec l ar ação de um vet or i nt x[ 10] ; / * 10 el ement os: x[ 0] à x[ 9] * / Ê9ÇR<FG3@m��O�D?SRTivÙP d�NR;Co9B�OFo�GCW � ~ ��;?S=T ��GA@gN?��N?M=OuT9<ud�N�W9N?>�GH<}`FTu�9GJ>�TA@mÄFW�OF>-@�NFew[~ ORÇ�G¿OFTÈV9@�T�o�@XO?WHOF`FT�@�W�O_;C>�G3@ðOYG�<?>A@CBC>9B�@XOYM?T9;?MHNF<?O¿`�T�<À`�O=`�T�<w[

Pr ogr ama exempl o: ut i l i zação de vet or es numér i cos

Descr i ção: o pr ogr ama a segui r i l ust r a o uso de vet or es numér i cos. Pede-se que o usuár i o ent r e val or es i nt ei r os que são ar mazenados em um vet or . Ao di gi t ar - 999, a seqüênci a de ent r ada é t er mi nada e os val or es di gi t ados são most r ados na t el a. #i ncl ude <st di o. h> #i ncl ude <coni o. h> voi d mai n ( voi d) { i nt i Num[ 100] ; / * Decl ar a um vet or de i nt ei r os de 100 posi coes * / i nt i Count =0; i nt i Tot al Nums; do { pr i nt f ( " \ nEnt r e com um numer o i nt ei r o ( - 999 p/ t er mi nar ) : " ) ; scanf ( " %d" , &i Num[ i Count ] ) ; i Count ++; } whi l e ( i Num[ i Count - 1] ! =- 999) ; i Tot al Nums=i Count - 1; pr i nt f ( " \ n\ n\ n\ t Os numer os que voce di gi t ou f or am: \ n\ n" ) ; f or ( i Count =0; i Count <i Tot al Nums; i Count ++) {

Page 91: Logica Programacao Aplicada V2.2008

91

pr i nt f ( " %d" , i Num[ i Count ] ) ; } get ch( ) ; }

�m² H´p¸-"»µ·¾'Âg¶Û�W�� ~ ��qhBXW�On<C>-@�N�;Co4l4BXW���GF>FT-@Æ`�G�M=OA@�O�MJ>�G3@gG�<a>�G3@mW9N�;�O�`FT4GJWbe=GA@�T+[ É?WneFG�@�T4lG�<=VFGFMHNC�9N?M=OF`�TYM?T=W�T á Õ�ãiá [É?WROÈ<J>A@JNF;JoÈV�T�`�GY<?GA@ð`�G=��N�;FNJ`FO�VCT�@3v

#def i ne STR “ I st o eh um t est e”

� B�O9;C`RT�`�G�MFdJO�@�O?WHT�<�BgWHO MJT9;F<C>RO�;C>HG <�>�@�NR;Co�MFT?W�T à :�<?>=T GH� B�W�>�G�<C>HG à qÙ;�S�T�l;FG=M�G�<R<CZ�@�NJT O�MA@XGH<?M�GR;C>�OA@mW�T9< T á Õ�ã�á q VCT9N=< T MFTJW�VFN=d?O�`FT-@ �FO�e NF<R<CTO9B�>�T?WHOF>9N?M=O?W9GR;?>�G�[PÈ`�GFMRd?O�@�OHD?S�T�v

char szCode[ ] = " abc" ;

:�;=NFM�NJO�d�N?e=O <?e ~ T�`�G�M=T?W�T�BgW�O���GJ>�TA@b`�G��^G�d=G?W�GH;C>FT9<�[ÆÊ � BCO�@X>FT^GRdFG?WHG�;C>RT l�TMFO�@XO�M=>�GA@XGa|�É�Ü�Ü�qïK�BFG¿>�G�@�W�NF;JOI>=TF`�O�<ÀO9<a<C>-@�N�;Co_<�dRNC>�G3@cO�N�<�[j G �HT�M�Q G�<RV?G�M�NJ��N?M=OA@ BgW >�O?WRO9;F�JT `HG ��GF>FT-@ W�G�;CT-@ K�BFG O <?>A@CNF;?o�q T_<MFO�@XO�M=>�GA@XGH< GJs�>�@�OH< <?G�@�S�T N?o�;JTA@XOF`RT�<\[ |FT M=pF`�NJoFT O�Ç=O�NCsRTzq O <?GFoHB�NF;J>�G`�G=M�d?O-@�O�D?SRTÈN=;�N?MHNCO�d�NJeFO�<?e ~ TR`�GaM?TFW�T�BCWRO��_G?>�TA@ð`�GÀ>�@XQH<�MJO�@�OHM?>�G3@cG�<ö[

char szCode[ 3] = " abcd" ;

j TJW9G�;J>�G T_< >-@XQ�< V_@JNXW�G�N_@mT9< M=OA@XORMF>�G�@XG�< <CSFT O�>A@CN?Ç�B=U?`FT_< � <=e ~ TR`�Gi[ ÊMFO�@XO�M=>�GA@XG! }G}T{M?O-@�O�MJ>�G3@gG `HG >HG3@�W9NR;CO�DJS�T}`�O <C>�@�NR;Co�<?GA@mS�T}`�G�<=M?O�@�>ROF`�TH<\[|FT=>�G K�B=G N�<�>�T M3@CNCO�@mZ BgW�O <C>�@�NR;Co ;JSFT9»C>RGA@�W3NF;?OF`RO ØXB�W�O <?>�@�N�;Co <?G?W B�WMFO�@XO�M=>�GA@XG K_B?G WHOA@�M?O <=G�B��9NXW9Ú\[n:H<C>FT�o�G9@XOA@cZ BgW�O�WHG�;F<JOFo�GCW�`HG `9NCO=o9;Cp_<C>9N?M=TN�;�`9N?M=O�;?`FTaT�V3@�THÇFdFG?WROz[P�<À`�GRMFdFOA@cO�DFERG�<öv

char s[ ] = " abc" , t [ 3] = " abc" ;

<?S=TÈNJ`�Q�;C>_N?MFOH<��+v

char s[ ] = { ' a' , ' b' , ' c ' , ' \ 0' } , t [ 3] = { ' a' , ' b' , ' c ' } ;

|�GR<?>�GuM?O_<CTzq <FG O�<C>A@JN=;?o}��TA@ W9G�;JTA@ K�BFG Tu>FOFWRO9;F�CT G�<RV?G�MRN?��N=M?O�`FT�VCO-@�OuT�9GJ>�TA@�q T�<¿G�d=G?W�GH;C>FT9<È@XGH<C>�O�;J>�G�<¿<FG3@cSFT�N�;FN=M�N?O�dHN?eFO=`FT9<¿M?TFW Õ�ã [

8.2.1 Atr ibuição de valores a str ings

PÈO�>A@CN?Ç�BFN=D?S�Ta`�GÀ��O�dJT�@XGH<�O�<C>�@gNF;?o�<aV?T=`�GY<?GA@ð��G�N�>FOI`HG�`=T9NF<hW�TF`=T9<öv

char szPal avr a[ 6] ;

"  ¸�µ�·a· ÔR ¸�µm·$#

szPal avr a [ 0] = ' H' ; szPal avr a [ 1] = ' e' ; szPal avr a [ 2] = ' l ' ;

Page 92: Logica Programacao Aplicada V2.2008

92

szPal avr a [ 3] = ' l ' ; szPal avr a [ 4] = ' o' ; szPal avr a [ 5] = ' \ 0' ;

% Ò · Ï ®R±I· Å�Ó�Ï'&�( ± Ò ¸Aµ Ð ³�)+* Ò ¸-µX¯ Ï °�,+- Ò ¸�µX¯ Ï °/.�01#ÛR<�>�Oa��B�;?D=SFTYMFT�VRNCOITYM?T_;C>�G�fJ`FTa`�Gk<J>A@JN=;?o32YV?OA@cOÈ<�>A@JNF;Jo/�\[

st r cpy ( szPal avr a, " Hel l o" ) ;

�m² �uÓJ½Æ¸-"»µ� ºp¶�¨åÓ�,K¿È¸Éµ·Ç6µ·¼OºI¾m¶ µÄÅg¾'½I¿ ªP `RG�MFd?O-@�O�DJS�T `RG BgWHO W�O�>�@JN?e l N?`�QH;C>9N?M=O � `�GRMFdFO�@XO�D=SFT `�G BgW �_G?>�TA@�qO�M9@�G�<=MFG�;C>RO�;?`=T9»F<=G�G�;�>�@XGaMFT�dRM��FGJ>�G�<ÀO�<ÀT9BC>-@�O9<À`�NCWHG�;�<CEHG�<\v

t i po nome_var i ável [ t amanho_1] [ t amanho_2] . . . [ t amanho_n] ;

Ê�B�>�@�TYG?s�GJW9VFdJTzqïOFoFT�@mOÈVJOA@XO�BgW�OÀW�OF>-@�NFeaÇ�NJ`�NCW�GH;F<�N�T�;?O�d�v

t i po nome_var i ável [ al t ur a] [ l ar gur a] ;

|�GR<?>�G�G�s9GCW3V?dFTiq�T�UF;J`�NFMFG�`FO G�<JK�BFG3@c`FO�NF;J`�G?sRO�O�<�dHNF;��COH< Ø�O�dJ>9B_@cO�Ú G�T�`RO`9N�@�G�NJ>FO N=;?`�GJs�O^O_<�MFT�dHBF;?OH< Ø�d=OA@XoHB3@�OHÚ\[ � BJO�;?`=T ��OJW�T9<�V_@�G=G�;?MH�?G3@nT_B�d�G9@�B�W�OW�O=>�@�N=e�;�O�dRN�;Co�BJOFo�GJW�� ~i� qÆT UR;C`9NJM�GbW�O9N=<n��`�N9@XG�NC>=OÙ�HOA@JN�OnW�O_NF< @XO�VRNC`�OJW9G�;C>HGK9BJG�T U�;C`_N?M�G�� G�<JK�BFG9@�`�Oi[�P3d�lCW�`_NF<�<CT�T�<�UF;?`HNFMFGH<b��OA@�NJO?W `�G e=GA@�T�OFT ��O�d?T-@`�G=M�d?O-@�O�`FT+q�W�GH;CT9<�BgW þ�W�O_<�O^d�NF;Jo�B?OFoHGCW � ~�� ;?SFT��HO�N���G�@�NC�_N?MFOA@�N�<C>RT^VCO�@�O�TB�<=B?ZA@CNCTz[4��O9;�>�G3@ðT�<aU�;C`_N?M�G�<a;?O¿��O�N�s�O�VFG3@mW9N?>�NJ`FOYl�>FO-@XGF�=OI`RTÈV_@mT�oA@cO?W�OF`RTA@A[

Pr ogr ama exempl o: ut i l i zação de mat r i zes

Descr i ção: o exempl o a segui r pr eenche uma mat r i z , seqüenci al ment e por l i nhas, com númer os de 1 a 200. #i ncl ude <st di o. h> #i ncl ude <coni o. h> voi d mai n ( voi d) { i nt mMt x [ 20] [ 10] ; i nt i I , i J , i Count ; i Count =1; f or ( i I =0; i I <20; i I ++) { f or ( i J=0; i J<10; i J++) { mMt x[ i I ] [ i J] =i Count ; i Count ++; } } f or ( i I =0; i I <20; i I ++) { f or ( i J=0; i J<10; i J++) { pr i nt f ( " %d " , mMt x[ i I ] [ i J] ) ; } pr i nt f ( " \ n" ) ; }

Page 93: Logica Programacao Aplicada V2.2008

93

get ch( ) ; }

�m² ¶�ÓJ½I¸-" µ� ºK¶3Ç'º@´m¸-"»µ·¾'Âg¶�JO�@XO M9@JNCOA@mW�T9< BgW�O W�OF>-@�NFe `HG <C>-@�NF;Jo�< `�G��9GCWHT�< BF<JOA@ B�W�O WHOF>�@�N=eÇ�N�`9NgW_G�;�<FNJT�;?ORd�`�G4M=OA@XORMF>�G�@XG�<öq T_;C`�GÈT4>�O?WHO�;���T4`�TÙU=;?`�N?MRG4G�<JK�BFG3@m`�T4`HG?>�G3@mW9N�;�OT ;Ff�W�GA@�T `HG <�>�@�NR;Co9< G T >�O?WHO�;��CT `RT UR;C`9NJMFG `�N3@cG�NC>FT GH<FVFGFMHNC�9NJMFO TMFTJW�V_@CNgW9G�;J>FT¿W�Z?s3NgW�Ta`�GaM?O�`FO�<?>�@�N�;Co+[

Exempl o: mat r i z de st r i ngs

char nome[ 3] [ 10] ; +- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | +- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | | 0 | | | | | | | | | | \ 0 | | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | | 1 | | | | | | | | | | \ 0 | | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | | 2 | | | | | | | | | | \ 0 | +- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +

ÊÙGCs_GCW�VJdFT4MA@gN?OnBCWRO�W�O�>�@�NFeY`�G65k<?>A@CNF;?o�<kM?TFW67�M?O-@�O�MJ>�G3@gG�<\[�COA@�O4O�MRG�<�<�O�@�WHT�<BCWRO <J>A@JN=;?o�VJOA@X>HNFM�B=d?O�@b`�GC�_GCW�T�< G�<RV?G�M�NJ��NFMJO�@�O9V?GH;CO9< T UR;C`9N?MRG GH<?K�B=G3@X`=TzqIT_B<FGJ��Oiq ;?T?W_Göº ã ¼iq ;CT?W9G�º�2F¼�[

�m² Ã�ßľpµÁÃgµÁ½p¿·µ ½'&)(pÅHÇ'º�Ós½g¸ " µ ³ºI¶

t i po nome_mat r i z [ t am_1] . . . [ t am_n] = { l i s t a_val or es} ;

d�N=<?>FO�8H��O�d=TA@�GR<\v d�N�<�>�O `�G MFT�;=<?>FO_;C>�G�< <=G�V?OA@cOF`�OH< VJTA@ ��U_@co�B?d=O�< K9B?G <CS=TMFTJW�VCOR>�UC��GHNF<¿G?WY>�NFV?TYM?T=WkTa>�N�V�TkÇ?O_<?G¿`�O¿W�O�>A@CN?ei[

Exempl o: i ni c i al i zação de mat r i z

i nt i [ 10] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9} ;

8.5.1 I nicialização de Matr izes de Caracteres P^N=;�N?MHNCO�d�N=e?O�DJSFTn`�GkW�O�>�@�NFeFGR<Y`�G4M=OA@XORMF>�G�@XG�<öq�T9B4<FNXW�V?dRG�<CW�GH;C>�G�<C>�@�NR;Co9<�qÀVCTR`�G<FG9@���G�NJ>FO `�G}��Z-@�N?OH<}�FT�@�WHO�<\[�Ê V9@XTFo-@�OFW�OuO <=G?o9BFN�@ NFd�BR<C>�@�O O_<}`�NC�HGA@�<JO�<��T�@�W�O_<�`�GYN�;=NFM�NJO�d�NFeJO�D?SRTi[

Pr ogr ama exempl o: i ni c i al i zação de mat r i zes de car act er es

Descr i ção: o pr ogr ama a segui r i l ust r a a i ni ci al i zação de st r i ngs. #i ncl ude <st di o. h> #i ncl ude <coni o. h> voi d mai n ( voi d) {

Page 94: Logica Programacao Aplicada V2.2008

94

char szSt r 1[ 128] =" I ni ci al i za" ; char szSt r 2[ 128] ={ " Out r a i ni ci al i zacao" } ; st at i c char szSt r 3[ 128] =" I ni ci al i za como st at i c" ; char s[ ] = { ' a' , ' b' , ' c ' , ' \ 0' } , t [ 3] = { ' a' , ' b' , ' c ' } ; put s( szSt r 1) ; put s( szSt r 2) ; put s( szSt r 3) ; put s( s) ; put s( t ) ; pr i nt f ( " %c\ n" , szSt r 1[ 18] ) ; / / i mpr i me nul o – t em 10 car act er es pr i nt f ( " %c\ n" , szSt r 2[ 28] ) ; / / i mpr i me nul o – t em 19 car act er es pr i nt f ( " %c\ n" , szSt r 3[ 38] ) ; / / i mpr i me nul o – t em 22 car act er es put s( " f i m" ) ; get ch( ) ; }

8.5.2 I nicialização de Matr izes Multidimensionais

Exempl o: i ni c i al i zação de mat r i zes mul t i di mensi onai s

N�;C>:9zº;��¼öº<2F¼>=bý��wq?�öq@2iq4�zq?5�q@7iqA�iq?�=¾ ÿ þ9zº ã ¼öº ã ¼>= � 9iº�2F¼wº ã ¼�= 59zº ã ¼öº��?¼>= � 9iº�2F¼wº��F¼�= 79zº<�F¼öº ã ¼>= 2 9iº�5J¼wº ã ¼�= �9zº<�F¼öº��?¼>= � 9iº�5J¼wº��F¼�=�?¾

8.5.3 I nicialização de Matr izes sem Tamanho Û�W^BgWHO�NR;FNFMRN?O�d�N=e?O�D=SFT�`�G�BCW�ObW�O�>�@JN?e�qa<JG�;CSFT���T�@ÈGR<�V?GRM�N?��N=M?O�`=TÙT�>�O=W�O�;���T `ROW�O=>�@�N=e\qnG�;C>RSFT�T�M=T?W�VFN=d?O�`=T�@ M3@�NJOA@XZ BXW�O W�OR>A@JN?e o-@�O9;�`�G�T <FBJ��NFMRNFG�;J>�G�V?OA@cOMFTH;?>�G�@r>FTR`FT9<ÀT�<aNF;�NJM�NCOHd�NFe?OR`FT�@cG�<IV9@XG�<JG�;C>HG�<I;JOI`RGFM�d?O-@�O�DJS�Ti[

Exempl o: i ni c i al i zação de mat r i zes sem t amanho

char er r o[ ] = " er r o de l ei t ur a\ n" ;

Pr ogr ama exempl o: mat r i zes de car act er es e vet or es Descr i ção: est e pr ogr ama pede par a o usuár i o di gi t ar nomes e i dades e os guar da em doi s vet or es ( uma mat r i z par a os nomes e um vet or par a as i dades) . Ao f i nal da ent r ada de dados os nomes e as i dades são i mpr essos na t el a. Obser ve que na ent r ada de dados o nome é r ef er enci ado soment e pel o pr i mei r o í ndi ce. Admi t e- se no máxi mo 40 car act er es par a cada nome. #i ncl ude <st di o. h> #i ncl ude <coni o. h> voi d mai n( voi d) { char szNome[ 10] [ 40] ; i nt i I dade[ 10] ;

Page 95: Logica Programacao Aplicada V2.2008

95

i nt i I , i N; char cCh; i I = 0; do { cl r scr ( ) ; pr i nt f ( " Nome: " ) ; scanf ( " %s" , szNome[ i I ] ) ; / * ent r ada de um nome * / f l ushal l ( ) ; / * l i mpa o buf f er de ent r ada * / pr i nt f ( " I dade: " ) ; scanf ( " %d" , &i I dade[ i I ] ) ; / * ent r ada de uma i dade * / i I ++; pr i nt f ( " Cont i nua [ S/ N] ? " ) ; do { cCh = get ch( ) ; put s( " " ) ; } whi l e ( cCh ! = ' S' && cCh ! = ' s ' && cCh ! = ' N' && cCh ! = ' n' ) ; } whi l e ( cCh ! = ' n' && cCh ! = ' N' ) ; i N = i I - 1; / * numer o de el ement os * / cl r scr ( ) ; f or ( i I =0; i I <=i N; i I ++) { pr i nt f ( " | %s | %d | \ n" , szNome[ i I ] , i I dade[ i I ] ) ; } get ch( ) ; }

Pr ogr ama exempl o: soma de mat r i zes numér i cas

Descr i ção: est e pr ogr ama pede par a que o usuár i o i nf or me as di mensões de duas mat r i zes que ser ão somadas. As di mensões devem est ar no r ange de 1 a 10. O usuár i o ent ão i nf or ma os val or es cont i dos nas duas mat r i zes A e B. O pr ogr ama execut a a soma das duas mat r i zes e most r a o r esul t ado da soma C=A+B. #i ncl ude <st di o. h> #i ncl ude <coni o. h> voi d mai n( voi d) { f l oat a[ 10] [ 10] , b[ 10] [ 10] , c[ 10] [ 10] ; i nt col , l i n, m, n; cl r scr ( ) ; pr i nt f ( " I nf or me a ORDEM da MATRI Z: ( mxn) \ n" ) ; do { pr i nt f ( " Numer o de l i nhas ( m) : " ) ; scanf ( " %d" , &m) ; } whi l e ( m < 1 | | m > 10) ; / * m de 1 10 * / do { pr i nt f ( " Numer o de col unas ( n) : " ) ; scanf ( " %d" , &n) ; } whi l e ( n < 1 | | n > 10) ; / * n de 1 10 * /

Page 96: Logica Programacao Aplicada V2.2008

96

f or ( l i n = 0; l i n < m; l i n++) { f or ( col = 0; col < n; col ++) { pr i nt f ( " A[ %d, %d] = " , l i n, col ) ; scanf ( " %f " , &a[ l i n] [ col ] ) ; pr i nt f ( " B[ %d, %d] = " , l i n, col ) ; scanf ( " %f " , &b[ l i n] [ col ] ) ; } } pr i nt f ( " \ n" ) ; f or ( l i n = 0; l i n < m; l i n++) { f or ( col = 0; col < n; col ++) { c [ l i n] [ col ] = a[ l i n] [ col ] + b[ l i n] [ col ] ; pr i nt f ( " C[ %d, %d] = %f \ n" , l i n, col , c [ l i n] [ col ] ) ; } } get ch( ) ; }

Page 97: Logica Programacao Aplicada V2.2008

97

Capítulo 9 – Introdução a Ponteiros.

B9B�@XO�;J>�G�O GCs9GFMHB?DFS=T `�G B�W V3@mT�oA@cO?W�O O�dFo�B=;�<u�RO�d?T-@XG�< <JSFT OA@ W�O�eRG�;?OF`RT�<�G�W��O�@JNCZ=��G�NF<w[ÀÉ�W�Ob��OA@CNCZ?�9G=dÙl�BCW�;CTFW�GbO9<=<?T�MHNCOF`�T�O�BgW�O VCT9<=NFD?SRT ;?OÈW9GCWHpA@JN�OÙ`RTMFTJW�VFBJ>FO�`FT-@3[>B�G�V=G�;?`RG�;C`RTÙ`RT >HN�VCT�`�GÈ��O�@JNCZ=��G�d ØXVJTF`�G�<FG3@4B�W�O���OA@JN�ZF��GRd MH�CO�@9qN�;�>zq���d=TFO�>iqÆ`RT�BFÇFdRGFÚ�O�K9BCO_;C>9N�`FO�`�G `�GbW9GCW�p-@�N?O^;JG�MFGH<F<?ZA@CNCO V?OA@mO OA@�WRO�e�G�;JZ�»FdJOl `�N?�RGA@XGH;C>�G\[�P3dRlCW `_NF<�<CT+qtM=OF`�O ��OA@CNCZF�HG�d GH<C>�Z O�<R<CT�M�NJOF`�O O BgW�O f�;FN=M?OV?TH<�N?D=SFTI`HG�WHG?W�p-@�NCOz[|�GR<?>�G M?O9VFUJ>�BFdJT{<?G�@�Z�OHV_@�G�<JG�;C>FOR`FT{B�W >9N=V?T�`HG ��OA@CNCZF�HG�d�MH�COFW�O=`�O�VJT�;?>�GHN_@XT�[�JTH;?>�GHN_@XT�<�O-@�W�ORe�G�;JO?W^V?T�<RN?DFE�GR<�`�GbW9GCWRp�@�NJOi[rPAdFlJW�`�G B�<COR`FT9<�M?TJW�T���O�@�N?Z?�_G�N�<�qV?TH;?>�GHN_@XT�<{>FOFWHÇ�lCW V?TF`HGCW <?G�@ BF<?O=`�T�<tMFT?WHT�O�@�o_BgW9GR;?>FT_<u`�G �HBF;?DFERG�<öq�T K�B=GVFG9@�W9NJ>�G�WHO�;�N=V�B?d=OA@ �RO�@�NJZ?�9G�NR<�G�Wk��BR;?DFERG�<ö[

m² ±�Û×Ü µ�.mµ·¾KÇKÅ:ºI¾KÇ6º$" º$&IÅp¶BÇKºJ¼OºI¼�À'"»µÁ½P d�NF;Jo�B?OFoRG?W � ~z� VJT�<�<FBRN^B�W T�V=G3@XOF`RTA@ÙMH�CO?WHOF`�TC��T9VJG3@XOF`RTA@n`HG^GH;C`�G3@cG�D?T���Ø;D3Ú\[ÛR<�>�G�T�VFG9@XOF`FT-@Ù@gG?>FT-@�;?O�T�G�;C`HG3@XG�DJTÙ`HG B�W�O���OA@�NJZ?��GRd ;JOÙWHGCW�pA@CNCOz[ðÊ G�;C`HG3@�GFD=T`�GÀW�GJW�p�@�NJOkl¿OA@mW�O�e�GR;?OF`RTkGCW4BCWRO���O-@�N?ZJ�9GFd¿`�Ta>�N�V�TÈVCT_;C>�GRN3@�T+[

Pr ogr ama exempl o: usando oper ador & Descr i ção: Est e pr ogr ama al oca na memór i a um val or i nt ei r o, um val or r eal e um car act er e. Todos os val or es são i ni ci al i zados. Em segui da, usando a f unção pr i nt f os val or es são exi bi dos na t el a, j unt o com suas posi ções i ni c i ai s de memór i a. #i ncl ude <coni o. h> #i ncl ude <st di o. h> voi d mai n ( voi d) { i nt i Cont = 1; f l oat f Val or = 5. 5; char cLet = ' a' ; pr i nt f ( " val or i nt ei r o = %d \ t \ t ender eco i nt = %X\ n" , i Cont , &i Cont ) ; pr i nt f ( " val or r eal = %f \ t \ t ender eco f l oat = %X\ n" , f Val or , &f Val or ) ; pr i nt f ( " val or char = %c \ t \ t \ t ender eco char = %X\ n" , cLet , &cLet ) ; get ch( ) ; }

Û�sHG�M�BJ>FO9;C`RT T V_@mT�oA@cO?W�Oiq BgW�O <JO�U?`FO VCT9<F<RUg�9G=d <FG3@CNCO Ø�O d?T�M?OHd�NFeJO�D?SRT `�GW9G�W�pA@CNCOÈVJTF`�GY<?G�@ `9N���G3@gG�;?>�G¿`�O=K�BFGFd=O�WRT9<C>-@�O�`FO�;?TY<FG�B¿MFTJW�VFBJ>FO�`FT�@�Ú\v

val or i nt ei r o = 1 ender eco i nt = 12FF74 val or r eal = 5. 500000 ender eco f l oat = 12FF78 val or char = a ender eco char = 12FF7C

P�`_NF<�VCT_<FNFDJSFT4`�GR<?>�GH<a`�OF`RT�<�;CO�W�GJW�p�@gN?OÙVCTR`�Gn<?G�@�@�G�V9@XG�<JG�;C>FOR`FOnV?GRd?O4�9N�o9B_@cO�O<FGJo9BFN9@3[�ÊHÇ�<?G�@��9G K_B?G T�< �HO�dFTA@gG�< NR;C>�GRN_@XT�< ;�BXW M?T=W9V�BC>ROF`FT-@ M?T=W <�N=<?>�GJW�OT9VJGA@�OHM�N?T�;JO�du`�GE5�2 Ç�N?>�<}THM�B�V�O?WF��ÇG9�>HG�<\[nPA<R<FNCW+q�Ê ��O�d?T-@ NF;?>RG�N_@cT N ~ T�;J>T�MRB�VCOH��Ç'9�>�G�<ÙO VJOA@X>HN_@4`FT G�;J`�GA@cG�D?TI�'2_yFy�J��zqÆT���OHd?TA@�@XG=O�d���x�O�d?T-@kTHM�B�V�OH�ÇG9R>�G�<�O V?O�@X>�N9@k`RT�G�;C`�G�@XG�DJTK��2HyRy�J�L�G�T���OHd?T�@YM��CO-@�T�M�B=V?OH��Ç�9�>RGÙO^VJOA@X>HN3@`�TYG�;J`�GA@XGRD?T���2HyRy�J ~ [

Page 98: Logica Programacao Aplicada V2.2008

98

1

5.5

‘a’

int iCont=1; &iCont

float fValor=5.5;&fValor

char cLet=‘a’;&cLet

12FF74

12FF78

12FF7C

4 bytes

4 bytes

1 byte

1

5.5

‘a’

int iCont=1; &iCont

float fValor=5.5;&fValor

char cLet=‘a’;&cLet

12FF74

12FF78

12FF7C

4 bytes

4 bytes

1 byte

ig. 8.1 – Disposição de dados na memória.

m² �7mºKÃƿĽ'"»½I¾pÇKÅ/¹ ½'"»µ×ÖE¹Æºpµ·¶/#pÅK¾I¸»ºIµ "»ÅI¶�JO�@XO `�G�MFdJO�@�O-@ BgW�O ��OA@CNCZF�HGFd VJT�;?>RG�N_@cTiq�`�GJ��G�»=<FG GH<FVFG=M�NC�_N?MFOA@tT ;?TJW9G `RO��O�@JNCZ=��G�d\q¿T >_NFV?T�`RT���O�d?T-@�K9B?G�GRd?O^M?T_;C>�lCW^G V9@XG�M=GF`�G3@�T^;JT?W9G�`RO���OA@CNCZF��GRdV?T�@ÀB�WkO�<J>�GA@gN�<?M=TÙØ�M=Úi[ ÊkO�<J>�GA@gNF<FM?TYlaM��CO=W�O�`FTa`�GN�JT�V=G3@XO=`�TA@ð`�GaN�;C`_N_@�GFD=SFTO�-[Ê�G?s�GJW9VFd?TaO�<FG?o_BFN_@ð`�GCWHT�;�<C>-@�OaOÈBC>_N?d�NJeFO�D=SFTI`RT�<ÀT�VFG3@cOF`�T�@�G�<PDbG�M\[

Pr ogr ama exempl o: usando os oper ador es & e * Descr i ção: est e pr ogr ama al oca na memór i a um i nt ei r o e um pont ei r o par a i nt ei r o. Em segui da at r i bui ao pont ei r o o ender eço do i nt ei r o. Ut i l i zando pr i nt f most r am- se o val or do i nt ei r o, o ender eço onde i ni ci a a var i ável i nt ei r a, o val or da var i ável pont ei r o ( que ar mazena o ender eço do i nt ei r o) e o val or da i ndi r eção acusada pel o pont ei r o ( que apont a par a o val or cont i do no ender eço que el e ar mazena) . #i ncl ude <st di o. h> #i ncl ude <coni o. h> voi d mai n ( voi d) { i nt i Cont = 1; i nt * pC; / * Decl ar a a var i ável pont ei r o. * / pC = &i Cont ; / * At r i bui o ender eço de i Cont a pc. * / pr i nt f ( " val or i nt ei r o = %d \ t \ t ender eco i nt = %X\ n" , i Cont , &i Cont ) ; pr i nt f ( " val or de pC = %X \ t \ t val or de * pC = %d\ n" , pC, * pC) ; get ch( ) ; }

É?WRO{<?OHU?`FOuV?T�<R<FUg�9G=d�V?O�@XOuG�<C>�G V3@XT=o�@�O=W�O�l O{<?G=o�B�NF;J>�G ØmO�d?THM?O�dRNFe?OHD?S�T `�GW9G�W�pA@CNCOÈVJTF`�GY<?G�@ `9N���G3@gG�;?>�G¿`�O=K�BFGFd=O�WRT9<C>-@�O�`FO�;?TY<FG�B¿MFTJW�VFBJ>FO�`FT�@�Ú\v

val or i nt ei r o = 1 ender eco i nt = 12FF78 val or de pC = 12FF78 val or de * pC = 1

Page 99: Logica Programacao Aplicada V2.2008

99

P}�9N�o9B_@cO�O�<FGJo9BFN9@ NJd�BF<J>A@�O�O�<�NC>_BCO�DJS�T o�GA@mO�`FO�V?GRd?T�V3@�TRoA@�OFWROi[IP ��OA@CNCZF��GRdN�;�>�G�N9@�O T�MRB�VCO��^Ç'9�>�GR<�G^G�<C>RZ�O�@�WHO�e�GR;?OF`RO O^VCO�@m>9N_@4`=T^G�;?`RGA@XGFD=TK��2Hy=yQJGL�[hP��O�@JNCZ=��G�d V?TH;?>�GHN_@XT V?OA@cO NR;C>�GRN_@XT Ø�M�V ~ R GH<C>�O l O ��TA@mW�O M=TFW�T G=dFO l`�G=M�d?O-@�O�`FOHÚ�OA@�WRO�eFGH;CO�G�;C`HG3@�GFDJT9<�`�G�NF;J>�G�N�@�T9<ö[aÉ?>�NFdRNFe?O_;C`�T�T�T�V?G�@�O�`=T�@:D�VCO�@mOT�ÇJ>�G3@ T G�;J`�G3@�G=DFT `RT NF;?>RG�N_@�T+q T �HO�dFTA@ `�T GH;C`�GA@cG�D?T l O�>A@CN?Ç�B=U?`FT ORTV?TH;?>�GHN_@XTi[S�COA@XO T�Ç?>HG3@ÙT���ORdFTA@�`�T�N�;C>HG�N3@mT O�VCO-@�>9N_@�`�T V?T�;J>�G�N�@XT�BF<?OH»�<?G TT9VJGA@�OR`FT�@ð`�GYN�;C`_N_@XG�DJS�T�Ø�M�Ú\[

1

12FF78

int iCont=1; &iCont 12FF78

int *pC;

Variável iCont

Variável pC

pC=&iCont;

*pC

1

12FF78

int iCont=1; &iCont 12FF78

int *pC;

Variável iCont

Variável pC

pC=&iCont;

*pC

Fig. 8.2 – Disposição de dados na memória.

m² ��m6¿È¸Éº+" ½g¾'ÇpÅsÅa¹Æ½p¿·Å'"f¸$,Kº:Å�#KÅI¾I¸»ºpµ " Å�"»ºm º'"»ºI¾'ÃgµÁ½Ê V�@XTFo-@�OFW�OtO <?G?o_BFN3@�W�T9<C>�@XO T B=<?T�`FT T�VFG9@XOF`FT-@�`�G�N=;?`�N9@XGFDFS=T Ø�MRÚ VCO�@mOW�T=`9NC�_N?MFOA@ðT¿��O�d=TA@r`=O��HOA@JNCZ=��G�dw[

Pr ogr ama Exempl o: usando o pont ei r o de i ndi r eção Descr i ção: Est e pr ogr ama al oca na memór i a um i nt ei r o e um pont ei r o par a i nt ei r o. Em segui da at r i bui ao pont ei r o o ender eço do i nt ei r o. O val or do i nt ei r o é modi f i cado at r avés do oper ador de i ndi r eção ( * ) . Ut i l i zando pr i nt f most r a- se o val or do i nt ei r o ant es e depoi s do uso do oper ador . #i ncl ude <st di o. h> #i ncl ude <coni o. h> voi d mai n ( voi d) { i nt i Cont = 1; i nt * pC; / * Decl ar a a var i ável pont ei r o. * / pC = &i Cont ; / * At r i bui o ender eço de i Cont a pc. * / pr i nt f ( " Val or i ni ci al de i Cont = %d\ n" , i Cont ) ; * pC = 30; / * Um novo val or par a i Cont , i ndi r et ament e. * / pr i nt f ( " Val or f i nal de i Cont = %d\ n" , i Cont ) ; get ch( ) ; }

Page 100: Logica Programacao Aplicada V2.2008

100

ÛR<�>�GYV_@XTFo-@�OFWROIO_V_@XG�<JG�;C>ROIO�<a<FGJo�B�NF;J>�G�<a<CO_UC`�O�<wv

Val or i ni c i al de i Cont = 1 Val or f i nal de i Cont = 30

~ TJW�TnV?T=`�G4<FG9@�T�Ç�<JGA@��HOF`�Tiq MJTFW�TnV ~ MFT�;J>�l?W4TnGR;?`�G�@XG�D?T�`RTnN ~ TH;?>iq OHd?>�G3@cO�;?`=T4T��ORdFTA@}K9B?G @�GR<�NC`HG ;CT G�;C`HG3@XGRD?T N=;?`�N=M?O�`FT V?TA@ V ~ q�OHd?>�G3@cO�»F<=G�T ��O�d?T-@�`=O��O�@JNCZ=��G�dYN ~ TH;?>i[1P��RO�@�NJZ?�9GFdYV ~ @�G�V9@XG�<JG�;C>ROÈBgWHOI�=TA@�W�Oa`�G¿O�MRG�<�<CTa�¿��O�@�NJZ?�9G=di[

m² ¶�Ò'¶ ½p¾KÇmÅ�#'ÅI¾K¸ÉºIµ " ÅI¶BÃÆÅp¼ ,m¾%&)ÅKºK¶�JT=`�GCWHT�<uBC>9N?dHN?eFO�@ �_BF;FD?EHG�< K�BFG @�G=M�GFÇRGCW OA@Xo�B�W�G�;J>FT9<UTWV�XZY\[^]_V�X�q >RO�d}K�BFG O�9B=;FD?SRT VCT�`RG W�OH;�NFVRB?dFOA@ T ��O�d=TA@ KHB?G @XGRMFGFÇRG\q W�O_< ;CSRT VCTF`HG O��RG?>�OA@ TO�@mo9BgW_G�;?>FTYG?W4<FNw[ÛR;�>�@XG=>FO9;C>RTiqn<?GF�=O `HG�<FG?�ROA@�WHT�< ORdF>�G�@�O�@�T�<���O�dJT�@XGH< `FOH<��HOA@JNCZ=��G�NR<^`RG�;C>-@�T `=O�9B=;FD?SRT `�GJ��G?WRT9< VCO9<F<JOA@ T G�;J`�G3@�G=DFT `FO��HOA@JNCZ=��G�d VCO-@�O O ��BF;=D?SFT+[ :�<J>FT lM���OFW�OR`FTÈVJO�<�<�O�o�GJWIO�@mo9BgW_G�;?>FT_<`T�V�XNX'acb�adXGe�f3gih\[\[Ê4V3@�TRoA@XO?WHOIO�<?G=o�BFN3@ÆN?dHBF<?>A@cOIOYB?>�N=d�NFeJO�D?SRTI`FO�V?OH<F<?OFoHGCW4V?TA@a@�G?�RGA@XQH;?M�NCO+[

Pr ogr ama exempl o: passagem de ar gument os por r ef er ênc i a

B�GR<FM3@CN?DFSFT+v�ÛR<C>HGnV_@cTFoA@XOJW�O4>�GJWnBgW�O4�HB�;?M=SFTnM3@CNCO�`FO�V?G�d?T�B�<FBCZ-@�N?TYK_B?G�@�G=M�GFÇRGYT��ORdFTA@ `RG�BCW�NR;C>�GRN3@�T�O=>�@�O=��l�<�`HG BgW�O�MH�COFWRO�`FO�V�T�@�@�GJ��G3@gQ�;FM�N�O�G�O�d=>�GA@mO�T��ORdFTA@ð`�T�NF;?>RG�N_@cTi[

#i ncl ude <st di o. h> #i ncl ude <coni o. h> voi d mai n ( voi d) { i nt i Cont =5; / * Pont ei r o par a i nt ei r o. * / voi d MudaVal or ( i nt * pI n) ; / * Decl ar a a f unção. * / pr i nt f ( " Val or i ni c i al = %d\ n" , i Cont ) ; MudaVal or ( &i Cont ) ; / * Passa por r ef er ênci a. * / pr i nt f ( " Val or f i nal = %d\ n" , i Cont ) ; get ch( ) ; } voi d MudaVal or ( i nt * pI n) / * Recebe o pont ei r o. * / { * pI n += 10; / * Al t er a o val or do i nt ei r o. * / pr i nt f ( " Val or dent r o da f uncao = %d\ n" , * pI n) ; }

P�<?O�UJ`FOI`HG�<?>RGkV9@�TFo�@mOFW�OaO9V_@gG�<FGR;C>�OaO�<a<FG?o_BFN�;C>HG�<hW�G�;F<JOFo�GR;�<öv

Val or i ni c i al = 5 Val or dent r o da f uncao = 15 Val or f i nal = 15

|�GR<?>�G4GJs�G?W_V?dFT4TRÇ�<?G�@���OFWRT9<YK�B=GaOY��O�@gN?Z?�_GFdnN ~ T�;?>4lnNR;FNFMRN?O�d�N=e?OF`ROÈM=TFW4T��HO�dFT�@=kj�qÆW�T�<J>A@�O�`=O�V?GFd=O���B�;JDFSFT V9@�NF;J>F�z[rP�MH�CO?WHOF`�O�� �HB�;?D?SRT��9BC`RO�x_OHd?T�@4l��HG�NC>ROV?OH<�<CO_;C`�T�»R<?G�T}G�;?`RGA@XGRD?T `RO���O-@�NCZF�HG�duN ~ T9;�>iq ;�S�T T ��O�dJT�@^`=O���O-@�N?Z?�_GFdi[�P�9B=;FD?SRT �3BC`�O�x9O�dFT�@ @�G=M�GFÇRG T G�;?`RGA@XGRD?T `=O ��O-@�N?ZJ��G�d GiquMFT?W O N=;�<C>-@�BFD?SRTM�VJ:�;gÃQ=l� ã q�<CT=W�OH� ã O�T���O�dJT�@�K_B?G�@�G�<RNC`�G�;CO�d?THM?O�d�NJeFO�D=SFT�`�G�W_GCW�p�@JNCO�O�dJT�M?OF`ROV?O�@XO�O���O�@gN?Z?��GRd�N ~ T�;J>iq�K�BFG�GR<C>�Z�;?T�G�;J`�GA@cGFDFT O�VJT�;?>FOR`FT�V?G�dJT VJT9;C>HG�N3@mTz[YÊ

Page 101: Logica Programacao Aplicada V2.2008

101

G�;�`�G3@gGFDFT4`=O���O�@gN?Z?�_GFdnN ~ T�;?>4;?S=T4l�O�d?>HG3@XO=`�TiqrMJTFW�TÙVJTF`�G�<=G3@Æ��G�@�N?��N=M?O�`=TÙVFGFdJTV3@mT�oA@cO?W�O�GCs_GCW�VJdFT�O <?G=o�B�N�@A[n|?TF>HG K�BFG TH<�G�;?`RG3@�GFD=T�< ORK�B�N W�T_<C>�@mO�`FT_<�V?GF`�GJW<FG9@r`_NC��G3@gG�;?>RG�<À`FOFK9BJG�dFGH<�T�Ç=>�N?`=T�<I;JTÈ<JG�B¿M?TFW9VRBC>�O=`FT�@3[

Pr ogr ama exempl o: ender eços na passagem por r ef er ênci a Descr i ção: Est e pr ogr ama t em uma f unção cr i ada pel o usuár i o que r ecebe o val or de um i nt ei r o at r avés de uma chamada por r ef er ênci a e al t er a o val or do i nt ei r o. O pr ogr ama t ambém most r a o ender eço da var i ável na memór i a, r ef er enci ado pel o pont ei r o. #i ncl ude <st di o. h> #i ncl ude <coni o. h> voi d mai n ( voi d) { i nt i Cont =5; / * Pont ei r o par a i nt ei r o. * / voi d MudaVal or ( i nt * pI n) ; / * Decl ar a a f unção. * / pr i nt f ( " Val or i ni c i al = %d\ nEnder eco do val or = %X\ n" , i Cont , &i Cont ) ; MudaVal or ( &i Cont ) ; / * Passa por r ef er ênci a. * / pr i nt f ( " Val or f i nal = %d\ n" , i Cont ) ; get ch( ) ; } voi d MudaVal or ( i nt * pI n) / * Recebe o pont ei r o. * / { pr i nt f ( " Ender eco do val or dent r o da f uncao: %X\ n" , pI n) ; * pI n += 10; / * Al t er a o val or do i nt ei r o. * / pr i nt f ( " Val or dent r o da f uncao = %d\ n" , * pI n) ; }

P�<?O�UJ`FOI`HG�<?>RGkV9@�TFo�@mOFW�OaO9V_@gG�<FGR;C>�OaT�<a<FG?o_BFN�;C>HG�<È@XG�<FB=d?>�O=`�T�<wv

Val or i ni c i al = 5 Ender eco do val or = 12FF7C Ender eco do val or dent r o da f uncao: 12FF7C Val or dent r o da f uncao = 15 Val or f i nal = 15

�JT=`�GCWHT�<YT�ÇR<?GA@��HOA@�K_B?G�T4G�;C`HG3@�G=D?T4O�M=G�<F<JOF`�TnV=GFdFO��_BF;FD?SRT��9BC`RO�x3ORd?T�@�lYT�W_G�<CWRTG�;�`�G3@gGFDFT�;CT�K�B?O�d�@�G�<RNC`�GbT4�HO�d?T-@�`�G�N ~ T_;C>z[�ÊÙT_V?GA@�OR`FT�@�Ø�MFÚ�V?G�@�W�NC>HG4K�B=G <JGO�M=G�<F<=G�T¿��O�dJT�@ðK�B?Gb@�G�<RNC`�GY;CTYG�;?`�G�@XG�DJTzqïO�dF>�G�@�O9;�`FT9»CT+[Ê V�@�T�oA@cO?W�O O <?GFo�BRN_@ B?>HNFd�N=e?O V?TH;C>�G�N9@�T9< V�O�@�O >-@�T�MJO�@ T ��OHd?T�@ `RG `9BCO_<��O�@JNCZ=��G�NF<}`HGFM�dJO�@�OR`FO9<}`�GH;C>�@mT `�G}W�OHN�;ö[ÙP ��BR;?D?SRT}Þ�@�THM?OJx_ORdFTA@XGH< @�GFMRGFÇ�GuTH<V?TH;?>�GHN_@XT�<aV?O�@XOa`�BCO9<h��O-@�N?Z?�_G�N�<�[

Pr ogr ama exempl o: t r oca de var i ávei s at r avés de r ef er ênc i as

Descr i ção: est e pr ogr ama t em uma f unção cr i ada pel o usuár i o que r ecebe os ender eços de doi s i nt ei r os e f az a t r oca dos val or es at r avés do acesso aos val or es r esi dent es naquel es ender eços. #i ncl ude <st di o. h> #i ncl ude <coni o. h>

Page 102: Logica Programacao Aplicada V2.2008

102

voi d mai n ( voi d) { i nt i Pr i m=1, i Sec=2; voi d Tr ocaVal or es( i nt * pI n1, i nt * pSec) ; pr i nt f ( " Ant es da t r oca: pr i mei r o=%d, segundo=%d\ n" , i Pr i m, i Sec) ; Tr ocaVal or es( &i Pr i m, &i Sec) ; / * Envi a os ender ecos* / pr i nt f ( " Depoi s da t r oca: pr i mei r o=%d, segundo=%d\ n" , i Pr i m, i Sec) ; get ch( ) ; } voi d Tr ocaVal or es( i nt * pI n1, i nt * pI n2) / * Recebe os pont ei r os. * / { i nt i Temp; i Temp = * pI n1; * pI n1 = * pI n2; * pI n2 = i Temp; } P�<?O�UJ`FOI`RTÈV�@XTFo-@�O?W�OaO�V9@XG�<?GH;C>�O¿O9<a<?GFoHB�NF;J>�G�<hW�G�;=<CO�o�GH;F<\v

Ant es da t r oca: pr i mei r o=1, segundo=2 Depoi s da t r oca: pr i mei r o=2, segundo=1

~ TJW�T VCTR`�G <?G3@�TRÇ�<?G3@m��O�`=T ;?T G?s�GJW9VFdJT `�O ��B�;JDFSFT Þ\@�T�M?OCx_O�dJT�@XGH<öq�T ��O�dJT�@N�;�>�G�N9@�T `�G NcÞ9G?W_V^l�T�ÇJ>�N?`FT�O�>�@XO?�_l�< `RT THVFG3@�OR`FT�@�Ø�MRÚ\qYK9B?G O�M�GR<�<CO T ��O�d=TA@@�GR<�NC`HG�;?>�GY;?TYG�;J`�G3@�G=DFTa`FO��HOA@JN�Z?�9GFd�[P�< ��O�@�NJZ?�9GRN�< Nd��@CNgW G N j GFM <?SRT ��O-@�N?Z?�HG�NF< NR;C>�G�N9@�O9<�[ P M��CO=W�O�`FO OÞ�@mT�M?OCx_O�d?T-@XG�<�BC>�N=d�NFeJO�;JSFTnTb��O�d=TA@I`HGÙN j GFM�G NQ�_@�NCW�G <=NgWâqÆM��CO=W�O�`FO_<�O�<?G�B=<G�;�`�G3@gGFDFT�<w[

Page 103: Logica Programacao Aplicada V2.2008

103

Anexo

Ctrlchar

null ctrl-@ 0 0 NUL 32 20 Space 64 40 @ 96 60 `

start of heading ctrl-A 1 1 SOH 33 21 ! 65 41 A 97 61 a

start of text ctrl-B 2 2 STX 34 22 " 66 42 B 98 62 b

end of text ctrl-C 3 3 ETX 35 23 # 67 43 C 99 63 c

end of xmit ctrl-D 4 4 EOT 36 24 $ 68 44 D 100 64 d

enquiry ctrl-E 5 5 ENQ 37 25 % 69 45 E 101 65 e

acknowledge ctrl-F 6 6 ACK 38 26 & 70 46 F 102 66 f

bell ctrl-G 7 7 BEL 39 27 ' 71 47 G 103 67 g

backspace ctrl-H 8 8 BS 40 28 ( 72 48 H 104 68 h

horizontal tab ctrl-I 9 9 HT 41 29 ) 73 49 I 105 69 i

line feed ctrl-J 10 0A LF 42 2A * 74 4A J 106 6A j

vertical tab ctrl-K 11 0B VT 43 2B + 75 4B K 107 6B k

form feed ctrl-L 12 0C FF 44 2C , 76 4C L 108 6C l

carriage feed ctrl-M 13 0D CR 45 2D - 77 4D M 109 6D m

shift out ctrl-N 14 0E SO 46 2E . 78 4E N 110 6E n

shift in ctrl-O 15 0F SI 47 2F / 79 4F O 111 6F o

data line escape ctrl-P 16 10 DLE 48 30 0 80 50 P 112 70 p

device control 1 ctrl-Q 17 11 DC1 49 31 1 81 51 Q 113 71 q

device control 2 ctrl-R 18 12 DC2 50 32 2 82 52 R 114 72 r

device control 3 ctrl-S 19 13 DC3 51 33 3 83 53 S 115 73 s

device control 4 ctrl-T 20 14 DC4 52 34 4 84 54 T 116 74 t

neg acknowledge ctrl-U 21 15 NAK 53 35 5 85 55 U 117 75 u

synchronous idel ctrl-V 22 16 SYN 54 36 6 86 56 V 118 76 v

end of xmit block ctrl-W 23 17 ETB 55 37 7 87 57 W 119 77 w

cancel ctrl-X 24 18 CAN 56 38 8 88 58 X 120 78 x

end of medium ctrl-Y 25 19 EM 57 39 9 89 59 Y 121 79 y

substitute ctrl-Z 26 1A SUB 58 3A : 90 5A Z 122 7A z

escape ctrl-[ 27 1B ESC 59 3B ; 91 5B [ 123 7B {

file separator ctrl-\ 28 1C FS 60 3C < 92 5C \ 124 7C |

group separator ctrl-] 29 1D GS 61 3D = 93 5D ] 125 7D }

record separator ctrl-^ 30 1E RS 62 3E > 94 5E ^ 126 7E ~

unit separator ctrl-_ 31 1F US 63 3F ? 95 5F _ 127 7F DEL

Tabela ASCII

Dec Hex CharDec Hex CharDec Hex CharName Dec Hex Char

Non-Pr inting Characters Pr inting Characters

m<n<n�o�prq<q\s<s�s�tuo<mwvyx{z�|<x�t_};~����Gt��<~�};q;��s��<n�x;�y�;q�x<|{���<�;�y��q��<x<|�z<z�tum{n<���

Page 104: Logica Programacao Aplicada V2.2008

104

Bibliografia º��J¼>�_:��RP j=~3� :XÞRP q��_O�oH;FG3@��-B � O?W�OJW�T�>FT+q j N�<C>HGCW�O�<À`�G¿|�BgW_G3@XORDFSFT+q�2 ã=ã 2\[B9N=<�VCT_;FUC��GRdIG�Wâv ����� V�[½��M�[ B�;?GH<FV\[ Ç3@�Ä��RW�O9B�@JNgÄ=Þ9|?Ä j NF<?>R|�BCWz[�VC`���q OHMFG�<F<�O�`FTYG?WzvjXÄ ã 7CÄ�2 ã�ã L�[º�2=¼>��ÛFÜ�Êzq4��OHN3@�>RT�;ö[�Û=dFG=>A@���;RN?MFO:B9NCo_NC>�ORdi[ j S�T���O9BJd?T^v4��O/�9@�T_;IÖCT=TO�=<wq?�G7Q7d5w[º�5C¼>��ÛJ|�B_ÛRÜ j ÊH|iq�ÛJdFd�N�T�>F>+[��3d=o�G�Ç9@�OÈÖJTFT�d=GFO�;JOkGaM�N3@cM�B�NC>RT�<À`�GaM��?O?�HGFO?W_G�;?>FT+[ j S�T�JOHBFd?T v��_M��w@mO � » � N?d�d¿`FT�Ö3@�O_<FNFdwq?�G7dJ�J\[º��R¼ j :���Ê�|y�9:iq ~ �JOA@Xd�GR<\[ à �9@�TRoA@XOJWÈ:?`HG�;?>HN?��N=G3@h|=O?W�N=;Co ~ T�;C�HG�;C>_NCT9;F< à [ j ;�NFVRV?GF>H<\v�?>=>9VövèÄFÄ ���Q� [m<=;�NFVRV?G?>9<�[½TA@coiq OHMFG�<=<CTkGJW65G��`HG�OFoRT�<?>=TI`�G�2 ã=ã L\[ºyjg¼hP�d?o�TA@CNC>FWRT9<öq��G737QJI»ðP3`A@CNCO9;�T��TROFK9B=NCWY`�G�Ê_d�NC�HG�N3@�O ~ @gBFe\q�?>=>9VövèÄFÄ9G?K_BFN�VJGi[ ;=MFG\[mB���@��+[½ÇA@�ÄHOF`�@gNCO9;CT=Ä�M?ÄRO9VCT_<C>9N?d=O?Ä�ORd?o�TA@CNC>FWRT9<ö[��C>FWzq1P3MRG�<�<CTYG?WSj`�G¿��B=d��?Ta`�G�2 ãFã L\[ºm¾=¼N�R|FÉCÞ � q óBË^Ô8ÑBÖHÒèâJr=ÙHÔ@ÒHÑ8ÐHÏ:Ô8ÎHÑBÖUò�ÖBÛBËtÕ/Í8Î^ñ)Ð^ÌUçJËHÖèâ§üùâ

�/»�É�»�N-Z�À/¼�|>¾��I���{¾�x�¾���À{~���»�Â�»�½�P�¿{~��P»�»�Â�»]N�¼�y/¼�|a~��|�PFÞRP-ÜRÛ�q y?G3@X`HN�;CO_;C`FTz[1PABJ>FTFW�OHD?S�Ta:�;C`_BF<?>�@JNCOHdk»:2d�aÛ�`9N?D=SFTz[ j SRT��OHBFd?T v �_@�NFMJOzq��7�7/Jö[��Ê=Êl�F:R|\q¡BRO�;\[ ~ VCOA@XOYdFGHNCo�T�<a»ðx_T�d�B�W�G��\[ j S�T���O9BJd?T^v ÖFG9@G�JGRdFGG9zq��G7Q7�j�[�cP3� j Pîq��3@CNF<\[4�9N=M3@�T9<�T��F> ~ vï`�NFMJO�<\q <?GFo�@�G?`RT�<�G¿>�@gBCK9B?GH<ö[ j SFT��JO�BJdFTiv4��O��_@�T9;Ö?T=TO�=<wq?�G7Q7�2i[jF~Q� :HÜ�BCÞîq � GA@cÇ�G3@c>i[ ~ M?T=W9VFdFG=>FTYG�>FTR>FO�dw[ j SFT�CO�BFdJTiv��HO��9@mT9;aÖCT�T��?<\q��G737�2�[P�×mPAÉd�gÊzq Ûg��GA@m>�T�; ~ T9NXW9Ç3@cOI`�G�q P9d?o�TA@CNC>FWRT9< R y=BR;C`�OJW�G�;C>RT�<¿G��_@�Z�>�NJMFOi[

¢ Ó ¸�µ�± Ò ¶�·R¸  µc¯F·�¯ ÒIÐ ± Ï?Ò�Ó=Ô ¸F·R®F± ÒP�V�T9<C>_N?dFOÀÞ�B3@cÇFT ~ »¿É�;FN���GA@�<RNC`�O=`�G ~ OF>�pRd�N?M=OI`�G��=G=d?T�>FO_<I»��G7Q73�\[P�V�T9<C>_N?dFOÈy=B�;�`�O?W_G�;C>�TH<�`RO4Ü=NR;Co9B�OFo�GCW á ~ á R¿~ ÛFyRÛ�Þ���GF`�NJO�;FGRN3@�O R �H@XTF�+[���O-@XMFTH<yRN=<FM��=Ç?T�@�; R 2 ãFãRãP�V�T9<C>_N?dFOÈÜ�p�oHNFM?Oa`�G��9@�TRoA@XO?WHO�DFS=T R¿~ Û�y=ÛXÞ���GF`�NJO�;FGRN_@XO�»��H@XTF�+[ ��OHBFd?TÈÜJT�V=G�< R2 ã=ã�ã