Factorial of some numbers using above c code:
10!:3628800
20!: 2432902008176640000
50!:304140932017133780436126081660647688443776415689605120000
00000000
100!:
9332621544394415268169923885626670049071596826438162146859296
3895217599993229915608941463976156518286253697920827223758251
18521091686400000000000
500!:12201368259911100687012387854230469262535743428031928421
9241358838584537315388199760549644750220328186301361647714820
3584163378722078177200480785205159329285477907571939330603772
9608590862704291745478824249127263443056701732707694610628023
1045264421887878946575477714986349436778103764427403382736539
7471386477878495438489595537537990423241061271326984327745715
5463099772027810145610811883737095310163563244329870295638966
2891165897476957208792692887128178007026517450776841071962439
0394322536422605234945850129918571501248706961568141625359056
6934238130088562492468915641267756544818865065938479517753608
9400574523894033579847636394490531306232374906644504882466507
5946735862074637925184200459369692981022263971952597190945217
8233317569345815085523328207628200234026269078983424517120062
0771464097945611612762914595123722991334016955236385094288559
2018727433795173014586357570828355780158735432768888680120399
8823847021514676054454076635359841744304801289383138968816394
8746965881750450692636533817505547812864000000000000000000000
0000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000
1000!:4023872600770937735437024339230039857193748642107146325
4379991042993851239862902059204420848696940480047998861019719
6058631666872994808558901323829669944590997424504087073759918
8236277271887325197795059509952761208749754624970436014182780
9464649629105639388743788648733711918104582578364784997701247
6632889835955735432513185323958463075557409114262417474349347
5534286465766116677973966688202912073791438537195882498081268
6783837455973174613608537953452422158659320192809087829730843
1392844403281231558611036976801357304216168747609675871348312
0254785893207671691324484262361314125087802080002616831510273
4182797770478463586817016436502415369139828126481021309276124
4896359928705114964975419909342221566832572080821333186116811
5536158365469840467089756029009505376164758477284218896796462
4494516076535340819890138544248798495995331910172335555660213
9450399736280750137837615307127761926849034352625200015888535
1473316117021039681759215109077880193931781141945452572238655
4146106289218796022383897147608850627686296714667469756291123
4082439208160153780889893964518263243671616762179168909779911
9037540312746222899880051954444142820121873617459926429565817
4662830295557029902432415318161721046583203678690611726015878
3520751516284225540265170483304226143974286933061690897968482
5901254583271682264580665267699586526822728070757813918581788
8965220816434834482599326604336766017699961283186078838615027
9465955131156552036093988180612138558600301435694527224206344
6317974605946825731037900840244324384656572450144028218852524
7093519062092902313649327349756551395872055965422874977401141
3346962715422845862377387538230483865688976461927383814900140
7673104466402598994902222217659043399018860185665264850617997
0235619389701786004081188972991831102117122984590164192106888
4387121855646124960798722908519296819372388642614839657382291
1231250241866493531439701374285319266498753372189406942814341
1852015801412334482801505139969429015348307764456909907315243
3278288269864602789864321139083506217095002597389863554277196
7428222487575867657523442202075736305694988250879689281627538
4886339690995982628095612145099487170124451646126037902930912
0889086942028510640182154399457156805941872748998094254742173
5824010636774045957417851608292301353580818400969963725242305
6085590370062427124341690900415369010593398383577793941097002
7753472000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000
000000000000
Algorithm or logic to find the factorial of large numbers:
As we know in c there are not any such data types which can store a very large numbers. For example we want to solve the expression:
1000!
Factorial of 1000 is very big number which beyond the range of even long int or long double. Then question is how to store such a big numbers in c?
Solution is very simple i.e. using array. Above program has used same logic that is we are using as usual logic to find out the factorial of any number except instead of storing the data in the normal variables we are storing into the array.
3 comments:
if number is 100000 thn ..? its working ?
@[Alka Khohara] not you can not with this program. If you want to compute you can use https://gmplib.org/ library. Or if you want to do it yourself you can use array to store digits of number.
BTW for your information !100000 has 456574 digits.
And if you want to know for fun. I calculated it in python, so here it is.
https://drive.google.com/file/d/0B3FtnF5pBb84NmJNWkJWQVA4NmM/view?usp=sharing
how can we find 100 factorial using pointers? can u help me with that?
Post a Comment