Console-算法[for]-国王与老人的六十四格
生活随笔
收集整理的這篇文章主要介紹了
Console-算法[for]-国王与老人的六十四格
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
| ylbtech-Arithmetic:Console-算法[for]-國王與老人的六十四格 |
| 1.A,案例 |
-- ylb:算法
-- Type:算法[for]
-- munu:國王與老人的六十四格 -- 20:32 2012/3/16
-- ======================================================== 案例: 印度有個國王,他擁有超人的權力和巨大的財富。但權力和財富最終讓他對生活到厭倦。他渴望找新鮮的刺激。有一天,來了一位老人,他帶著自己的發明“國際象棋”來朝見國王。國王見了這新奇的玩意兒非常喜歡,就和老人對下起來。但是一下上手了,就舍不得放下,就留著老人一連下了三天三夜。到了第四天早上,國王感到非常滿足,就對老人說道:“你給了我無窮的樂趣。為了獎賞你,我現在決定,你可以在我這兒得到你所要的任何東西。” 的確,這位國王是如此富有,難道還有什么要求不能滿足嗎?但老人卻回答說:“萬能的王啊!你雖然是世界上最富有的人,恐怕也滿足不了我的要求。” 國王不高興了,他皺起眉頭,嚴厲地說道:“說吧!哪怕你要半個王國。” “請王上下令在棋盤的第一格上放一粒小麥,在第二格上方兩粒小麥,在第三格放四粒小麥,在第四格上放八粒小麥,這就樣每次增加一倍,一直到地六十四格為止。” “可憐的老人,你的要求就這么一點點嗎?”國王不禁笑了起來。他立即命人去取一袋小麥來,按照老人的要求數給他。但是一袋小麥很快完了。國王覺得有點奇怪,就命人再取一袋來,接著是第三袋、第四袋······小麥堆積如山,但是離第六十四格還遠得很吶。只見國王的臉色由驚奇逐漸轉為陰沉,最后竟勃然大怒。原來,他國庫里的小麥已經搬光了,還到不了棋盤上的第五十格。王國認為老人在戲弄他,就下令把老人殺了。
| 1.B,解決方案 |
?1.B.1,算法一
using System;namespace ConsoleApplication1 {class Program{/// <summary>/// ylb:分析/// 第一格是2的0次方=1,第二格是2的1次方=2,第三格是2的2次方=4,第四格是2的3次方=8,······/// 第六十四格是2的63次方=?/// </summary>static void Main(string[] args){int num = 64; //共計64格double sum = 0; //設統計初始值為0//累加for (int i = 1; i <= num; i++){sum += Math.Pow(2, i - 1); //等同于sum =sum + Math.Pow(2, i - 1); }Console.WriteLine(sum);}} }1.B.2,算法二
using System;namespace ConsoleApplication1 {class Program{/// <summary>/// ylb:分析/// 第一格是2的0次方=1,第二格是2的1次方=2,第三格是2的2次方=4,第四格是2的3次方=8,······/// 第六十四格是2的63次方=?/// </summary>static void Main(string[] args){double sum = 0, gs = 1; //sum:麥子粒數總和,gs:每一個對應的粒數//累加for (int i = 1; i <= 64; i++){sum += gs;gs = Math.Pow(2, i);}Console.WriteLine(sum);}} }| 1.C,運行結果 |
,如需轉載請自行聯系原作者
總結
以上是生活随笔為你收集整理的Console-算法[for]-国王与老人的六十四格的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 服务器虚拟网络设置,虚拟化服务器网络设置
- 下一篇: ftp服务器连接成功不显示端口,ftp被