數字規律題有萬能求解公式嗎,只要能找出一種規律就行...?

類似這種題,能不能有萬能求解公式,不用管具體的題目?


謝邀。為什麼會有數字規律題?以我的理解,這是在一個很早期的階段訓練人的歸納能力的工具。

很多人都提到了,數字規律題答案其實完全是不唯一的。即使是插值,你可以用多項式插值,也可以用指數函數插值、也可以用Fourier級數去插值、也可以用其他更怪的方式去插值。這樣得到的答案理論上來說都可以延續一個數列,但已經脫離了這個問題本來的目的。

我們在小時候往往會做到這樣的問題:一個圖中有幾朵花、一片葉子;或者是幾個水果、一個蛋糕,請大家圈出其中不同的東西。我相信小朋友們是被期待選出葉子、選出蛋糕的。但思維比較發散的人說:我覺得選某朵花才是對的,因為它是最小的;我覺得選那個葡萄才是對的,因為它有好多好多,其他的只有一個。誰能說這種回答不對呢?道理很簡單,觀察和歸納的標準不一樣,得到的答案也會不一樣。其實只要能自圓其說,怎麼說都行。

但這種題目出現在考試中是非常不妥的,因為它其實是沒有標準答案的。只要你能自圓其說,都是正確答案。不過萬一考試中真正遇到了,還是不要期待有萬能公式了。你需要的是逆向推測出題人或者改卷人希望看到什麼答案,要把你的觀察和歸納能力拉到改卷人的那個水準。

一個小彩蛋:對於手頭有一些離散數據想找規律的朋友,可以參考這個網站:The On-Line Encyclopedia of Integer Sequences? (OEIS?)


樓上對自己都還不夠狠啊……

比如2,4,6,7,8,()。

你要是用4次多項式來擬合,就可以得出第六項的「答案」。

y = 0.0833 x^4 - x^3 + 3.9167 x^2 - 4x + 3

第六項是11.958

但如果不嫌麻煩,拿5次多項式來擬合,第六項你想是幾就是幾。

比如喜歡第六項是3.1415926

那規律就是y = -0.0738 x^5 + 1.1906 x^4 - 7.2747 x^3 + 20.526 x^2 - 24.227 x + 11.858


孔子說得好,四個參數畫大象,五個參數鼻子晃。


如果你不限制多項式規律的話,連牛頓-拉格朗日插值多項式都不用。


直接

[f(n)=egin{cases} a_ia_i	ext{已知},\	ext{any number you want } 	ext{else}. end{cases}]

不過,人們一般找規律都是希望找出比較簡單的規律。

這種情況下,一般只有三五個答案比較好。


數學規律題是訓練一種數學感覺的,並不是讓你們用更高級的方法來抬杠的,而且是專門針對初等數學教育的。
比如我們看到一串數,1,2,3,4,5,我們就會下意識的認為是一串等差數列,但實際上可能第六項就變成7了。但是「我們下意識感覺」這一點還是很重要的,這是基於小時候的訓練而出現的,而數字規律題就是其中一種訓練。
因此,沒什麼必要找萬用公式,這不符合小學或初中教學大綱的要求。


當然有萬能公式

但沒有唯一的答案

有種方法叫作插值法

但是幾個點怎麼擬合都行

可以求出無數種解法


有。

下面這段C代碼可以找到任意數列的後續項,並列印出seed和後10項。

原理應該是非線性函數吧(逃

#include &
#include &

int main(int argc,char **argv) {
int n=argc-1,i,max=0;
int *prefix=(int*)malloc(n*sizeof(int));
unsigned int seed;
for (i=0;i&max?prefix[i]:max;
}
++max;
for (seed=0;;++seed) {
srand(seed);
int ok=1;
for (i=0;i&

舉個例子:如果我要找1,2,3,...這個數列的後續項,我在終端里輸入:

$ ./a.out 1 2 3

我得到了:

27
1 2 3 2 0 1 1 0 3 0 2 1 2

說明seed是27,並且這個數列的後10項分別是:2,0,1,1,0,3,0,2,1,2


從此再也不用擔心被小朋友的數字規律題難住了,這萬能方法真是碉堡了。。。


從此再也不用擔心被小朋友的數字規律題難住了,這萬能方法真是碉堡了。。。

【輕鬆一刻】

今天居然被一道幼兒園的題難住了,啊啊啊!!!

題目是這樣的:

( )( )( )24678,然後填空?

抓耳撓腮想破天,大半天過去,還是想不出來這到底有什麼規律,

最後實在是沒辦法了,看了下答案:

(門前大橋下),(游過一群鴨),(快來快來數一數),24678

。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

我只想說:

【被小朋友難到的尷尬】

相信大家都有這種經歷吧:一回老家,總會有各種活動,7大姑8大姨,走走吃吃喝喝玩玩樂樂。。。。。。當然作為上過大學的知識分子,有時還得承擔一下教育小輩的義務。那些小孩,有的叫你哥哥姐姐,有的已經開始叫你不習慣的叔叔阿姨了。然後有時就可能向我們請教問題,答得出來到也還算了,要是答不出來,類似開心一刻裡面的豬腳,還是頗有幾份尷尬的。

【轉化為數學問題】

像類似的數字找規律問題,基本模型是:給出某些位置的數字,然後根據已知數字得出規律,把空位的位置補上合適的位置。比如給出1,2,3,_,,那基本上就是填4了。。。

當然一般來說,只要找到規律就行,不強求唯一性。比如2,4,_,你可以認為是2倍關係,填8,也可以認為是加2關係,填6。位置+數字---能想起什麼數學模型呢?一串數字,找規律。。。。。很容易想到吧,數列啊。這不就是求數列的通項公式啊。相當於已知數列某幾項,求數列的通項公式罷了,然後帶通項公式就行了,可以得到空白數字。。。

【再進一步抽象】

上一步已經找到了數列這一個數學模型了,因為數列可以看作是x取值為正整數的函數,所以實際上也就是一個函數的問題,1,2,3,_相當於已知f(1)=1,f(2)=2,f(3)=3,求f(4)?,顯然只要把f的解析式求出來就行了,一切都搞定了。。。。

小明:等等,那麼f是啥我都不知道啊,甚至連f是什麼類型的函數我都不知道啊?

回復:既然不知道是什麼類型的,那麼沒有道理取複雜的類型,那就應該要最簡單的類型(這真是真理啊!)

小明:那麼什麼函數最簡單呢?

回復:當然是1,x,x^2,x^3這些組成的多項式類型的函數最簡單啊,一個值就是一個點,兩點定一條直線,3點定個拋物線。。。也就是傳說中的待定係數法。

小明:你確定這樣一定能解出來嗎?要是折騰半天,方程無解,那我豈不是丟臉更大了!

以其這樣還不如直接裝逼一把,說這種題太簡單,哥我才懶得看呢,至少還留有幾分薄面。我可不想折騰半天搞不出來,被一小屁孩嘲笑。。。。。。。

【重大喜訊:有且只有一個解】

小明的擔心是有道理的,所以必須得說明,用待定係數法求多項式函數的解的存在性質。

舉一個簡單的例子:

寫到這,大家發現了什麼了嗎:

這貨

是不是很眼熟啊,似乎在哪裡見過?

好好想想,是個矩陣哦,往矩陣那個方面想,矩陣,線性方程組,行列式,特徵向量。。。

對了這貨不就是范德曼行列式那玩意嗎,哈哈認出來了。。。。

范德曼行列式的性質告訴我們,這個行列式

肯定不是0,所以方程肯定是有解的,而且只有一個解。類似的問題肯定也是有且只有一個解,真是一個很好的結論啊。

【重磅喜訊:不用解方程!!!】

小明:你雖然保證了哪種方法肯定有解,但是解那個方程還是挺費事的啊,難不成每次就得在那傻乎乎的解方程了,能不能不接方程就得出f的解析式,像變魔術似得?

回復:還真讓你小子趕上了,還真有這種牛逼的招數,化腐朽為神奇,立馬能解出來!!!

小明:你可別騙我啊,別拿魔術來騙我。。。

回復:呃,我那不是魔術,那叫拉格朗日多項式。。。。。

小明:我去,拉格朗真牛逼,多項式都被征服了。。。。

回復:這。。。。。。。。。。。

【拉格朗日多項式:萬能公式來啰】

直接上公式了,公式就能看明白,為了簡化,我就不寫一般n的情況了,類推一下就行。。。

過兩點(x1,y1),(x2,y2)的多項式

小明:哎喲我去,好複雜啊。。。。

回復:如果太簡單了,怎麼能顯示學過高等數學的你的水平呢?要是都和1+1=2那麼簡單,也就不用折騰這麼多了,是吧?既然你要的是萬能公式,要處理千千萬萬種情況,那麼為了處理好這些萬能的情況,公式就必須高度抽象,很可能就導致了高度複雜,這是你需要萬能公式所需要付出的代價,你應該做好相應心理準備而不是一邊叫著嚷著要處理萬能情況,一邊抱怨公式太複雜了。端起碗吃飯,放下筷子罵娘這種行為有意思嗎?能什麼好事,什麼便宜都讓你佔了啊?哪有那麼多免費的午餐啊。。。。

【理解拉格朗日插值多項式】

公式雖然複雜,但是理解了也就那麼一回事,就不複雜了。從公式中可以看出,對於任意給的n個點,都可以唯一得出一個n-1次的多項式來經過這n個點,也就得出來函數的解析式,所以數列的通項公式就搞定了,於是就找到了規律。分析2,3,4點的式子,可以看得出,這個多項式,有多少點,就有多少項,每項都是Ai*yi的形式,yi很好理解,就是已知的2,4,6,7,8.然後Ai都是一個分式bi/ci,bi很簡單,就是(x-xj)的連乘少本身(x-xi),ci也很簡單,就是當前的xi,減去xj...(xi-xj)的連乘少本身(xi-xi)。。。。。

為什麼要這樣呢?你試著帶一下數字進去就發現期中的玄機了:x1帶進去,A1=1,A2,A3...全是0,所以f(x1)=y1,同理對於每個點xi,都有f(xi)=yi。也就是按照只有一個Ai為1,其他為0,用這種類似鶴立雞群式思路構造了這個多項式。理解之後,這個多項式就變得很簡單了。。。。

【牛刀小試】

_,_,_,2,4,6,7,8

真的只能門前大橋下。。。神馬的嗎,真的解不出來嗎?如果沒學過拉格朗日多項式,那也罷了,既然學了,這種題,其實也是可以解的,看著:

可以算出來f(1)=36,f(2)=12,f(3)=3,

解析式是:f(x)=(1/12)x^4-2x^3+(209/12)x^2-127/2x+84

【學成出山打怪去,gogogo】

小朋友:大哥哥,幫忙看下這個題目吧。。。

你:我瞧瞧,哦,數字規律題啊,很簡單啊。

小朋友:啊,太好了,你會做啊,教教我啊,求求你了。

你:這東西得學了高等數學才能講清楚,現在我就不講了,告訴你公式吧(然後寫下公式讓小朋友去算。。。)

小朋友:算了半天,終於算好了,發現還真對啊,頓時:


出題老師可以寫上數列前20項,再補空。我看哪個鑽牛角尖學生敢跟我玩插值法。
20項不行那就30項,40項……


解無定法,觀察得知


題主知道圖靈停機問題么?


1.4.9.第四位數是


對於給出前 n 項的數列要求第 n+1 項的填空題,可以無腦抄上第一項。

這是一個以 n 為周期的循環數列。


Z transform.


For example,

Derivation of the Fibonacci-Formula - Fibonacci Search


謝腰。
哎呦。看見數學頭就大。請邀請學霸邱老師。 @ctbzy 。


謝邀,但本人是數學白痴 連強答都答不上。


有的,用高階等差數列,無論出現幾個數,是什麼數,都可以算通項。


推薦閱讀:

以玩票的心態學數學,能達到什麼程度?
如何理解「深度學習和重整化群可以建立嚴格映射」?這一結論對領域有何影響?
數學專業的學生如何看待機器學習和大數據這些方向呢?
哪些數學定理在直覺上是對的,但證明起來很困難?

TAG:數學 | 應用數學 | 趣味數學 | 數學建模 | 數列 |