有趣的c好玩的程序设计cc++.pdf
1.功能:求三个整数的平均值。程序如下:include /*载入头文件 stdio.h*/void main。/*主函数 main*/(int a,b,c,d;/*定义 a,b,c,d 为整型变量*/a=105;b=75;c=85;d=(a+b+c)/3;primf(d=%dn”,d);/*显示”d=某数”并换行,某数是d 的值*/getchar。;/*等待用户,按任意键退出*/return 0;)2.功能:由键盘输入多边形的边数,求其内角和。程序如下:#include void main()(/*辨别多边形是否成立,不成立重新执行do-while语句间的命令*/do(int x;printf(nn=n);scanf(n%dn,&x);/*由键盘输入x 的值*/printf(dn”,(x 2)*180);/*显示内角和,公式为(x-2)*1807/*辨别多边形是否成立,不成立显示“Error”,成立显示“Right”*/if(x=2)printfCErrorNn*);elseprintf(Rightn);)while(x=2);/*do-while 语句*/getchar();return 0;)3,功能:由键盘输入两个数,显示器上显示较大数。程序如#include int big(intjnt);/*创建整型变量函数big*/void main()(int x,y;scanf(%d,%d,&x,&y);printf(big is%dn,big(x,y);/*输出big函数的值,因为main函数与用户自定义函数big无关系,所以printf后的输出项表是 big(x,y),而不是 big(n1,n2)7getchar();return 0;)int big(int n1,int n2)/*用户自定义函数 big*/(if(n1n2)return n1;/*返回 n1 值*/elsereturn n2;/*返回 n2 值*/)4.功能:由键盘输入一个等腰三角形的层数,画一个这样的三角形。程序如下:#include void main()(intij.n;printf(n:);scanf(%d,&n);for(i=1;i=n;i+)/*循环n 次,每 次 输 出 一 行*/(for(j=1;j=n-i;j+)/*输出该行前面的空格*/printf();for(j=1;j=2*i-1;j+)/*输出该行中的星号*/printf(*);printf(n);)getchar();return 0;)注释:不能输入太多的行数,如10000。5.功能:由键盘输入一个最大值,求 2 到这个最大值中的所有质数(素数)。程序如下:#include#include /*数学文件*/void main()(int n,m,flag,i,j,num=1;printf(n:);scanf(%d,&n);printf(2-%d:n,n);for(i=2;i=n;i+)/*循环查找质数*/(flag=1;m=(int)sqrt(i);for(j=2;j=m;j+)if(i%j=0)/*条件为真时表示不是质数,退出for循环*/(flag=0;break;)if(flag=1)/*条件为真时表示i 是质数*/(printf(%4d,i);if(num+%10=0)/*每行最多输出10个数*/printf(n);)printf(n);getchar();return 0;)6.功能:显示保护屏幕。程序如下:#include /*综合库*/#include /*绘图库*/int main()int gdriver=DETECT;/*定义图象驱动器为 DETECT*/int gmode=DETECT;/*定义图象模式为 DETECT*/long n;/*定义长型变量n7initgraph(&gd river,&gmode,E:TCbgi);/*进入图象状态(警告:之间的是图象驱动器的路径,建议网友们设置为空,即只有叱或设为编程系统的路径,例路径是C:TC,那么就是输入C:TCbgi)7sleep。);/*暂停一秒,以保证无误差进入图象状态*/for(n=1;n=40000000;n+)/*画 40000000 个圆7(setcolor(rand();/*作图颜色随机*/circle(random(639),random(639),25);/*画圆,位置随机,半径为 25*/)getchar();return 0;)一段有趣的C程序最近在一个论坛发现了一段简单的C程序很有意思,其中蕴含着不少技巧,在此与大家分享一下。原程序如下:S i n c l u d e m a i n ()c h a r*x=*b#*0 0 0*#*2*0*#_.*5.*-#-.*54.#*2*6#*0 0*0.#”;w h i l e(_=*x/4)-=8,p r i n t f(n%*s +!,+,/+*x+%4*2);表面看起来很奇怪的代码,我把它放到VC+6下面编译,发现不能通过,提 示 .”未声明,对以上代码稍加修改,如下:Si n c l u d e m a i n (i n t _)c h a r*x=/,*b#*000*I#*2*0*#-.*5.*-#-.*54.#*2*6#*00*0.w h i l e(_=*x/4)_-=8,p r i n t f(n%*s +!,+,/+*x+%4*2):)细心的人已经看出来了,就是在m a i n 函数的参数“.”前面加上了变量的类型:i n t。此时,以上代码在VC6中就能够正常的编译和连接了。运行的结果如下:是用 _/”组成的单词“k n o c k e r”。下面我们来分析这个小小的程序,不过为了看起来直观,我把这个程序稍加改动:Si n c l u d e m a i n(i n t _)c h a r*x=*b#*000*I#*2*0*#-*5*一#一.*54.#*2*6#*00*0.#;w h i l e(_=*x/4)_-=8;p r i n t f(n%*s +!,+,/+*x+%4*2);首先来看看m a i n 函数参数,这个参数的名称比较奇怪 _,我们看着有些不习惯,但它确实是合法的变量名称。另外,本来我们常见的m a i n 函数一般都不带参数,如果有参数是因为程序希望处理命令行格式下运行这个程序所需要的参数,一般是这样的:m a i n (i n t a r g c,c h a r *a r g v),第一 个参数a r g c表示参数表中参数的个数,a r g c 是一个c h a r 型二维数组,保存着参数字符串。举个例子,如果我们在命令行下输入命令:d i r -s c:此时,a r g c 的值为3(包括命令本身),a r g v 此 指向字符串:d i r,a r g l 指向字符串:-s,a r g 2 指向字符串c:。那么既然m a i n 函数的参数通常要不没有,要不就是两个,而这个程序只有一个,这样做是否合法呢?答案是肯定的!我 在 关于C 语言中的变量中提到过,函数中的参数是保存在堆栈中的,所以这就涉及到一个谁来平衡堆栈的问题,是调用者还是被调用者。在使用 VC6编译器的时候,如果函数没有特别的声明,默认是调用者清理堆栈。换句话说,运行时库(r u n t i m e)调用m ai n 函数的时候,只传递一个参数给m ai n 函数,这一点它自己是知道的,当m ai n 函数调用结束以后,它在平衡堆栈的时候,只清除掉一个函数,因此不会出现任何问题。我们接着往下看,下面定义了一个c h ar 型指针变量x,指向一个字符串。接下来是w h i l e 语句,w h 下来_=(*x)/4),但表达式_=(*x)/4 的值不为0的时候就执行w h i l e 的循环体,然而表达式_=(*x)/4 是一个赋值语句,它的值又是多少呢?在这种情况下,通常赋值号右面的表达式的值就是整个表达式的值。第一次执行这个语句的时候,x 指向字符,对应的值为4 2,以此类推,当x=0 时,也就是字符串结束的时候,循环结束。接下来在原来的程序中是:=8,printf(n%*s +”_/_/_/+*x+%4*2);这里的逗号作用有些类似分号,但是逗号两侧组成的是一条语句,而分号则是两条语句。我们仔细看printf这条语句,它的格式字符串为:”n%*s,其中期s很少见,很多人不知道这是什么格式,不过我们可以在MSDN中找到这样的描述:If the width specification is an asterisk(*),an int argumentfrom the argument list supplies the value.The width argument mustprecede the value being formatted in the argument list.意思是说如果宽度用星号(*)来指定,则应该在参数列表中提供一个int型参数作为宽度的值。这样就清楚了,原来这个printf语句是用表达式_+_ 来控制字符串“外*s”的宽度,也就是替换其中的(*)。在仔细一看,原来格式字符串还没有完!完整的应该是:n*s+!_。这就奇怪了,字符串怎么和!_ 相加呢?其实也不奇怪,在这里!一是对变量一作了两 次“非”的操作,结果应该是。或 1。要明确的是,字符串作为参数传递给函数的时候,只是把字符串的首地址传递给了函数,所以字符串 n96*s的首地址就是字符n的地址,当这个地址加1 的时候,传递给printf函数的格式字符串就变成了组*s,所以这个+!一的奥妙就在于控制换行!是不是很有创后!当然了,下面的代码同样有创意,就是printf语句要打印的字符串参数:_/_/_/+*x+/4*2。经过刚才的分析,我 们 不 难 理 解 加 上 后 面 的 表 达式的用意了,同样是控制输出字符的个数,是一个“_/,两个,还是三个。那么关键就是后面这个表达式了:*x+%4*2。其实慢慢的分析也不困难,先执行*x%4*2,然后执行x+。所以,当在执行while语句的时候,x 会指向下一个字符!综上所述,这个小程序就是利用一个字符串来控制输出的例子,里面运用了很多技巧,对于初学者需要很好的理解,对今后的编程是很有帮助的!#include int main()(const short int c1=49920;const int c2=1073742008;int(*pf)()=(int(*)()&c2;printf(%c%cn,*(char*)pf()-19,*(char*)pf()+1)-49);return 0;)运行这个程序,屏幕上会出现一个:)很多人不懂其中的道理,在这里我给大家分析下代码。先看这两句:const short int d =49920;const int c2=1073742008;定义了两个局部变量,数值转换成16进制为:const short int c1=0 xc300;const int c2=0 x400000b8;其中变量C1的地址为:0X0012FF7C,占两个字节,C2的地址为:0 x0012FF78,占四个字节。这两个变量占据了连续的空间。变量赋值后,从0 x12ff78开始的内存单元存储的字节码为:B8 00 00 40 00 C3 o对应的汇编码是:moveax,4OOOOOhret接下来的这句:in t(*p f)()=(int(*)()&c2;分析如下:定义了一个函数指针,参数为N U L L,返回值为in t类型。这个函数指针,指向上面的汇编码。这样,后面执行p f(),就执行了这段汇编码。继续分析下面这句代码:printf(%c%cn,*(char*)pf()-19,*(char*)p f()+1)-49);先看*(char*)pf()-19这个表达式,执行了 了 p f指向的汇编代码,从汇编代码看,这个函数调用后的返回值是0 x400000,p f()前面的char*是把函数的返回值转换成一个char*型指针,这个指针指向0 x 4 0 0 0 0 0,前面再加个*号,表示取0 x400000地址的内容,由于是c h a r*型指针,因此从这个地址取一个字节。*(c h a r*)p f()-1 9表示的是从0 x400000取出的字节内容再减去19。接下来:*(char*)pf()+1)-49代表的意思是从0 x400000+1的地址取出一个字节内容在减去49。熟悉PE文件结构的朋友一定知道,对于exe文件0 x400000是内存加载的基地址。也就是说,0 x400000字节的内容对应的是0 x4D,0 x400001字节的内容对应的是0 x5A.这是我们常说的p e文件起始的两个字节JMZ这样,表达式*(char*)pf()-19的结果是0 x3A,表达式*(char*)pf()+1)-49的结果是0 x29察看ascii码表,输出就是我们看到的样子。总结:别看一个这么小的程序,但是其中涉及的知识面比较广不过在F8我用gcc编译通过,运行的时候出现的提示是:Segmentation fault原因我认为是编译器的ASCII不兼容,是吗?一个有趣的C程序关键词:C程序最近总做些无聊的事,迷迷糊糊。在论坛上看到一个有趣的C程序,有点意思,写下来。main(_)for(putchar(_+J!MpwfIZpv 1-1););输出的是:I Love You可以写成如下形式:#include main(int argc)(int i;char*s=J!Mpwf!Zpv1;for(i=O;putchar(si-1);i+)或者用指针形式:main()(int i;char*s=J!Mpwf!Zpv1;while(putchar(*s-1)s+;return 0;)解释:一是变量名,c语言默认类型为intmain(int argc)(for(-argc;putchar(argc+J!Mpwf!Zpv)J)main(int argc)(for(-argc;putchar(argcJ!Mpwf!Zpv 1-1);argc+)J)程序执行时,不带参数,argc=1,所以main()int i;for(i=O;putchar(iJ!Mpwf!Zpv1-1);i+)J)main()(int i;char*s=J!Mpwf!Zpv1;for(i=0;putchar(is-1);i+)一个用数组和下标实现的表达式可以等价地用指针和偏移量实现。即,如果pa是一个指针,则pai和*(pa+i)的含义一样。is=*(i+s)=*(s+i)=simain()(int i;char*s=J!Mpwf!Zpv1;for(i=0;putchar(si-1);i+)J)下面的这一段程序是我见过的最有趣的程序之一,如果和你编译运行的话,他能过计算p i的前800位数值。到现在还没有见过多懂这个这段程序的人#intclude stdio.hInt a=10000,b,c=2800,de,e f28001,g;Main()(F(;b-c;)Fb+=a/5;For(;d=0,g=c*2;c-=14,printf(“.4d”,e+d/a),e=d%a)For(b=c;d+=fb*a,fb=d%-g,d/=g-,-b;d*=b);)而结果是这样的:31415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861 1 7381 93261 1 7931 051 185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185#include main(int k)float i,j,r,x,y=-16;while(puts(H,),y+15)for(x=0;x+)I&IH%*#,fk&15)for(i=k=r=O;j=r*r-i*i-2+x/25,i=2*r*i+y/10,j*j+i*i 11&k+111;r=j);return 0;)#i n cl u d e i n t m a i n()i n t j,k,i;d o co u t z,I n p u t t h e w i d e:;ci n i;i f(i 2 0)co u t 2 0);f o r(j=l;j=i;j+)i f(j=l|j=i)f o r (k=l;k=i;k+)c o u t*;e l s ef o r (k=l;k=i;k+)i f(k=l|k=i)c o u t*;e l s ec o u t/,;coutendl;)cin.get();cin.get();return 0;)#include main(int k)int i,n=20;for(i=0;i n;i+)/n-printfreturn 0;)最小程序main()机器码程序C 语言有趣的编程2008-03-17 13:15原程序如下:elOO 3 3 f6 bf 0 20 b5 10 f3 a5 8c c8 5 0 2 50 68 13 1 cb e If be al 1bf 0 1ellb 6 57 b8 11 1 bb 21 13 89 7 4b 4b 48 79 f9 ad 86 eO 8b c8 bd ffff e8 20el3 4 0 3 d 0 1 74 la 7f 3 aa eb f3 2d ff 0 50 e8 f 0 5a f7 d8 8b d8 268a 1 aael4f 4 a 75 f9 eb de cb 57 bb 21 13 8b cl 40 f7 27 f7 f5 8b fb ba 11 14f 4f 4ael68 3 9 5 7f f9 52 8b c5 f7 25 f7 3 7 2b c8 95 f7 65 2 f7 3 7 95 2b e8fe e feel81 10 79 6 c6 6 fe 10 7 46 dO 14 dl dl dl e5 79 ec 5a b8 11 1 ff 74b 4b 48el9b 3 b dO 75 f7 5f c3 83 f7 83 a6 5d 59 82 cd b2 8 42 46 9 57 a9 c5ca aa lbelb4 4f 52 b4 92 3 f ab 6e 9e a8 Id c6 3 fc e 6a e7 ae bb 5f 7b 10 b8b4 f7 8elcd e2 bf 36 4e 39 9d 79 29 3f a f9 36 52 16 fb 5 e8 e5 a6 c2 e9 bO43 d3 a3ele6 cf d3 fd81 70 b3elff d6 la 9efd cbc2 c9dl124c 5e eO 63 58 86 bb 3e 9 cl 20 be cc 91 a3 47e7 4e ad f4 5f e3 30 e9 9 39 d7 e8 f9 f4 d2 44e8 d7 22e218 be e2eO 34 65e231 e2 50a5 b7 fOe24a 90 81fl 77 38ce 88 25 cf 30 4a a8 29 ae 3f 47 c6 2d 85 e9 73 54 13 b e68a 89bee263 a6 84 dl37 a9 2be27b ec 4a 8c90 e5 a3e293 f7 7f 317a 9c fe2ac db 5a 282e 31 6de2c5 cl 9c d831 bf 55e2de 26 b a48b de Ide2f7 ba d 474e 8f bOe310 2 el 6bd7 45 e7e329 c 5b a45a 8f 67e342 c4 639c 91 bOe35b ab 7860 64 fOe374 63 d94c f2 d3e38c c4 f8f9 62 77e3a5 90 3be2 81 25e3be 93 8e8d e9 5fe3d7 fd 5a187a be3c af4c60966a5575laf2585f ce 70 99 3 5f 42 bf eb 7 ae dO ca 5 22 8d 22de49f7fOda 8776 9b5 db cO 6a 2 e5 57 38 be 60 cb ac ba a5 3b 9dd8 6a 45a9 58c4 88ae 914a e871109136a22b4e2d4476ba3ce3d660 216da35e7612 cO c2 44 f2 5e bb e5d6 6a e5 60 46 eO da e5 b9eeea4e 11 55 8f a 92 eb db addf 6 95 71 67 71 40 ce dld 30 5 ff d4 lb ac If 32 65el 5d 5e 16 ed 97 48 6c 77 fb 81 86 e3 89 4b 3e de 27 86 lc dO 17 89 48 dl75 78 ea 21 91 13 cOba 52 10 64 f5 4a 50 b7575da8f9a618 bd8d d4d42bf454cf 78 aO ab f3 35 c6 b4 c8 90 8dec 46 22 15 23 84 30 81 5c df 616d f7df 9938 3b26 92 a3 If e5 3 a5 0 54 41 8 48 7c 26 90 33 82eO b9 fc 5 36 ac d9 49 91 ab 20 a2 63 48 89 ce 5cd3 e6 4c 8c 23 34 4e 20 51 93 5e3 6f 47 40 f4 f8 45 9b 83 f3 83 6 31 dO 0d9 ec f3 55 96 b8 d9 db 79 55 fl e5 8c 5e6d b4 7a 22 9b17f282e583 de2e bO67b 6eb5 dd 5b 46 f9 af ed 6 12 cf c9 Id fO f7 3b 16 2d c6 58 73b6 al 94 4d la 8 ff eb b7 6 80 c7 86 83 b6 b9 fd lc eO cc3 2e aOe3f0 2f b 3e 3 6b 29 el 27 85 1c ea 6d df b3 a3 ed 65 4a 9a 59 3b 54e 4b aee409 9e 27 fO 4d 3b c 4c 46 b7 e5 57 lb If If bb 80 86 f5 b7 ef 73 52bf 2c c7e422 ed a b7 81 2 f3 90 3e ee cc 6c eb f 38 1 6c 68 bl d 45 78 b2 ff6 83 bOe43c c4 33 df bl dl 91 98 le 81 a5 e2 59 9f f4 8c b6 72 8 a7 8c f6 ea3 b2 Ife455 d9 d3 23 fO 7c 5e 5f 68 61 8b 45 da Id 91 ec 8d 4e ea la 38 8594 aa ace46d f2 4 f6 c4 e5 92 8e 9a 4e 83 el 73 e8 cf 2a 5c 2b 7e fl 30 2 8ae6 28 lae486 3b ceff 8e d9e49f ce d641 bb 2de4b7 60 3344 a4 c8e4d0 c8 54ca 9 82 e3be 96a4 703f 9893 ceaa 7f eb 87 cd 8b 96 2d 9 59 7a aO la 43 62 9a 9e 4f7977bdcd 65 fa 2e 92 14 29 f7 6c 74 4b 49 60 80 bb ff9a 1 ee a6 a3 da be ba e9 f3 72 f4 7c c3 59 2 a669 bb b9 43 21 2c c4 ea 4a 5c 3f 75 60 f2 b4 91e4e9 a e9 a6 20 b9 76 50 ed 47 e9 fe 6d 41 34 13 2f 28 2f 4e f4 da e3c 78 6ce502 bl 79 87 45 98 a4 d4ff 2c Ide51a 21 0 15 b2 4e 5c c 2c3 b3 29 c2 4a 8b ed a6 54 e2 lb 31 62 60d 83 fa a2 f3 8a 5 12 72 4a c7 44 7c 91 d4be b a f2e535 70 523b de 8ce54e 53 a279 a3 83e566 45 784c f9 a4e57f 11 f93a 18 a8e597 fO e931 67 cde5b0 3d 7143 83 52fb8bb42cf46de5c9 ea 5d 8c6c c3 f8e5e2 e5 b9 d6df f bbe5fb cO c4 leb4 a2f9 e92f 1c6c 92c2 8683 fd6a 6911 d664 68df 89 de ff c4 96 73 c9 c ed d3 c9 8e 5c de 8e dl91 dd d6 df 6e 74 dl dd 34 60 8f 9e 32 7f 3b ec50e9e636c78b987bb52b207a 97 bO 9d 2d c dd 8a 26 cd 7d 8c 4c 5a 8acb4469566789 8c4a b9ea 13 eb 4e 3bfa 5c 8 c74 79 30 94be f6 64 fa 25 43 fa 6f e2 c834 9 ed 5f 33 42 62 d4 8a le 5bc3 e6 e688 a5 5fdebl99 aa6e 277 115f 31 eb 45 db f3 6c 9f 165b 59 8a If5c 28 c 9b46 61 51 ed72 df d4 cd If 7f 72 c6 82 2e 79 474 e 8 c 4 be 6 1 4 a 2 c 7 e2a d 9d 2 7e 6 2 d 1 4 99 8 2a a 2 0 4 9e 6 4 6 b e f f 9d4 b f f 5 53 64 b6 4d f 7 6 f d a 4 b 6 4 e d b 96 4 0 3 b 8 b b 5 d 4 8 5 6 4 c 6 0 2 cb e 9 f a 94 b 5 d b 7 c 98 e b b 1 3 a 7 b O 7 9 I d 7 e c 5 4 50 5 d c e c 65 a d f 2 3 8 6 b e d 7 a d 6 b 2 c 7 2 e 6 a a 6 1 2e 6 6 0 2 0 3 be d 4 b 5 6e 6 7 a 1 5 c 82 d b e 9fe 6 92 93 93a c f b 1 6e 6 a b 1 5 c 66 5 8 7 e ee 6 c 3 b d c ee f 9e 6a 7 7 f b 9 0d e 2 8b f f 29d5 74 a a d c e a 4 d 3 f f 1 4 f f b 5 3 5 4 8 8 f 17 2d 41 0 I f 99 4 2 6 9 9e 7 8 e 2 4 7 8 2 93 3 1 d O9a l bf d c 995c O8 0a 4f bc O1 4a 51 04 87 ec 5 3 7 8 a O 2 6 2 a 96 4 f 74 4 b 1 6 c 7 9c 8 d a d6 2 4 7d 8 c d2 0 c 9 4 12 7 f d 2 ce d 6 1 f 8 9b f 8 f f b a 3 9 5 07 43 c l l b 8 9 b 9 5 1 d 5e 3d ae 6 d c f O a a a 9d f 8 1 6 8e 6 f 5 3 b b 8 a e20 l b 90e 7 0 e 7 5 d f c d5 2 3 0 8 de 7 2 6 9f 7 a 6 4a 75 da 5d 3f b8 74 c5 d c df f 6 5 3 68 c7 3 6 f 9 c 67 89a b 67 7d be l6 2a f d 4a 5 3 6e 6 6 67 9 f b8 c d 6 a 43 5 8 a 9b8 3b O9f 3 7 3 c 1d ea 2 a 65 7c 2a O a 5 c 3 3 7 6 f 8 0 7 2 b e7 4 1 4 5 d 8 6 8 97 f 2 a a 1 c a l 6 c 7 c 9d 3 2 7 d a d 1 5 b l5 3 e 3 3 3e 7 3 f 8 a e d6 9 c 4 7 9e 7 5 7 a c 2 092 3 9 91e 7 7 0 e 2 f 9e a e d e fe 7 8 9 7 1 4 ab 6 7 c a 3e 7 a 2 6 2 96f 4 b 2 7 ee 7 b b 5 e b 4e c 3 3 c 8e 7 d 3 f O I dc O e 8 5 be 7 e c 3 c b de d 3 d 7 8e 9 4 9 d 4 c f d e 96 2 2 3 7 3 6 1 1 9d 7 f f O 4 d e O 6 2 3 1 b l c 71 e 8 3 c 6 a 8 c 3 2 c b 5 2 6 3 3 6 6 8 f 4 1 0 2 b 9c 2 1 4 f d f 5 d 6 0c 9727 b1 4b 25 07 d c a3 a e d8 e b f6 a f 37 e a 8a d f l4 82 37 b2 93 3 f 2 1 d d 6 c f 2 3 2 e 6 1 3 a 9f b a c 3 f 9 4 e 73 d8 1b l4 d 957 7 b 5 e d d 59f 9a c e 3 fa 4 5 7 d 5 a 8I d f 6 a 41 2 4 0 2 e1 7 6 f 8 7992 5a 4f a e f 98d b 8 4 1 67 4 5 b 9bd dd d1 72 98 8 02 e 8 6 f7 9 f l7 f 5 f 9 d 5 l a 5 a 4 5 f4 4 1 c 6 d 3 f e b 6 6 2 a5 3 9d 2e 4 5 9a d 8 7 d 2 c 1 7 a 8 6 e 1 5 4 8 1 3 3 9 5 3e 8 0 4 a d f 3 a 6 5 a 3 3 e 2 e f a c a 7 94 4 a I f b 4 d 8 7 e 4 7 8 a 8 e d e e 7 7 e3 4 c l 6 9e 8 1 d 7 f 6 a a a 6 6 5 8 1 8 3 1 2 4 7 2 1 3 2 2 3 4 8 a 5 6 3 6 8 7 d f c 2 d 8 e 3 f 7 1a 2 5 f 2 5e 8 3 6 8 b 8 d 4 7 8 f d c 9 4 596 2 0 5 1e 8 4 f c 4 e O 5 e e e 4 7 8 a 1 16 3 4 7 c 9e 8 6 8 e b a d 1 3 e f a 6 d 3 f ;e c 1 7 2 8e 8 8 1 8 5 5 5 1 8 e 95 a 3 94 :e 8 e 7 f Oe 8 9a e 4 a 7 0 f 8 f l 4 7 5 4 ,b a 2 7 5e 8 b 3 c 7 f 5 d O 3 1 d 7 d 2 8 a8 8 e 5 7 fe 8 c c 3 c 2 6 8 1 3 4 a O 3 2 a 398 1 9 6 fe 8 e 4 c O 6 2 9b a 3 c c 1 8 5 eb 5 d 7 3 9e 8 f c 5 2 e 2 6 f l 3 a O a 53 f d e b de 91 5 5 7 1 5 6 a a 3 a 3 3 e 8 ec 6 96 2 ee 92 e 6 d 5 9 8 3 7 d 6 4 7 2 c a2 5 a a 4 ee 94 8 e O 7 f f 5 3 2 4 7 3 e 7 c2 b l a Oe 96 1 5 7 e d 9d 3 c 2 3 d 4 4 54 6 8 5 d le 97 9 2 5 e e 7 d c b a 4 d b 1 291 1 4 a 7e 991 5 d c c 9f f 6 7 3 5 9 e ea e 8 a d Oe 9a 9 e 4 d 3 d a 6 f c 4 5 3 c 590 f b c be 9c l e 7 6 ba l 8 6 be 9d a 7 a 8 4b 9 3 3 5 9e 9f 3 b e 3 c4 a d O 6 ee a O c b b 2 76 4 3 9 5 be a 2 5 6 b b 3l a l c f 64 e 5 1 0 5 d 5 76 6 6 6 b 9 2 e ca f 8 0 4 c 8 a d 52 0 f c f l f 5 9.7 e 7 5 8 e 8 2 1e a 3 e b 8 d a 4 b 1 8 8 a 1 5 9d1 5 5 7 9 c l 9f 1 3 8 4 l b c 8 5 d b 95 d O 7 c 6 4a c f b 9 e O b b 4 0 d b 8 6 8 4 1 2 93 b 9 c 9 f 2 9c,6 4 5 b 5 8 5 6 2 7 f c a 5 d e O 3 0 b e 3 e 1 0 5 d,a a 8 f l 96 f 2 f 2 9 5 c 97 d e 47 d b 9d 6 c 6 33 2 d 3 2 7 c e f b b 9a b 4 l b 0 2 b d 6 d d e 7 3 0b O a c l c 6 d 6 0 3 a f 7 c 2 d b l e 6 d 7 f 6 8 f 3 52 5 1 8 6 e 7 3 b 2 a O f l c b 8 6 6 1 e 7 6 5 8 b 7 64 0 1 2 97 2 b d O 1 5 7 9 d e 1 9