ブラックホールの[PTA] 7-44数(20分)

また、「Kaprekar問題」として知られてもトラップの数として知られているブラックホールの数は、奇妙な変換特性の数のクラスです。

あなたの任意の一つではない「再配置差分」操作の限られた数によって、すべて同じ3桁の数字は、常に495を取得します。495ナンバー3は、最終的に得られたブラックホールです。デジタル数マイナス再配列の最小数の最大数で構成され、いわゆる「再配置差分」動作が再配置しました。(4個6174ブラックホールの数)。

例えば、3桁207:

第一再配列が得差分:720--27 = 693;
第二再配列が得差異:963--369 = 594;
第三再配列が得差異:954--459 = 495;
後で495のままですブラックホールの数。3桁の数字3はすべて、変換後0に等しい場合。

任意の3桁の番号、プログラミングプロセスは、差分の転位を与えられます。

入力フォーマット:
所与の行における入力3桁の番号。

出力形式:
以下のフォーマット出力の再配置のプロセスを差分:

参照:再配列デジタルの最大数 - 再配列差の最小数=

遠く右手側の495が表示されるまで、最初から第1、。

入力サンプル:
123

出力サンプル:
1:321--123 = 198
2:981--189 = 792
3:972--279 = 693
4:963--369 = 594
5:954--459 = 495

#include <stdio.h>
int main() 
{
    int x,a,b,c,t,i=0;
    int max,min;
    scanf("%d",&x);
    do{
    a=x/100;
    b=x%100/10;
    c=x%10;
    if(a<b){
        t=a;
        a=b;
        b=t;
    }
    if(a<c){
        t=a;
        a=c;
        c=t;
    }
    if(b<c){
        t=b;
        b=c;
        c=t;
    }
    max=a*100+b*10+c;
    min=c*100+b*10+a;
    x=max-min;
    i++;
    printf("%d: %d - %d = %d\n",i,max,min,x);
    }while(x!=495);
return 0;
}
公開された48元の記事 ウォンの賞賛0 ビュー299

おすすめ

転載: blog.csdn.net/weixin_46399138/article/details/105423638