本程序采用簡(jiǎn)單的遞歸調(diào)用來實(shí)現(xiàn)對(duì)大數(shù)的劃分。
程序源代碼:
#include<iostream>
using namespace std;
void main()
{
int q(int n,int m);
int a;
cout<<"請(qǐng)輸入你要?jiǎng)澐值恼麛?shù):"<<endl;
cin>>a;
cout<<q(a,a)<<endl;
}
//以下代碼為程序的關(guān)鍵部分 計(jì)劃分大整數(shù)的算法
int q(int n,int m)
{
if(n<1||m<1)
return 0;
if(n==1||m==1)
return 1;
if(n<m)
return q(n,n);
if(n==m)
return (q(n,m-1)+1);
return q(n,m-1)+q(n-m,m);
}