對於數學黑洞,無論怎樣設值,在規定的處理法則下,最終都將得到固定的乙個值,再也跳不出去了,就像宇宙中的黑洞可以將任何物質,以及執行速度最快的光牢牢吸住,不使它們逃脫一樣。
演算法過程如下:
取任意乙個4位數(4個數字均為同乙個數的除外),將該數的4個數字重新組合,形成可能的最大數和可能的最小數,再將兩者之間的差求出來;對此差值重複同樣過程,最後你總是至達卡普雷卡爾黑洞6174,到達這個黑洞最多需要14個步驟。使用matlab驗證**如下:
n = input('輸入乙個四位正整數:n =') ;
flag = [0,1] ;%falg(0)計算第i次的n的值,flag(1)記錄第i+1次的n的值
while((flag(1) - flag(2)) ~= 0)%當計算的前後兩次的結果相同時便終止
flag(1) = n ;
strva = num2str(n) ;
n = length(strva) ;
num = ;
for i = 1:1:n
num = [num,str2num(strva(i))] ;
end%從小到大排序
for i =1:1:n - 1
for j = 1:1:n-i
if (num(j) > num(j+1))
tmp = num(j) ;
num(j) = num(j+1) ;
num(j+1) = tmp ;
endend
end%計算最大值與最小值
max = num(n) ;
min = num(1) ;
for i =1:1:n
if(i < n)
max = max * 10 + num(n - i) ;
endif(i > 1)
min = min * 10 + num(i) ;
endend
n = max -min ;%計算最大值與最小值之差
flag(2) = n ;
endn
入門 數學黑洞6174
題目描述 description 已知 乙個任意的四位正整數。將數字重新組合成乙個最大的數和最小的數相減,重複這個過程,最多七步,必得6174。即 7641 1467 6174。將永遠出不來。求證 所有四位數數字 全相同的除外 均能得到6174。輸出掉進黑洞的步數。輸入 乙個四位數,且各位數字不全相...
2004 數學黑洞數6174
time limit 3 second memory limit 2 mb 已知乙個任意的不完全重複的四位正整數,將其數字重新組合成乙個最大的數和乙個最小的數並使之相減,這稱為 重排求差 其結果不足四位時,右邊補0,組成大的四位數 左邊補0,組成小的四位數。重複這個過程,最多七步,必能得到6174。...
B1019 數字黑洞6174
題目描述 給定任乙個各位數字不完全相同的 4 位正整數,如果我們先把 4 個數字按非遞增排序,再按非遞減排序,然後用第 1 個數字減第 2 個數字,將得到乙個新的數字。一直重複這樣做,我們很快會停在有 數字黑洞 之稱的 6174,這個神奇的數字也叫 kaprekar 常數。例如,我們從6767開始,...