角谷猜想:角谷靜夫是日本的一位著名學者.他提出了兩條極簡單的規則,可以對任何一個自然數進行變換,最終使它陷入“4-2-1”的死循環.
基本介紹
- 中文名:角谷猜想
- 類別:日本的一位著名學者
- 當N是奇數時:下一步變為3N+1
- 當N是偶數時:下一步變為 N/2
簡介,變換法則,示例,深度擴展,c++實現,
簡介
以一個正整數n為例,如果n為偶數,就將它變為n/2,如果除後變為奇數,則將它乘3加1(即3n+1)。不斷重複這樣的運算,經過有限步後,一定可以得到1嗎?
這就是角古猜想(1930)。人們通過大量的驗算,從來沒有發現反例,但是也沒有人能證明。
任意選一個整數N,規則如下:如果N為奇數,那么運算N*3+1;如果N為偶數,那么運算N/2。
得到第一個結果後,再重複按規則運算。
這樣一直算下去,你會發現最後數字會在一個循環圈裡循環,這個循環圈是(4→2→1→4)。
不信你可以去試試,建議剛開始選小點的數(100以內),因為這個算算需要耐心。
變換法則
角谷提出的變換法則是:
1.當N是奇數時,下一步變為3N+1;
2.當N是偶數時,下一步變為 N/2。
人們把它稱為“角谷猜想”。
示例
任舉幾個例子試試看:
當N為一位數,如6時,按規則應變為:
6→6÷2→3→3×3+1→10→10÷2→5→5×3+1→16→16÷2→8→8÷2→4→4÷2→2→2÷2→1→1×3+1→4→4÷2→2→2÷2→1→……
最後落入“4-2-1”的死循環。
當N為兩位數,如46時,按規則應變為:
46→46÷2→23→23×3+1→70→70÷2→35→35×3+1→106→106÷2→53→53×3+1→160→160÷2→80→80÷2→40→40÷2→20→20÷2→10→10÷2→5→5×3+1→16→16÷2→8→8÷2→4→4÷2→2→2÷2→1→……
又落入了“4-2-1”的死循環。
不必列舉更多的例子,迄今為止,人們還沒有遇到例外情況,試驗過的數,最終都停留在一個永無休止的循環圈。
但是,自然數浩如煙海,對角谷猜想,目前誰也不能證明,更不能否定。
深度擴展
任舉一個正整數n,如果n能被a整除,就將它變為n/a,如果除後不能再整除,則將它乘b加c(即bn+c)。不斷重複這樣的運算,經過有限步後,一定可以得到d嗎?
此題的答案只能有3種 :1.不一定 2.一定不 3.一定都
以下都是一定都的情況
一 a=b=c=d=m
二 a=m b=1 c=-1 d=0
三 a=m b=c=d=1
四 a=2 b=2^m-1 c=-1 d=1
以上(m>1)
五 a=2 b=2^m-1 c=1 d=1
六 a=2 b=c=d=2m-1
七a=2 b=2^m+1 c=-2^m+1d=1
以上m為任意自然數
最簡單的情況:
a=b=c=d=2
a=2 b=1 c=1 d=1
a=2 b=1 c=-1 d=0
原題只是五的當m=2情況 據說中國有許多人會證明了原題 原題只是擴展的一個及其微小的部分
這道題非常短小 卻隱含著非常豐富的數學思想的...需要用到的東西非常多 那些定理 公式都非常完美 可以表達非常普遍的數學規律 這是一個數學問題而不是什麼猜想 絕對成立的 此題重在培養學生的獨立思考問題的能力 以及逆向思維...
對以上情況的整體證法第一步:
先構造一個2元函式 這個函式揭示了一個秘密 :把能夠被a整除的全部的自然數都轉化成不能被a的自然數 f(x,y) 有a
五 a=2 b=2^m-1 c=1 d=1
用數學歸納法 整除規律 因式分解 自然數拆分...證明:
(2^(mn)-1)/(2^n-1)=e
當m和n為自然數時,e為奇數
m=1 A1=(1)
m=2 A2=(1,5)
m=3 A3=(1,9,11)
m=4 A4=(1,17,19,23)
m=5 A5=(1,33,35,37,39)
m=6 A6=(1,65,67,71,73,79)
...
...
的組合無限數列A()的通項公式 各小項都不能被2的m次方-1整除
這個組合數列是非常簡單的 只是無數個等差數列的首項....
除了第六組擴題擴題和化簡版本是成立的,原題是否成立還有待證明,其他的無論你怎么擴都是存在數量正無窮多的反例存在的
c++實現
#include<iostream>
#include<cstdio>
usingnamespacestd;
longlongn,d,e,r,y,u;
intmain(){
cin>>n;//輸入常數
while(n!=1){
if(n&2!=0){//如果是奇數就乘三加一
d=n*3+1;
cout<<n<<"×3"<<"+1="<<d<<endl;
n=d;
continue;
}
else{//反之除二
e=n/2;
cout<<n<<"÷2="<<e<<endl;
n=e;
continue;
}
}
cout<<"End";
}