标题:代码欣赏
取消只看楼主
剑人
Rank: 1
等 级:新手上路
帖 子:58
专家分:0
注 册:2005-9-21
 问题点数:0 回复次数:5 
代码欣赏

#include <algorithm>
#include <iostream>
using namespace std;
char fuck[501][1200];
int ay[501]={0};
void multiplication(int shit)
{
int digit[3]={0},k,i,j=0,jinwei,t_shit=shit;

while(t_shit)
{
digit[j]=t_shit%10;
t_shit=t_shit/10;
j++;
}

for(k=0;k<1200;++k)
fuck[shit][k]='0';

for(k=0;k<j;++k)
{
jinwei=0;
for(i=0;i<=ay[shit-1];++i )
{
int temp=(fuck[shit-1][i]-48)*digit[k]+jinwei;
jinwei=0;
if(temp>=10)
{
jinwei=temp/10;
fuck[shit][i+k]+=(temp%10);
}
else
fuck[shit][i+k]+=(temp);

if((fuck[shit][i+k]-48)>=10)
{
jinwei+=((fuck[shit][i+k]-48)/10);
fuck[shit][i+k]=(fuck[shit][i+k]-48)%10+48;
}
ay[shit]=i+k;
if( (jinwei)&&(i==ay[shit-1]) )
{
fuck[shit][i+k+1]+=jinwei;
ay[shit]=i+k+1;
}
}
}
}

int _tmain(int argc, _TCHAR* argv[])
{
int i,index,yy;
fuck[0][0]='1';ay[0]=0;
fuck[1][0]='1';ay[1]=0;
fuck[2][0]='2';ay[2]=0;
fuck[3][0]='6';ay[3]=0;
fuck[4][0]='4';fuck[4][1]='2',ay[4]=1;
for(i=5;i<501;++i)
multiplication(i);
while(cin>>i)
{
yy=0;
cout<<i<<'!'<<endl;
for(index=ay[i];index>=0;--index)
{
yy++;
cout<<fuck[i][index];
if( (yy%80==0)&&(yy!=(ay[i]+1)) )
cout<<endl;
}
cout<<endl;
}
return 0;
}

自己写的求500以内的所有数的阶乘,

只要输入所要求的数就可以给出结果。
^_^

搜索更多相关主题的帖子: 代码 欣赏 
2006-03-11 17:16
剑人
Rank: 1
等 级:新手上路
帖 子:58
专家分:0
注 册:2005-9-21
得分:0 
#include <algorithm>

这个时标准模板库stl里面的内容,涵盖各种算法!
2006-03-13 15:32
剑人
Rank: 1
等 级:新手上路
帖 子:58
专家分:0
注 册:2005-9-21
得分:0 
我是用.net2005写的
int _tmain(int argc, _TCHAR* argv[])
要在别的平台上运行,如vc6.0++,改为
int main()
输入一个数
就会输出一个这个数的阶乘!!!
2006-03-18 22:32
剑人
Rank: 1
等 级:新手上路
帖 子:58
专家分:0
注 册:2005-9-21
得分:0 

以前也遇到过这样的问题,
^_^
不知道什么原因。
是不是2003运行程序的快捷键不是Ctrl+F5?
还是程序没有输出,换个有输出的看看?
^_^
不懂。

2006-03-19 15:03
剑人
Rank: 1
等 级:新手上路
帖 子:58
专家分:0
注 册:2005-9-21
得分:0 
你有更好的算法吧?

能否让我欣赏一下?

谢了 呀
2006-03-22 08:08
剑人
Rank: 1
等 级:新手上路
帖 子:58
专家分:0
注 册:2005-9-21
得分:0 

^_^

有道理!!!

但是有点浪费空间和时间。

2006-03-22 13:41



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-49800-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.363807 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved