一递归算法:求解释 ~详细点 谢谢
程序代码:
/*任何一个正整数都可以用2的幂次方表示。 例如;137= 2^7+2^3+2^0. -->2(7)+2(3)+2(0) . 输入:正整数n 输出:符合n的 0,2表示*/ #include <iostream> using namespace std; stry(int n,int r) { if(n==1) cout<<"2("<<r<<")"; else { stry(n/2,r+1); if(n%2==1) cout<<"+2("<<r<<")"; } } int main() { int n; cin>>n; if(n>=1) stry(n,0); else cout<<"error"<<endl; }