给定一个任意不完全相同的4位数,列如6767
则7766-6677=1089
9810-0189=9621
9621-1269=8352
8532-2358=6174
#include<iostream>
using namespace std;
void dd(int n)
{
int a,b,c,d;
a=n%10;
b=n/10%10;
c=n/100%10;
d=n/1000;
int temp=0;
if(a<b)
{temp=b;
b=a;
a=temp;}
if(a<c)
{temp=c;
c=a;
a=temp;}
if(a<d)
{temp=d;
d=a;
a=temp;}
if(b<c)
{temp=c;
c=b;
b=temp;}
if(b<d)
{temp=d;
d=b;
b=temp;}
if(c<d)
{temp=d;
d=c;
c=temp;}
int num1=1000*a+100*b+10*c+d;
int num2=d*1000+100*c+10*b+a;
int num3=num1-num2;
if(num2<1000)
cout<<num1<<"-"<<0<<num2<<"="<<num3<<endl;
else
cout<<num1<<"-"<<num2<<"="<<num3<<endl;
if(num3!=6174&&num3!=0)
{dd(num3);}
}
int main()
{
int n;
cin>>n;
dd(n);
return 0;
}