2的n次方用c語言怎麼表示?有一個故事,說的是一個國王要賞賜一個大臣,就讓他自己提一個方案大臣說:“我的要求不高,隻要在棋盤的第一個格子裡裝1粒米,第二個格子裡裝2粒,第三個格子裝4粒,第四個格子裝8粒,以此類推,直到把64個格子裝完”國王一聽,暗暗發笑,要求太低了,照辦裝米的工作進展神速,不久棋盤就裝不下了,改用麻袋,麻袋也不行了,改用小車,小車也不行了,糧倉很快告罄數米的人累昏無數,那格子卻像一個無底洞,越來越填不滿國王終于發現,他上當了,一個東西哪怕基數很小,一旦以幾何級數成倍增長,最後的結果也會駭人聽聞,我來為大家科普一下關于2的n次方用c語言怎麼表示?以下内容希望對你有幫助!
有一個故事,說的是一個國王要賞賜一個大臣,就讓他自己提一個方案。大臣說:“我的要求不高,隻要在棋盤的第一個格子裡裝1粒米,第二個格子裡裝2粒,第三個格子裝4粒,第四個格子裝8粒,以此類推,直到把64個格子裝完。”國王一聽,暗暗發笑,要求太低了,照辦!裝米的工作進展神速,不久棋盤就裝不下了,改用麻袋,麻袋也不行了,改用小車,小車也不行了,糧倉很快告罄。數米的人累昏無數,那格子卻像一個無底洞,越來越填不滿。國王終于發現,他上當了,一個東西哪怕基數很小,一旦以幾何級數成倍增長,最後的結果也會駭人聽聞。
這個故事很多人都聽過,還有一個漢諾塔的故事相信很多人也聽過
相傳在印度的貝納雷斯有座大寺廟,寺廟内有一塊紅木闆,上面插着三根鑽石棒,在盤古開天地,世界剛創造不久之時,神便在其中的一根鑽石棒上放了64枚純金的圓盤。有一個叫婆羅門的門徒,不分日夜地向這座寺廟趕路,抵達後,就盡力将64枚純金的圓盤移到另一根鑽石棒上。等到婆羅門完成這項工作,寺廟和婆羅門本身都崩潰了,世界在一聲霹靂中也毀滅了。
這兩個故事其實都用到了2的n次方。
國王的米粒很簡單,
第1個格子是2的0次方1
第2個格子是2的1次方2 前2個格子總和恰好是3,也就是2的2次方=4-1
第3個格子是2的2次方4 前3個格子總和恰好是7,也就是2的3次方=8-1
......
大家已經發現,1,2,4,8,16.……
2的n次方這些數,前面所有數加起來,恰好等于下一個數減1.
這是因為2的n次方具有唯一性,不清楚可參考前文
2的n次方在數學中的作用(1)二進制
第64個格子是2的63次方 這64個格子的總和就是2的64次方減1
關于漢諾塔問題我們用遞歸的方法來歸納,有一個原則,大圓盤不能蓋在小圓盤上面
如果有1個圓盤
第1次 1号盤 A---->C 共1 次
如果有2個圓盤
第1次 1号盤 A---->B
第2次 2号盤 A---->C
第3次 1号盤 B---->C 共3 次
這裡我們需要記住,移動2個圓盤我們用了3次,過程也要清晰記得
如果有3個圓盤
第1次 1号盤 A---->C
第2次 2号盤 A---->B
第3次 1号盤 C---->B
第4次 3号盤 A---->C
第5次 1号盤 B---->A
第6次 2号盤 B---->C
第7次 1号盤 A---->C 共 7 次
具體思路就是,剛前2個圓盤怎麼移動的,用了3次沒有忘記吧,我們隻需要把第3個圓盤移動到空柱子上,再重複一遍移動2個圓盤的過程就可以了,3 1 3=7
如果有4個圓盤
同理,剛3個圓盤的移動過程還記得嗎,一共7次,我們隻需要把第4個圓盤移動到空柱子上,再重複一遍移動3個圓盤的過程就可以了,7 1 7=15
後面就不再舉例了,過程同上,理論上,漢諾塔問題如何移動已經輕松破解了。
那我們有沒有發現這些數有什麼規律呢 1,3,7,15
對應2的n次方2,4,8,16
結論就是移動幾個圓盤需要的次數就是2的幾次方減1
移動64個圓盤需要移動2的64次方減1次
假如我手指翻飛,動得飛快,1秒鐘就移動1次,不吃不喝不睡覺的情況下,需要移動大概5800多億年,地球現在壽命46億年,太陽壽命不到100億年。所以這個末日問題不是我們需要擔心的,大家可以安心地睡覺了。
本文由西鐵成2000原創,歡迎關注,帶你一起長知識。
更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!