PDA

View Full Version : گفتگو: ایا میشه 100فکتوریلو حساب کرد؟؟



..ali..
چهارشنبه 22 آذر 1391, 18:02 عصر
ایا میشه 1برنامه نوشت که nفاکتوریل را چاپ کنه؟؟؟؟
البته برای اعداد بزرگ؟؟چون پی سی فقط میتونه تا 20فاکتوریل را حساب کنه تازه اگه با لانگ تعریف کنی
مثلا 100فاکتوریل
ایا اصلا میشه؟؟کسی هست بتونه؟؟
:متفکر::متفکر::متفکر:

hadi0x7c7
چهارشنبه 22 آذر 1391, 18:11 عصر
بله میشه شما کافیه یه ضرب به صورت رشته ای بنویسی و با اون فاکتوریلو حساب کنی. مثل ضرب دوره دبستان.

Ananas
چهارشنبه 22 آذر 1391, 22:38 عصر
سلام.
باید از متغیر های اعشاری با ممیز شناور استفاده کنید نه نوع صحیح. با نوع اعشاری هم بهتره که از long double استفاده کنید که بیشترین دقت رو داره.

..ali..
چهارشنبه 22 آذر 1391, 23:47 عصر
بله میشه شما کافیه یه ضرب به صورت رشته ای بنویسی و با اون فاکتوریلو حساب کنی. مثل ضرب دوره دبستان.
چه جوری اخه ؟؟؟میتونی بنویسی ببینم؟؟؟

hadi0x7c7
چهارشنبه 22 آذر 1391, 23:58 عصر
باید از متغیر های اعشاری با ممیز شناور استفاده کنید نه نوع صحیح. با نوع اعشاری هم بهتره که از long double استفاده کنید که بیشترین دقت رو داره.
فکر نکنم FP ها دقتی بیش از 20 رقم به ما بدن.


چه جوری اخه ؟؟؟میتونی بنویسی ببینم؟؟؟

کدش طولانی و کلاسیکه ولی اگه تو سرچ فروم "ضرب اعداد بزرگ" رو سرچ کنی به نتایج خوبی میرسی. یا از اون بهتر گوگل

..ali..
پنج شنبه 23 آذر 1391, 08:14 صبح
تو انجمن ضرب اعداد بزرگ هست اما نتونستم بنویسم.کسی هست برنامه اش بنویسه؟؟؟

Ananas
پنج شنبه 23 آذر 1391, 09:47 صبح
برنامه ی فاکتوریل هست برای اعداد بزرگ تو همین سایت سرچ کن پیدا میکنی. رشته ای هم نیست به شکل باینریه اگه اشتباه نکنم. ببین ایده ی کار اینه که عدد رو در خودش ضرب کنی (توان دو) و به اضافه ی خودش کنی. و یا اینکه عدد رو به اضافه ی 1 میکنی بعد در عدد ضرب میکنی. این کار رو از یک شروع میکنی و تو یک حلقه اینقدر پیش میری که برسی به عدد مورد نظر مثلا 100 . بخاطر همین می تونی برنامشو به شکل باینری و فقط با تعریف تابع ضرب و جمع انجام بدی. شاید راهی حتی ساده تر ازین هم داشته باشه.

..ali..
پنج شنبه 23 آذر 1391, 16:22 عصر
برنامه ی فاکتوریل هست برای اعداد بزرگ تو همین سایت سرچ کن پیدا میکنی. رشته ای هم نیست به شکل باینریه اگه اشتباه نکنم. ببین ایده ی کار اینه که عدد رو در خودش ضرب کنی (توان دو) و به اضافه ی خودش کنی. و یا اینکه عدد رو به اضافه ی 1 میکنی بعد در عدد ضرب میکنی. این کار رو از یک شروع میکنی و تو یک حلقه اینقدر پیش میری که برسی به عدد مورد نظر مثلا 100 . بخاطر همین می تونی برنامشو به شکل باینری و فقط با تعریف تابع ضرب و جمع انجام بدی. شاید راهی حتی ساده تر ازین هم داشته باشه.
درست اما من 3ساعت هرچی رفتم ایت سایت اون سایت نفهمیدم.البته خودمم 2ساعتی فکر کردم نتونستم
:گریه::گریه::گریه::گریه::گریه: :ناراحت::ناراحت:

H_G_G_I
پنج شنبه 23 آذر 1391, 16:35 عصر
از unsigned long long
استفاده کن شاید بشه .

..ali..
پنج شنبه 23 آذر 1391, 16:50 عصر
از unsigned long long
استفاده کن شاید بشه .
نمیشه باید از طریق ارایه باشه چون بزرگه:گریه:

Ananas
پنج شنبه 23 آذر 1391, 17:05 عصر
درست اما من 3ساعت هرچی رفتم ایت سایت اون سایت نفهمیدم.البته خودمم 2ساعتی فکر کردم نتونستم
:گریه::گریه::گریه::گریه::گریه: :ناراحت::ناراحت:
سه ساعت که چیزی نیست اندازه ی یه پاس پیادس.
"فاکتوریل اعداد بزرگ" رو تو همین سایت سرچ کردید؟
http://barnamenevis.org/showthread.php?82100-%D9%86%D8%B8%D8%B1-%D8%AE%D9%88%D8%A7%D9%87%DB%8C-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%DB%8C-%D9%81%D8%A7%DA%A9%D8%AA%D9%88%D8%B1%DB%8C%D9%84-%D8%A7%D8%B9%D8%AF%D8%A7%D8%AF-%D8%A8%D8%B2%D8%B1%DA%AF&highlight=%D9%81%D8%A7%DA%A9%D8%AA%D9%88%D8%B1%DB% 8C%D9%84+%D8%A7%D8%B9%D8%AF%D8%A7%D8%AF+%D8%A8%D8% B2%D8%B1%DA%AF
http://barnamenevis.org/showthread.php?209877-%D8%A8%D8%AF%D8%B3%D8%AA-%D8%A2%D9%88%D8%B1%D8%AF%D9%86-%D8%B9%D8%AF%D8%AF-%D9%86%D9%BE%D8%B1-e-%D8%AA%D8%A7-10000-%D8%B1%D9%82%D9%85&highlight=%D9%81%D8%A7%DA%A9%D8%AA%D9%88%D8%B1%DB% 8C%D9%84+%D8%A7%D8%B9%D8%AF%D8%A7%D8%AF+%D8%A8%D8% B2%D8%B1%DA%AF

Ananas
پنج شنبه 23 آذر 1391, 22:52 عصر
بیتارو منفجر کردم : فاکتوریل 10000 =

0000000000000000 0000000000000000 0000000000000000 0000000000000000 0000000000000000 046AB3AE48966202 D0FDE097BFA88FAD C512AE8AFC0EA1D1
D376A4109F10105E 9E21F1E907151E85 F926B8D82737B903 0D572715FA32690B E8DD16867F348B98 1683CDA4BE4F9E25 9977E69C16905ECE E567D26742C1BA1C
DFDD1274A067C3B3 9020F8D500F1199A A73884607E93FE42 3A99F3646585B762 78922E3583C349CD 3368417A0E630A07 5839EC290393D2F6 69D948980B23BB11
4FAC5D62AC52E988 3C9E3B8E0CD6BF0D F411911F40D9F968 F8691630A6033E99 72C3090ED2C0ECB3 A3D8ACE0BE058877 CBB7E2BB8E9065AF 1D1EED955881CFA5
AB0A4E155F843112 03BA7489FDF5D08C AC67C97920E676FD 54A972B029728584 1D9EE665DFFF40BF 3F162CC2A4AC74BE 168D996EADC9FE38 B406AF8F23CAD528
527097E4247C49D5 2AEA83ABFD774721 10AD2DCA4C977E10 4E041386A942D62E 362E968B12BFC254 9A5A3CEFE5BB6B79 9E97D12F047AAB8E 219751F940689C32
78E3E64583FBC3AD 07D44745BF43FEB4 2A8B7A860906DD98 A5EAE125FE7F3A01 3383B23331796878 A2936E276A021F2F AE759567BC8A261A 4F1B8967CA3DEA6D
54FF6F97C97C791D CAEB6DBF4BDE55BF AA1CEB679941675D 1863A9A730E38009 9157BC0887A09E4B 3D255DEA2CE3FCBD AAB5A783D0C60DCE B7BE6194D9AE7DCC

515C4394CFA8B0FC 765DDCA6C64A5FE8 2883D6D2340F71EE 3CA84F60339742B3 BA82B5F05ECB540F D7E9A97C0A78E30F 26307137EFAA9AFF 7D462BC617E6ED6B
9A9EC63728D4CD5B 1A7F6FEA10DB8492 5E948DF375D23EF6 F7D912BF9C9AF213 874975B528B10FE2 B791B39D1BF875D0 1A65B3C17D97AD2F D2EB5ADC8A8A4B95
16024E92A37ED14D 6F087C5B99AC523E 7F1157817EAE8837 3990D19998B0A412 E8ADD60B47F61FFC D2336BC3C137857C 698BE679024789CE 95C19199B13A783F
56A7E15AC38E6315 5A08337A9D4305CF 94548F6788BA19AF 84E2C25578A34628 2E907C3380200A1A CF5C43EF3B974DA2 A962ACCA9CAEB1BF 88E1C4D91D1F3816
4A360CB6F5FB48B8 D18D9316023F1BFA 0590C4A68A4FC49D 4A17AC7D96DEE097 B3DC5C9E960636FC 9A8C6220E8F3D6D0 D7A79DD8861263A8 76B4B16B749C4AC6
B4DC708D08F20ACF 42CBF98B7F4B9ECE 0F979D35F2C1DDA2 9A8C313E23DDDAD3 0013AAB39B415A05 8A2043350DDC2FE9 AE3C66171FC1E8C5 4F59E53F734388A0
13B449EE0DD9B5EE EB432ECF6E60C14C DE94916E0154A2BA F84A3165A28CCBBC EB5017504673BC32 DA530E90C8D074DC 6F2071C36042D41F 8DECAC8968A61445
097CACF98FAE342E CFAF7F567EB7ED8D 11486C5C5290DA57 B6058D1799CE9433 0DAE1E672954E134 FDE55D5629AED6F4 99EF81AA7C8DBAC7 5CE7A391F23A0EA3

7CFC1509090E5D67 B3989A6D01535E08 3B499BB51B2338F5 98CE2AD3F3FA614C 2CA084442230989F 8B464AF87BF51928 7198F75949EACD7C 245EB00F1FB2B055
932FE4BC6EB0F7D6 520030D93EE1FEB0 EE237A1114E6E60A 49F3BF5FDFF37C3A 136EA5F9237D194E FA6A7D551A64325D 4708E784755CBEB0 326B906DF2161B54
38FF1F91DB3A6031 8BE09B6C19CE0B8B C2F5A8D11F5DBE8F 4A8C8FF47BEB5CF5 8EBDAA03B69D29D6 FF0C68115B753FAF 65DEB98D2568867B 18081532DA2159C8
17D0DEF17C0EDF71 94300DC14F751694 964043934A350EB0 821A42F8A651E4B6 6FD78DCA89C89D1F 8D1C12F30A87F430 7C58DA161DD92214 EC84FC4B2846F6E8
265497EBD458C198 32584FBF09437DF4 77FDE4DAB76E8A5E 45B78A23961A305D 5351E0A9335CB447 3D8B8B4E4B08094E 93063792CC136427 2CF4DF8953CB0730
2DD1BCEA4B8DA10F EDB4E201FD24FE4D 51DF15F9681FA913 8784167981B3EC1F 2D1DDF31E441CB77 06B553053348E796 70DE2A3F361C84AC A5CA4C582D19DDC3
431961929F21CA5D 5DBFBCE6004DA1E1 F43D44273BC5E9F7 EF49048BCA2752A3 7C586AA46F75C355 6E40EB317671DDAC 982869D64F56B2D4 3E249F75A9A6D1CB
C653FD797B3CC455 E0ED6A9B50A8C952 0390B14938A545BF 5345D6AD4E1866AD 9E97D054508A6E42 7F008549813A94D9 79F5F23BA1F79785 69F16A65FED6BE7A

CBE5C98ADE564E6A A6CC142FD7B66298 C9D4C336521D324D 5F077935CC1399D8 86CC10ABDC655349 15CD91CBC2DFB030 6BF73D81F4EF0443 E619E40B031AB33C
9960553EA696DEF9 9741C478A0CA7FC5 803E47BDF766BBF3 013EA912FD3B0AA3 5D223EA524ED2AB1 925719D95B9DD909 1B328A2333F50FF6 6F3320FC45A88855
F82CAFDCFAB6D5A6 3249080E51397400 3149B5EC731740CE 5B0479092EEDB086 FC3D31ABA7AB3ABA AD48605E37D5E82A D82F3FB34D97BE49 437A7349671B730C
E1C8BE8B4B7AE363 23C240EFBBF98EC3 A90E2EF496E4E1E1 B028DB99BFA5A893 3499205543522715 230A86AFDA04348D 7E8B7702D15DD2BD 96D7C379C507A041
3D4E9F5878B55FEA 0B08AADDC25B4F42 A76D3AE788F6EA6D AA6BB7C3BDFFEDE9 016FECB1C11759F0 61784127C7DA411A 7DA6515A8FC32D60 A9BC91BBA213BC7C
6DE230CA5FF5EB23 A759FD2876817C42 AC700B938FCA3D0C F04537858C05552D 15A90B8097F9DABF AB959360F0B28E37 09610060F4DF9352 82A025B0D61C5032
20B69582BEAEEAB7 0843C2C59585D8B8 C705975064C26D65 40AFD294B4B4A05A 9053D0917B0FCDBB E6B85F70BFC80175 8222402F44303D56 2A841EA945C7BD52
C464942738DFF502 183B9968FDEE9C14 F72F1143F2DDB48C 372AAA8301E89EC5 06CA67B412548375 A53844742FB70FCA 23796E3DDAF1B047 2CF2ADDB4EF0ABE6

691E00BC11B637E5 E819895DEB4BD024 31785EE0286F5445 78371E9829993524 D558886C6607986E 7B9F113EC7068998 A173BF8B045B0585 D065ACA7D20D71B2
38215C7DFF981310 E21C6EBB4753B34B 506776967A0234C1 EFDF988F4028E015 C6260BE9A69D8330 F71081A36447FAF7 EA5ED5F9FAB1255E 4AC5B935FF77A58A
ACC24EA6A3881B75 137377DF9734AD19 7B9E4DB8DFC6E4BB 56EF57B13C196E06 4B34E4E53C0DD398 6A2238965B1FBAE3 D2CBDD5F25F6060F 48867B89E848BBE0
F58A103C496697C0 7E6EB15CD1AA946E D19B79B178345DB2 B04150A73D0ADEC1 1C73675A7ABA5158 2B460D89BC5A32AA ED5694540EC894A9 A574588DC97FA84B
BDC03183B7172DD3 80FFEF0D87FA96D1 048D475F8008D8AE 72484A9BFD04F886 3844365D014FF0AC DA7AF8F8AD80BDF7 289ABBDDB4C7F6AA 33063C758638AFE3
C0C92F4502C32B41 C5B0DD556590CC48 23805CA76F6A98C6 75BEDCBE801AD0D8 EDA46A8422350962 35D29D11B2528E5F 135CEE19FC318889 D0AA32985FD15C2F
B32DF392767FC3C5 0F2F793432A07FFE E46FD84E98CB1B3E A2CFC39FEAB6F285 429BE0378694A310 0CC79E3736BF815D F3941133F752BB1F 004DC2219C303301
A2A8CF82C082563D 4A93C9DDB1F9DC81 D48020C8C012E9B1 428E2B1DF6086C26 52801ED0DF764EC4 39939843AF56D9B5 7AAF5B3D271114BE 8625CC012196E0A2

12E84731F510FBC6 5709C29EC95271A5 62D8A0B29792E304 558CA06875505C13 413A6408FEFEBC8A F202E1749ABF62FE CD8C7AA9FD2645E8 B9A5984C42A99FAD
E37E44F25E5FC8BF 9642E1A87E0307EF 779CB8E9E7845956 3E96FEB51826391B 1904277FE8F817AD 0B01D6F8C7665884 3D4465BDB034AB84 497EC0BC0E10ED70
0C01C51283FABCB3 337F977035F5678D EA02687AB0E6BC30 0111F788DB415D4F CA2D74AA8E5A1FBF 7173CD4B6FF754A8 7CFAAFEAB973ECC0 234BDEEE4F15F820
9F029D9E92D90406 50C7C974E033C1A2 7C94E13BC7DCF16C 9968B12FF921EB40 124ABDC99BDF9790 EB802AAF89DAFFF1 48EC9D85D7EC9013 0BACF688E47BB631
B69BB7A26FBA9068 67CF665DF8E8B0F4 F5FB5F52607F0784 3A02EC44C88ADC56 3724CF225E831169 D7F1AACDB203FACC BC589C3EE39235B2 46758319185A16C7
29BBCEEC30EAC34C 5B6C14B20D9EE725 3C43C8925B5B0458 0A50AC16ECE44329 C369BBEF09138186 D0F5D866C93445E8 FEA018618DDFF802 4FAC522A6E2ACA98
6EB7C2A4FC9A7A76 694FF136124EEAE1 4C33413457063F71 87FB4A95AAD2B901 AA5A37B08EB3D08E 6404F27E04CA044D 6EA1880A06596015 213AB62EAEAD531C
16A25B470F10F5BF F2F5CEAE0DC455D8 D0B16A320B3FD1C4 3E4D23B77A1538E4 4F085293AED9BF9E E0F09A3A9DAB49FD 884760AC4838D644 FDCAAE3D43E3DAC8

CFE109D061052030 C21EEA94FDFDA541 AF578BCD7177DF33 2E2D6A5C24930548 679A9B7991049D33 249FA188E5D48B7A ADB2081453F9CDFD 633789F5F8508D05
84C2D99876C913EA D946C9C7F927B541 E26ED87C9AAECBB1 47245E09062678EB 4FEAB8913FE570B3 B59FDA8AAE679129 CEDADA0E258D697B A4A44676DC457998
321F2E99BB249574 33F4DE842EBDC3B2 9C00691FF56C0293 A15DC05E72C01DBB D1E836FA990E8382 0F4AB1800E0864FC 430229BAF0593C96 90B935DD19958C1E
C1372479DD89E738 F553A994003C0D71 6D0CF6EE13BF24F9 EBBFAC05226105F2 10E230F75A60C919 C0CD358B08FF280B 85A259A68D916B50 7F0AC6C11B4F13E3
BF70A2E0BE950203 0E308A12F3E42065 E0D119FA7AD365DF 0D40240E04449F36 18A64750D7BE3181 22D0A58D943DDDD5 7D1B95DA2E6C42D9 55D0589D35A5C912
718D79FC98E451B5 1271163026139D57 B534D2F847E76699 9E69E0B5724B7CCB 665D10C3CD8FDD3F 56BA2ADF83AD11CB 7DEBBB8F699E432F E89B97ABB7DBDC78
77616D2A6DCADF6B 5A1918479BB0BACF 2717AAB4ED45A77B E27AE4D07D934A0E 805F43B961C70545 ABA66E40B4631041 68D693F87418905C EAB9B9433455564D
4CC6EADB867CDC30 08FB5554FCB9F254 947B6B6FE2DD03A4 99EAC56BB20275BE F9B4E680A5FD9664 A61177AB24588BDB 131134CD3CC91961 4459796F2A387F90

3CFF1A7CD91D31AD 12DEABD1081F1168 91DABC228A2CD7C2 684AAEDB49AA19CF F2A68AF4B08BDCCC 7417D44233884D68 E47D27986C381B8F A4346906363E21E0
E403E35F17B109B0 85B45C8CE32CA30F 20D31C71050304B5 BE00617FDFCE24D2 73A9B88E37FA9D2A 30705387747FBF1E 2AD21130EA10C652 EC3A08B9414562B3
B6AAB2E2255E86D7 125D063517441DF0 0E4C2D44528EF32F CA26C30A37434886 91EE3A4EA4D3FF74 7C62A43D78912A13 BC778943B31D154A 4167B6B1CD0A8266
33ED39496D3D773B 0C6869ACD6384C4F 31C531288FF5A466 56BB33EA9122B269 C4FCC9CA7B8CEA33 025F62703FE5CFE2 1A7F2C1E7346392D 06E8562E8D119192
A73F20FA7B458F30 900F277C49EC0B0F FA82E158C5600A65 5B2863A74D24A245 AC7C1BE0BF0E3CC9 EE15EEF5FF6E4202 FB837005CCE72D67 8DC38D41CD04F522
4CA9B7E15D640E2D DDE831DA01F70F79 C38F865CFD1D0EC1 FE9DBA06085EF99F 55571FD236A4D5A4 021186A2D7C493D9 7FF957E2D006572F 31932F324A4E49DB
F63E306DCC8AC43A EC139D505F3E0F81 5B9EF2BE2340D3AA D5E80AD1881FD1D2 8237CD2F40CC9210 6E607CFCA4176543 BD4BD5108E47BDF3 3383DC72F3C18E59
FE5E6FA6A5D364A3 D882B77DEB70C888 9FC9AE9F6C84BB6E CB1C2EE936C84B07 85AC45D301B30CF5 D4C438571A8D6484 9BBD99D934CF5B15 61DC2BEA6C2656EB

3787F87EF872EAA5 9379FAF661CFFEB3 988EA725EBA5AD24 33E43381EB052B20 A1014A26AAF45D47 1722A632DA82CE5F 5063217353B6BB9B 07AA657ABF30F155
7F2DE74CC2916F4C 44941942473AFE31 946D7F58999343E3 A2661F2F22533B2D EB5A1A04ABD257C0 1038575DC79B29B7 B7B8F265B0691FCB 9BCBE1313206E0C9
5D22258D8F18BC01 C9AA8C7F08CF3555 DDEB3C06B30B9794 D80A85518A84FE1A 2D2845D66F0AEC9C 148DBCC2CF687B40 E1ABBB5D3EDFF42F 4821FE73440F5412
451C3F191EC8AEA7 953317CB4E082032 2E5FC395ABC83BE3 E85FAE54EC77B1C7 DC6278918C3BEF9F 9EBC4A46E1C5F689 22044B50942EB00D 981253A2EEE38219
54D534BB60DFF4C7 DFC6EA796EF28371 DB88303B23AE012E B85BD1FDE4361782 181CC57B18F95E84 1D87F31AFED1AB5F D8562DFA2DDD54E0 FD7344EB6120F767
821DECF414C8CF02 293BD351D4F7B297 A3B58C57BD8FB737 05922BCE5DD8D4C3 2FAC0F06791C76D8 A85E08D19BF3739C C6C62F77431B6F26 4D98C2A74A87F9C9
519612CA28CEDF14 EABDE3732B9FCB54 BEFE49DED72691A9 FE75E504F856441F 7E55D4FF1F56D367 74106ACD0E7A7203 704E4FE5FF1FB0B6 1AB765090001D926
92884A41B3EC9D41 6F050E09AE9C2773 08ED872AD7FD6D13 AC276C9C80EC92CA 00FBEB3B8CBCB276 224740BD1A49B456 B6620EDA9AFD5F3C 0D107377F5AD0DC2

159796EB36480CF2 96BC6915C53D2D7D FD763E0BA0D24123 E4093C7D5575C916 CBB053356DD91229 A378338D467E3F52 A9A79ECF3ACA1D02 34CF654278E9E5AD
D18651C08D6671CE 942E16FF782DB772 F4F2660C583FD640 9DE2AEFD2BACF1A9 D69A5CCD45D747FD 28159D26A09C017F 3C5C17EB25D4B1D4 06EB8E57F63178FD
ADD5D5459CC27B7C 79758FD9E0DACFA3 5B7BCDC1C131FAEA EF6E7A4773551CCD FDAE6AFA29EB62B2 D5C13A004AB5332D D8AADD891A8FF858 044CAEDA2010F083
50391D65A5AF5804 D8686B233699FA59 F5A8F8150D72A099 CEE5FBA38FC1741C 00867EFAD3676C2B 10E86BC781B0ADED B847D80704688787 B67B91C17BD80A48
B44634FBDBB448AD 71592B525BE28914 FBF171EA3B21CC1C 4DC9480F44C4C130 625A781856C42825 CCC186C689A2B024 4C17F71D1173EBE9 FCFE0B3CD02E5674
76294EAF606D8587 8A8E79AD6C784718 528131E8C7407F61 39CC413A7E8AF3AD E39E0D9B21051D4E 9D9C96DA56B6C19E 3A9CB183B8D4276A BA1E288072BDDFD2
CDFCDBFCC2D764C1 0E8EB246A5198AA3 2589B12ECFAABF19 903976935437D546 AA5948C1C99AFB48 C9FD137E325541A2 388FDFE10EEEF032 6B6FF9DF84F6CEAF
0EEEF036F7AC5B59 37C4BCCDCC836E63 520B9DB1D71E741C 3574BDA69E75455D 3AAE9A28166F4CF7 AEC8E2CBD39CEE6C B8F83C7A4BAC99AE 51728DA436FA3560

D102A7CF77D56BB3 FA361945D7760BCD B35BEF5708E26708 F847BE6E1FD34AEF 155BA46EB8E3A99C 759E11E03B4AEF8B E536AFFDFBA72608 A39CC825A5732CE1
70ACFA863E801C41 AAF911A1EDB0CA46 0A0F609DB69B797E 669E45E3A7513349 E8450BDA1D725B2B 7CD2CF97BB4DBC26 91A2AB4FFEB8FF7A 9B9B42D9D3D1F4B4
0F05C02979357029 C93C706153CA19BF A5F2097EA71D695A 08566E71802F6212 A11B9A8273892494 A6B4BA6562B16361 87F019EADC23955E B84AC47D0832707A
81A1CB73105CC592 DD665D4877F93446 849CF350A2F049C4 37160EF4FB3AFAC2 28C905E67DBD69C7 37DE4082CEF3AF15 08177EC57E612752 6D19BC6231517F2A
17D2913097094063 29B96F4FE13E3C8A F3F299C1868063A6 608D26315151A3C1 C922FB4CC41641BD 4935171C3FE5D08A BE9344AD126E7EEC 9A7E13FAA0283A6D
DE54BE2FC6C7917E C029FAFBF1E35E62 563E6D02F6CD40CD 4E207697AB39B915 E2954440DCDA7283 6B83340FEA34B257 91A22F5D92A89C5E 144B8979BE83ED98
55E744C34286A8CA 5CCCFAD486C2342E 6CB5004061D75830 97DDD88A0546F3AF C76E585A556CE38D 2C5226E35553E852 1E60F68E09F946EE A2C2DDDDD3332E70
BCE5B7C363A725DF 279277B240DAE99F 045ECC96D96F34A2 EA31C5724BA3515E 5D3E12C5D1145A4B 2A0B2D5C5267B9A0 505ACC2907D8F205 3C57931141043069

5B863147FD89C148 B1E6E874049E99DF F17FFEE22DC9D5EC AE98F517165D57E8 4777FED0897346B2 E2321749ECDAE78A B111555796C0EC5F BA8F1DCA54176BC4
E3CAEF6E1B8FE677 F85DDEA2763DDCE4 31DB9CFF71951532 5D9B14DFE6BBD7DD 58A39263A2583D1B 96203E4A86B16AF5 BE494C4557F88490 150FE2863AE12DF9
366674B8E55CA91E 37771A90587EBCFD CF518108501D241C E8AF6CF2343F06EB E88692480FB24E86 90886C6EBB951857 8F6971C558F887B3 860D58468D6A54C0
D59B1A913A871435 8C779BC9493CD66D 814A431675C7FD31 26FDDCC2ED2BBD99 C5A95555525B2E4A A7B147173E5325A6 AC23788D71341C87 C33DC14598896EE0
67C9E4F26B9E56D9 A43D30599B1F0AE6 D670F42F1E824610 2E3AC3E66EE24EBE D90700ABAE200321 4FD3DE924BB2CB0B 5E5988CD91A784B4 25781463910E68AE
15B9466D54B5458D 9CE76216FEAC1AD8 6EE53A1D52896B4B B1F0457FC9FEF894 DFD6ABDB671FCAF5 F2D9085ACE8909E9 DD5445A0F59EF0CB A872CFC0941F9A71
D4EC9FB64B8CC626 A4290D2D031E0080 12B5D6A25E0D5D4D E574230C585859EA CB962C9BE39978C2 EE7359B2B59EC085 65F7CB398B536332 7BFD0D78B8865FBC
A3898A5D1D52A4A6 EE34448C452AEA62 D7DA63D80F93AD6E 45C3BFA928880E25 C0689C50D9A58A1B ED660AA59DCCB878 9606339EFA899C62 42FB69B5F27F9FD9

D1C4D2923B3D6E99 D40DA26F6F0477CA 514B41EB413633D5 AFA23B1FD20845FB A729C14CF32B3DBA 9A08DFCEA29AD11E EC4A87F413B57729 C398DD04B39C854B
6140F4AC71602BCE 1F66AC270E323A23 BD6E3C8555583D2E 5609CA6A597DDFD9 672C7FE843CD6B43 734B895368306BAE 1951C94D8D9B811A 4C34EF5E4663E3AC
F1723F82ECB43614 73E960F8730A0B44 DF4F78B89C938E83 A9B99914ECA4FC89 CC345D53366D0409 20DD3649A867E050 3C586AA33F775119 6621C62475C97DFC
DBF66ED18A269373 91F22C183A9046AE 89330102EC8BD4D4 4B2C1F866184800A CF6EC936D7124698 30CFD0E715FCB604 7575C0FEF744443F 960005B8CF76D72E
EB754F91798A4587 AEBD4632D4BAEF76 B0765CA0467EB0A0 95A8A6584D09F467 209CFC2D26FAC23F D864F38E65BABF82 9ADE897B1B851DA6 6C2A9911C2BD8854
C4E986021D0CDB18 E82C245D683B5125 79C872F169DA25CE 018FD782B640C71A B5879C563A7F9481 7F3DD4942705A5D7 902B78D84AB1EB8C 6F32999AE93693F9
3605D93128F0D50B 23515CAEB6779EB5 E1BF2206C3A7B2AC 1FB571D97A736CFA 4C5AB51FF0103E85 8EDEEDC02D437DD7 DF13EAB9CA65F18B 5FB8DB7B872E88BB
33A5713F484943EF CE65254E148C1A73 C07453D26969C4C5 7C94B949933458F3 3739A3D4900A5E0A 04811C283FE95347 F6A31635FCC6DC8D 7AF5F411F3684979

0526EFB109928E62 A6CC9F06322C656B 43BF5CC5717EE8F6 42EF05093E965D39 02FFDF6083B42029 72A9479642BFE0EE 385CFC41FE807061 392B5965098702ED
F8B9C2C7F304FB98 C2C72C655FE362AE 9C4AAAC92EE5AD6D 2A801FA28E962BC5 051AD8A7E96DF5C9 183DC90693A1A209 A5C92B3CC1158C28 E1050A2EBD4141A1
03292654F5966B3F 5C2996A7D1A42268 7FA374C267DB1A25 A50D19C8E490EB4D A70B935DF48BE33F F6B9246C6021EB06 0135A32A40C2BDC6 AD52DA78BC628A4B
B4D4DE626946B098 DC4399D6C6AD26E1 5E15E1995F6A178D 2806BF82DF301D45 92371E17D46ED028 3CA752BF342CCD3E FDF0ADDD78FDF6CC B25E78114CE0BB28
FE4686322EB24372 02B330E59B17C34E 39C02D4DBBF78F1B E15511406B52DACB A7B6482DD68809EE 6F44ED1C5718BD06 07FD46C828DC2470 7E6D103058DBB0E6
D86012430CFD4A6D 8FD579186CC46E51 FD551ADF7F02C4FA 1316EAA8A793E33C 6ECB5761FA6C1E15 DA8FDEE5C4CCC90F C0C305DF18033B16 9DD4FBDABAC0786A
E1B088066C269C21 37B4F189750EE1C7 C84064B4AAFF510A 087E69D88C9C39E1 8FF75077C8971583 B9CD81AAED88BFE7 386B894E00DB13A9 413C6BCD769919A6
D16A41DE83973B49 FE2FADEBC6CD1848 327C6312F9F88900 C988030D153B3B9C 6214A5E9E2D9700C 844F6EA72F0EEE53 B4E3DE6B1E9078A9 CF29C503FE8D8F2F

D9BA85793CB16FE3 3B5695202C397EC0 FEE7BAC0CFD1D303 CE6F8D424CB6082E 54D81BB0F8FF0DD6 60ECED0F8E0A5A09 E5400FB5B1FC4D30 9FA9F05B63E5EBF7
FF1F5061F3D5C351 4FEE1254794A29DA B5112A9477BDA6FF 75E86C61216AB6D1 6AC2EA32B8042115 B3249F8CA49CE054 1E13C60EE7356CF6 0A6A70722B43B330
73C656E27223BE8E 71E8725B6912AD5E B4CB9153C4248282 24D2A91ED8A6BE78 C2029465E3DF9810 451954768807AB4F FBA41C5E4CC6257C CB862C0AB85369DB
0F3545EB681757EB 88B6F9829283C9F9 5946C4A35D56F66A 9E85D12C66F6D004 9E5AA8ADCBF66512 A83779A14A6AB64A D18D39D158253E1E 6214C68388924ADC
08BC2E0972113690 6E77C60F5AD675F4 66385F76C0E02858 7835279CD8EB5272 A5CA98077809C1FD 023AAD238C9A3B45 2F1A73A677582F8C 9D1143DB75F879B1
D3E9D007AADAC05F 7B64B5CA98D0CB01 56B75B8E2BC30B58 397584F0501A6242 9A654E58353AF831 5005B50192A54AA7 F84FD233E09CB333 22040C22FA31B97F
1926661959CB7046 AA905CC2E783CA73 33B5DD1EBB2E4803 6E11A66327D154F8 A8686D0B23863BAC 33E4CB2D8098423A 440B17259824C4B2 4C04A27B9326AFD9
4B718110072DE3FA 95A646AA051CB050 829FAE50F0CD3F9C 00329A7F170F555A 4E8B36640D01F6D4 43FE257B553AF510 928CD3ED5E5B6144 4F64A65800A322A3

BAECF41AC3AC8EE3 E56DFCCE208CF1CF A3C00CBC935F2E04 C746C3212767B99D A2333B949D621387 524C6900DFB3C81A 321F7BF364747484 EED0492FA53ADA6D
83B5F808C8EF28EC 1A86AB3D48CCFA27 C65BD5C78BB61A2B A2C009911813B374 64DBB780DFF4BC70 BF84497201FF9270 B5360FE755954CCC B6B3646B6D6C93D1
F0ABC524BEEF628C 095ECE27E48EC3F5 BD948F1FDBC5DCDE D5879A34AE862279 C5FB34F15AB3BC66 D9D0C24A9B4ECEBC 1FC99D916EC64A15 3BFE0D97067AF1E9
91D012A54C6BA830 C7EBB95838F9EB4C 866AAFC7A816047C 1729AAB34A9A85FA 7FC9952B676C85E4 68287810DE1CB65F E554287580D9BB6E 7B6C4B108113013C
E0F21FAFB4731601 EE25B027BED5BA4E A9CD284CD5348FFF A47FBC36E3AC17FA 0BA2ACE9740EF0BB 9BBF687D151E2EF3 BF8AA86B4888ABFD 0CB6B797A4788E11
488F20C1D7A767E6 D4C4B2F351BFD749 FF85AB2F6D5EB913 A925520BC7A81FF7 8D5A7F6397C78AA4 FDF9D677429AE3AB 7444680C5E7E928D 36EE2CD639948B74
B053149AE0F89F88 4ADF95B2581CAD66 071B988AF45BEB92 C556C8BF870B6B0C 5F744BA31B4E4C5F AAC45B9AAF08BEB8 DDA565B653EA6038 D547F9E277492CE0
596063234B1E0BA9 8A1F0CDA3E5A4501 35B0D454918C8649 D049965D79B17C24 6DAA0EED1BB7F997 26448F4C16692C9A 3DD8AEA1D55B34B7 96EF23D29CC004C4

950DC79E2A038A36 0D78B1DB2A314555 D7B74F34D1A5C409 6DC8283ABB9A7543 0ABC9113C3445C47 C43013BA67625C2F 857714B8C825CEA5 DCBD9B5CE33C73ED
CFD62D13B705EFF0 D51E653C00434E47 E1C28DA114033F0B BE03FFBC81F9DB41 A9513299342C3D27 34C445CA43E15800 C0E7B61ED765C3C9 4ED30EA94CF95F14
AB58120052D70027 17ECCB528731857D 73D4EFAC2A80BB22 89B8B1020290CA05 05B54F9E8AA6CFFC 10B52FC40548B279 F7C187D520E17E0E 9155AFC33DF4FFE0
34FAA1A61ABC6A67 48C6F5F54DA1E9BA 3433AE470849793D 4F2721AE0A864604 2A4469FBEB22E801 446D66FB878EC9CA B4F3806D43B47233 1DB1C6681AC64B3F
1A06E501C9E9927C 06EA064E7E8000D6 FE954DCA772EF9CB A71C7319A15C7D8D F920867527FE6686 B733C59E72500F13 9CC82E52799018F7 E8CB6F37B64AB87E
66863FF12DC3BD3E 00A3442E69C7D3F1 76E0A1D51FE697D2 21C8A499E0185FD2 D342110DA11E4306 05C6DAB0239ED0AD 399281E9864D8ACF F1F1F80D44D36CB3
A7FF11B7D9D0564C 8C3C0CFFC7F2BBD0 36E3EE6316F7C063 BBF8B90C8DD49DCE AFC6B06A4911EF8A C2BE209D245D5288 E80AD9B04532BA47 AE888239B07A4EA1
B39812C4304CA22E 0CD13638022CCB02 923B8C787169DF3D 54D177B81D87AACD 518F118E9BDAB589 ABE93113F03C31A5 FD1C237258523E98 E62D33AAFBAEE238

B9FC6118D198A977 169BB3894B8B9051 283549F968EB983C 440E0AC26E62E6AA 4872E7EBDAC7C6EE F7440E75F94A857B EA674419CC76F90A 9F95A80DF90A0AC1
4D03BDDDA89B0521 31A1BD8D29E2EF09 424116C88DB97DB1 C929A730C6ED0701 130020389F558BA3 328673F1F30E968B C36AA08BA10E82C4 41851D7A595F7C53
1094F072A61B70E8 4D4B51FC5354C3A6 219C810982366481 E4C4212047D09AAE 0AEC1E0A22C3E826 873C96BB54DA8525 E58CFDB465AF9525 EB90CA9091641B0D
D30BFCC32AC2667A 951861A0A48C974A 8829FDB2B100C07F 0AA9AFD7B512B760 4F4DE407F7D0D9C1 465ACE055885A97E B9E9BEAEE9A5DAE4 ACBE3C290098995F
EA4685BBB54A0D29 EA15DBDA44AE6B30 5994D121125CFB2C D33E2F2C99B90D24 811C363F37B811B2 6C5F85AB1455A459 1CE649D5186A7755 73FA2D466A4F59A2
8BC265BD7415E5A0 6C6473C6B5B9DB90 1F7A7FAFFCF64BA0 02A9D3634439F5B7 10F674C3191A26E3 44ECFB8439135FE7 D5F9DA121E9D141F FEE2BA498647A6C4
DFE330CF9E163891 49BCC478865DDED2 F5225EE2AC8EEE78 AFCE5B62F36D926E 0D17D0B47A2A3623 5559B5E15625FD40 284305878C4EA25E 18CEB27BFBF24857
FE13F29A996A4CBF 6B384C06D88501F4 52CFBF3D807F96D0 8BBEC387F8DDAB44 2E80741492293915 555EA52C44DC84B6 98B496BD80E977A8 C69AAD2D045C2F83

668DC98D989E305C 446A6E512037755D 87312860FBFD48EE 1ACFC496320A749E 3253C1629432AD90 5B7EB92AA6B41476 AE60EDD178CC56A7 B63864642D38E331
1E5D249EA23D1C3B D1743B02FCCC34AA 488495C5B2CAF140 8C42B7BBBF5E68DA B9F74DCE918A9E22 4338A1B403F07C26 A1A1A5D43A30E387 F7B3F68CCAF51FA2
D52EC919C75419DD 647ED947F7A76F52 31E6764B05AE0477 E50BAB26C070AA27 88AE5B2078CCD520 A2B63C5E72374AAB 3793912E1EA906C4 72D831F4BDF71DEE
8FA2B545809264C1 01D62951E5728DC3 9B2D1E0DFA803B1D BB8A478786F35C82 5C6AA52C67EF7516 C5278E1D43080EA5 9D77F4851A94D50B 31B2160E95B60A6D
8C53936202BBF580 D48B1B1497244C95 49FA0B5985B4809D 8A50B0EBB314482B 46F0F3DE81D6BE7E BB8AACC6E46D78A4 A146F2BA79DEAD87 57BC383E09BCA592
4709F3F834B20786 A215FAC852B20D61 20BCF731852C2A45 9116689D5C1A8633 96ADB2CCC3688489 54C3206BF2615CAC 62FCD95D27405F32 EB6042A98E0EE87A
1704284DBBC173B5 1F96B4264740FB15 61F112893A5FC347 7A161B634CEB8F43 85C96D0839B4FAD2 2C1DBDAEAAD3405A FBB13A4C6B63208F 3018492F1F65C339
22A824258998FE4A C671BC33676FA26B C9335027DF743993 F62702AE2943A2E5 887E64802F8C1E42 5B9945C98C99843A 8343CF705866FDCC FF6A42011DF33ACB

E61D200598951D92 1F8C537707587616 3372D558FF7E26E0 C9C758FD62A7EDB0 743B55B864CE66AE 124883EEDEB54BF8 7DCA99FE685E05F5 CC18793044E5FBDC
87CCBB6BCCD9F3F6 933B0898250704EA CBD5BFBB2100B23B FEC478741E9D345F A54B568D727854ED 920E16E757A47C7C 36816582D4B0B69E B28574EB16736098
8AF8C549AE17B533 368F035A37864C73 664C94027949F438 6228FFDFC03FD377 5EB90249A10DF565 1795E63F2B934B10 9FFB48F8B4465E8F 8B89BEE2FD3DB94C
19C4D269F8DC8CF6 0ACD897ADD04DC7E 14E8EB4D8588795E B28787FD40681C4D 26AFB49116A713B7 680D2C45825B5874 7E8FFBB7DD9456AD 9721A17D13A84022
C227B0CEC4AD9BB1 5B5B30F786E0B0FF DEF7BABD2135E479 1FA30DF1C8504F9D B232D9267396B82F D658558523002814 F4FBE14EAF4D502B 5167B2F1D5C7E0CD
7B43938EE3A8DE66 8BB7261C07140E6E 300F9A7E782AD082 2A5400132FDCB037 D679527D00DDC416 A699BFCA0D1E1E75 E458807A3D95CA7E ABA0D6606791A944
6806A052DFCA2C16 FB504296C52CDD30 BBC376D2943CA3F3 0564A37923A4D663 16B3CA97A34E7E89 8CC839F764B8BFA2 A977F7D0E516C4E3 D1E010F84C695D5A
D3FAA1BFE209A806 7060E7D3F2DF20AB D6CA9D9BD945C26B 6B19CEAB70126346 97937DFD47E6E0ED 5D031773A1A2B48B 12F020F5E529BEA3 6A085F4C5174BFB2

020D012573231CD8 49854180954896F0 21759A944A4138C5 3340A508E7F4BFE5 DB2FDA6F8D7770DF 4A77E58358A646B3 3AE0A2567492A356 C2D85F32D1397430
170E05ED1F94534B FAC858387D1DD489 CDFE875854F9190E 1F1D265461CBE9C4 89C02E2729509898 ABDE3E9E33644FB8 28F1A577C357042D BCCD3B7DFEBF4FF5
850C449F7580002E 864FD5DBFF421424 85B52A77273672E5 970EEF51485080D0 9D7B8F18F53000E6 3B322463390030E3 1813EA611FC988F5 D9FF17EF56C87834
F7743B456EF634FA 9EC9961DAD80506B DE195A7FF8E45B2B C97732487DFD8A2B CF7C0EFB7C9D3A2F 903A29AD0C25B413 5A94EFDBA9CBD6DB 56D12371D2BDCD07
98C76E51522A630E 1BEA9F0C6643D3D1 71DBB0136E2D142C 870D41B59E588832 E20DB2CD33FE9487 0A1E06727122A891 7676D7E9B9604351 A6D5929C1228B87F
BB6E702D1DF7B70A 0A106D142A686985 CCB88CF7724A0599 67C60C7821C67095 D99BB20620B83C44 D85647E5EE87F440 193FF2712D7A4F2F DD7167F036ED0949
6BCD75A5D80FAD24 20A1556F1B222548 BBF623BCB248EBF0 089B025B4E43E4CF 6FA04ADDA2448B3C 5F037107CDBB64B7 A779E0EDA16FF3E0 752A6790C68B0662
A4C2368A994AAE28 56988444E5FB6419 83F38764A4375C1E 5F2D71472462B390 A91815CBB361DD7A 09E91DDEFA283914 C3DB7A7B2D4D3972 2D6C8E7C0DF25C06

81ECDCA053C7049F 5513EEC948AECBCB 750F710B2F60363D 8BDCD5AB89021A35 621E8109A3A07EBC 648ADD14475091A9 E18730573E5B84F0 696198CD4A331FB8
898DCA94AE293DD9 DBCDD46FB4F83DDC 9898C626F1384578 D2026AD7AFF3EC52 91F502224AA9037A 8D12F49DB519D3CE 2D08B844E824E2F4 9A6DB73D8B926760
C2197F28F8914E34 35E9418173782A9C 549299192609D7DD 399AE5CCC0238DEF BC8479799FB0D233 4E3ACEBA774599A5 B305CEA49D493DA5 22CBA400F7C0F360
048718E2132C8DE8 A7D9AF1D4E8BF320 A4A1137F4B35743A 676DB799CFF44D42 F9F01F1F509580AD 4F6E2E4E74D11480 DA66537773B0316A 8161420A74B92D3C
484B9AAC6C8F627F 555515A44E5A173D 8D1578F4A4BD563F 856162923BF16B2E 30297B99E0A43B03 F20BE7CF3B042FD4 49CEF279F31C0F17 FB002EC9211D47DD
4E3DF4FA3920716F 4F17141D0A7085EA 652477EDA5EFE7F4 079F4CD71E8C691F 60B9C9AA9B0E5FB6 D5367642C4C3BFAF 6EDAEB4BBC79294A 4C9875B1AB6702F2
B98E328BE732A770 9714EA30FC1914B8 0B220671E0D272B8 8D960793BA3C4BF5 9B83E00C67B19A9A 648955F4A4391AB8 F9F69DC425E1F250 5D499B2E2452B15F
12F8C2217E87E9BD ED9EC58D25490CF2 298B347B64E8D937 651B3197E17F82E8 67A9594C88DF9D7C FC861CF3A1A5C7C2 63CF65765DD83606 1949077EB1CEA025

1A7AD46628CA4606 9F5438EC75278ACB 3D30FA0DB064A8F4 283477FAE6486316 2979B5718DE0585C B21BD0EC6CC8F6FD 0DAB37318B648DF4 9F8F67579CDEBEA1
8D4A8AEB9050CBF0 DDC5EB16EDE21C9E D2608A1E5B4ACCEF EEBA463C5B198AC0 FF49229B7EB03984 6473155F10056458 94A39F6E1AB51B2E 3B87F586D8D3C38F
F395525A817C8AD8 D59E066D66706FF5 B6F09E273C9A598D AB6032746819F0B9 C6CB76B69D75C2A0 3F4C8745EBD54908 98A0483F950B0473 84E2310EA72B899E
9A3C5B00345C1672 1F64882187DAC78D AD0CA1705B0B4230 75847EF2A477E913 23C4A6F0D33F359B 8FFD4FFA2F56D1F3 3E8CDB84CF2FEAFE 4C0D3FCE79EC54B9
E9DD7356A0FAF12F A78E75006C10122F B44D3ED19D47C305 1B8C4C445C623A78 BD4EDC30B378A8BE 503098414284C808 818DF9B1A5553ED4 9ACF0302878DFC6A
876CDEE06AF197CB 766532B2554D5D2A 78472F4A6B784908 09D3EE9788E07EFD BDA1A6C37F3441F9 E8C0DA66CBAED367 714E40649AB7AD37 6B0798A0CEC386E8
4342F5A8A730E147 2545EB8F4B58CB5B 24EAB5C9EFF1ED72 A9645A9ADAB96E1D 4300DBACB0A2E3C9 5A0DFA7D301ACA2C 8BFB1F64EF2B65B2 8D6303F253DA5EDB
3F789E0E759DCE59 332197E7C05416B6 342C0502B4FF731B 716A73D8E95D1FE0 C8C4E13E57ED31C3 2F8B00EE79843C40 337D8B03A1D7CAA3 ED25B35F7E1A50E8

FFB7DA2EF42F7923 EEBA5D085F422B49 0EB3EBD29751B9E3 864E01CCEC9A0F78 B5383777D7ABE50A 79A788F93219CD95 46B5B528B6DA6731 75FBA0C8F497BBA2
5EED660743AD0CC7 6DB8C4C587FCFD22 82BB596A3DCDDCD7 1A3597DC8109D946 E5A275E69A595905 C89457C57E18914C 289FC71443E7AA69 B7731A27FB51CE9E
A73EA37143BEC541 6F5C2F004912AB5D E9856970BC4160C5 6691B7A6CE9BA97A 9723ED9E45DAA2F2 ADF39BD3BC0FFB9B C890147A39AA982A 5CDC496E34389CD5
F57DF6C397C28474 DCF5B55B7A5A52E5 04EFD312B6E5E93F A1DFE34CFA443814 D2A93B9494E64E6F 9B5BA984A32823D8 B7A6D24E191E29CD 7CE8B96C58CA7DE5
2DC51083F898C7B0 0B4B8A791280C3D1 C226520722E42878 44C0D629632A5B1D 8ED722D952DDC117 887B5C96495124CF 6CC26BDDC282B7DE 876C1D0AA9046A7D
447B9943AB068BC5 2AC2F39F6D80FD83 7E0D0BC7EFD5FAC7 6C0D235C0B4B5BCA C3EB69EE1CEEA2FA 3E9CA45CBC30871D 64C80F664F008C9A 7808247343E9F88F
44E135079166E708 5BD2BB6B06BDA132 BD2F319363A99619 84DE3062D62C3679 2D4AB3FF170BCFA5 FDB101CF5D65D629 56C9AC0E80C8A62C 3143BDE74B271C04
2B347A6FDD64EE02 BC90F3925AFC9936 89CC40ACAEBC45C8 784A148AF4A4C182 31D3D8202398E04F 38F19FE10E836A70 6880C10B82B8A849 20F1DE969FCD2B24

B2AA25C8C8FAD01E 8465E64C37A657E7 7B8CCA9CFB49E8D8 EE3D51DF258A514D 1364AEEA79D50614 30FF93A08C6EE102 BED3B661865BC159 EDFB9D7D6BEA5746
66B922C702111FC2 7A02D710FD9860E9 E8B27F8DB180FBB6 E175E5E60FA27324 6884EC0591A353AB AC75EB2872424458 3D58CF8F1608A18C 1AFDF29B3EDA9225
4E3FE22C726191F1 74E1A2C526DE6D1B 92299A41BB495B29 C0F4E81ECCAF8703 4A6A78C57E8E033F C994DA026DA62369 5AE39AD73E7E1BC2 47842FA6D06BCB2D
BBAF11764368A041 D338AC30553748DA D4C62CBBFC6C032C 064C2782D27BCDB4 4FA2E86B805BAE54 9EF2A6BF8C68D6F2 B3267D9B77F1B81D 24B6EBEE42CB35FF
5F639EE4DC138D05 3B00F4AE71CFC998 512DCE05F0331799 6A6D4A787FCD619A 52BDFFF1446C0D8F 96D7021F589A82C2 860DE4AEEA62C661 276DEDAAACE58538
D278DE51A8677A44 A24B4D7C5487F80D 3413F841B3D02B2F 7C590CE4FE84C783 404D6A587385F9A0 F7CD57918DB13676 6C4EE248B0006BBE 94BC9D7F9C10B3DF
317E1A5E45F101A3 67D8543115388AEF 3EFAC2F49953DF5B 58B64746257CB3E8 DB2F8408F9E695E3 40DBC90458089C87 B7A71635B1AB94CF 061F3F540128A0B7
BF0A1D0AFA8A5703 0C3C41CE6DB5902F A6CF4D16965F942C 418EF4558C4EF980 51420D3C8580699F 3679770797CFC6AD 7C2A17636C5EC201 CF483AAA1196E42F

F90D0F8516CEE152 A7B50FC19AFB80ED 0B03973BEBB7EF3B C4D0B75613B31D60 AA821E3BE410AE1B B5329B5F98006AA6 CB7D7E9856492C1D 106E05989083F244
71D480A09B0472FC C3A20D99865F53F1 D56EDAA4C2C38CFD 457AD561EE229BAA DB3221CD27232909 043EECB5698D4CBA 6695191D6AF7918A CFB929FBC14577BE
F688AB404DF00C15 B1965FD930277C2B 959EC1C747456DA6 4E6BA719D9B426C6 54142FE008DC7C86 729A0E68189CA654 8EAA29F9CFCB189A D0911DA879B7A099
5B3836A1B5778B18 5ED518FFE59F1735 30AF0FD7A2522CF9 39A9B97E8B03A537 6C1099D373B99FE8 F9082C622CBCAB33 E5EEC49255826585 7418B7A08F505FFE
BF77A5F4EA71621E B216B2C49BA85D9D AAAE490BA0181DB4 338D8D3753251395 A683EA18FA2FC814 41C3EDD4C289C4A0 09B5404B41BD97DD BDF619DA7A012495
754CDCF5089C708F B8125E9A5FB306D9 D192CF7CA80A1D0B 373862DF6F514F90 0DE3259292D68C2C 31311BEC941FD933 BA6803A1C258A453 C5528D66E7300585
ABE75ECD65F33EC1 C67118E03351B2D2 DE692D80EDD4780B BA8F9C477D4B2D1D C75DCADD5A21FFC4 0BD00F1CB424654F 492F6CFC5B1C75DD 83E3A5964243526E
4ACFD505F23A31CA 8DD7E3605EFB3EC4 C8831535BBBCCC8E 3CECA3CA848FFD16 3FA25010CB787D4B CBAE58CF904514B0 6329667D21EF4241 9FB49E009CB6574B

B850540E1F848010 134842CD09F6717D C4ECE7B9D4CA09C1 F9AD40EA3F212677 E5F9B10E28FF870B 597753426CD0743C ACBE3E6E28718BF2 0F31D79FF1F08E37
4B19EAEAE30A1AE9 7324F3EFDBF55062 1FDC915B9EC409A3 0983BFEF2B3E3B86 B38D39A985B2B4BD 98B19758760F80D7 4B0EAE01BA8381AE 29A8F8FA5DBD4CE3
B16B56F6BC72000E DEEAE8C5D863B87B 88F532DEB8A23026 25D05C6ABC1B970D A583253DD662669F 21FCB77463CC6C9F 30F85C3E73FE6128 85F791882F11ABCA
9C6796FE1D39478C C83BDCE0268E63F7 48CF34DB669536B0 D9E8FE93E2B5B869 ABE893D2F3C7491A 3EE098ECE52145B2 44474291E3A1D0C5 0BF2CD7B722F98E6
FECFDA6C0F4F7557 996CD71AE3A6634A EC3B221393EA234B A007A76AE86DF800 0000000000000000 0000000000000000 0000000000000000 0000000000000000
0000000000000000 0000000000000000 0000000000000000 0000000000000000 0000000000000000 0000000000000000 0000000000000000 0000000000000000
0000000000000000 0000000000000000 0000000000000000 0000000000000000 0000000000000000 0000000000000000 0000000000000000 0000000000000000
0000000000000000 0000000000000000 0000000000000000 0000000000000000 0000000000000000 0000000000000000 0000000000000000 0000000000000000


این عدد به هگزادسیمال هست و برای اینکه ارسال شه 2048 تا از صفراشو حذف کردم. برای تبدیل به ده دهی زمان میبرد حوصلشو نداشتم.
سورسشم میگذارم انشاالله.

aidinMC
پنج شنبه 23 آذر 1391, 23:02 عصر
بیتارو منفجر کردم : فاکتوریل 10000 =
سورسشم میگذارم انشاالله.

خب این صفرهای اولو آخر چیه؟
و اینکه من یه ماشین حساب تقریبا حرفه ای نوشتم که کلیه عملیات رو بصورت رشته ای انجام میده ، حتی تقسیم هم محاسبه میکنه (حاصل رو بصورت اعشاری برمیگردونه، این موضوع رو تاحالا تو برنامه های مشابه ندیدم) و بنظرم ایشون هم رشته ای برنن خیلی بهتره...

Ananas
پنج شنبه 23 آذر 1391, 23:20 عصر
خب این صفرهای اولو آخر چیه؟
صفر های اولش که هیچی نیست و صفر های آخرشم که جزو عدده به اضافه ی دو تا بلاک دیگه اندازه ی همینا صفر که دیگه برای ارسال پست اجازه نمیداد (کاراکتراش زیاد شده بود) که من اون دو تا بلاک رو حذف کردم که تعداد صفر هایی که حذف کردم 2048 تا بود.

و اینکه من یه ماشین حساب تقریبا حرفه ای نوشتم که کلیه عملیات رو بصورت رشته ای انجام میده ، حتی تقسیم هم محاسبه میکنه (حاصل رو بصورت اعشاری برمیگردونه، این موضوع رو تاحالا تو برنامه های مشابه ندیدم) و بنظرم ایشون هم رشته ای برنن خیلی بهتره...
آفرین تبریک میگم. من هم این کارو کردم و یک نمونه ی خارجی هم از اینترنت دانلود کردم که تا 10000 رقم اعشار با ممیز شناور محاسبات انجام می داد سرعتشم خیلی بیشتر از سرعت مال من بود. به آدرس زیر بیاید :
http://www.forum.khoramsoft.com/thread-281-post-890.html#pid890
استفاده از رشته برای شروع خوبه ولی به نظر من خیلی کند هست و مخصوصا برای اعداد صحیح استفاده از بیت به بیت حافظه می تونه مفید تر باشه و سریعتر.

Ananas
پنج شنبه 23 آذر 1391, 23:54 عصر
برای سورسشم از فایل IntX.h استفاده کردم که می تونید دانلودش کنید :
http://barnamenevis.org/showthread.php?150444-%D9%85%D8%AC%D9%85%D9%88%D8%B9%D9%87-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%87%D8%A7%DB%8C-%D9%86%D9%88%D8%B4%D8%AA%D9%87-%D8%B4%D8%AF%D9%87-%D8%A8%D9%87-%D8%B2%D8%A8%D8%A7%D9%86-C-%D9%88-C&p=1649855&viewfull=1#post1649855
بعد تو c++builder کدش اینطور هست :

#pragma hdrstop
#pragma argsused

#include "IntX.h"

#include <tchar.h>
#include <stdio.h>
#include <iostream.h>
using namespace std;

void * Factorial(void * pOut, void * pInt, size_t size)
{
void * pResult = malloc(size);
void * pInt_local = malloc(size);
IntX_Copy(pInt_local, pInt, size);
IntX_FromUIntX8(pResult, size, 1);
while (!IntX_IsZero(pInt_local, size))
{
IntX_Mul(pResult, pResult, pInt_local, size);
IntX_Dec(pInt_local, pInt_local, size);
}
IntX_Copy(pOut, pResult, size);
free(pResult);
free(pInt_local);
return pOut;
}

typedef struct UINT_BIG
{
unsigned __int8 i8[8192 * 2];
} *PUINT_BIG;

int _tmain(int argc, _TCHAR* argv[])
{
UINT_BIG ui1, ui2, uiOut, uirem;
char * pch1 = (char *)malloc((sizeof(char) * (sizeof(ui1) * 120)) / 10);
char * pch2 = (char *)malloc((sizeof(char) * (sizeof(ui1) * 120)) / 10);
char * pchOut = (char *)malloc((sizeof(char) * (sizeof(ui1) * 120)) / 10);
while ((GetAsyncKeyState(VK_ESCAPE) & 0x8000) == 0)
{
//----------------------------------
/*
cin >> pch1;
cin >> pch2;
IntX_FromStrA(&ui1, sizeof(ui1), pch1);
IntX_FromStrA(&ui2, sizeof(ui2), pch2);
cout << endl;

IntX_Div(&uiOut, &ui1, &ui2, sizeof(ui1));//, &uirem);
//----------------------------------
IntX_ToStrA(pchOut, &uiOut, sizeof(ui1));
cout << pch1 << " / " << pch2 << " = " << pchOut << endl;
IntX_ToHexA(pchOut, &uiOut, sizeof(ui1));
cout << "0x" << pchOut << endl;
cout << "---------------------" << endl;
*/
//----------------------------------

//----------------------------------
cin >> pch1;
IntX_FromStrA(&ui1, sizeof(ui1), pch1);
Factorial(&uiOut, &ui1, sizeof(ui1));
cout << endl;
//IntX_ToStrA(pch2, &ui1, sizeof(uiOut));
IntX_ToStrA(pchOut, &uiOut, sizeof(uiOut));
cout << pch1 << "! = " << (char *)pchOut << endl;
cout << "---------------------" << endl;
//----------------------------------
};
free(pch1);
free(pch2);
free(pchOut);
return 0;
}

..ali..
جمعه 24 آذر 1391, 23:49 عصر
کسی هست کمکم کنه برنامه فاکتوریل هست مردم نوشتم اما اجرا نمیشه کسی هست راهنماییم کنه؟؟؟؟

#include "stdAfx.h"
#include <iostream>
using namespace std;
void main()
{
long int d[6][1500],n,i,zarb,b=0,j,radif=0,cont,ab,m=0;
for(i=0;i<6;i++)
for(j=0;j<1500;j++)
d[i][j]=0;
cin>>n;
zarb=n*(n-1);
for(i=1500;zarb=!1;i--)
{
d[5][i]=zarb%10;
zarb=zarb/10;
b++;
}
n=n-2;
ab=n;
while(n=!1)
{
while(ab=!1)
{
cont=ab%10;
for(i=1500;i>=b;i--)
{
j=1500-radif;
d[radif][j]=cont*d[5][j];
j--;
}
radif++;
ab=ab/10;
}
for(j=1500;j>i+1;j--)
{
d[5][j]=(d[0][j]+d[1][j]+d[2][j]+d[3][j]+d[4][j])%10;
d[5][j]=(d[0][j]+d[1][j]+d[2][j]+d[3][j]+d[4][j])/10;
}
n=n-1;
}
for(;i+1<1500;i++)
cout<<d[5][j];
cin.get();
cin.get();
}