魔方很難哈雏?用Excel就能輕松搞定

魔方這個(gè)看似很難的兒童益智玩具嘁傀,在小編認(rèn)為對(duì)IT來(lái)說(shuō)應(yīng)該是一個(gè)很簡(jiǎn)單的公式問(wèn)題兴蒸。因?yàn)橐粋€(gè)excel就能輕松搞定。

魔方陣是一個(gè)非常有趣的數(shù)學(xué)問(wèn)題细办,是指由自然數(shù)1~N2(次方)(N為奇數(shù))構(gòu)成的方陣橙凳,其各行、各列以及對(duì)角線元素之和均相等(如下圖所示)笑撞。魔方陣的數(shù)學(xué)排列算法很復(fù)雜岛啸,若不懂得排列規(guī)律,很難排出魔方陣娃殖!本文不僅介紹了一種簡(jiǎn)單的排列方法值戳,而且還巧用Excel中的單元格和宏代碼的結(jié)合將其排列過(guò)程動(dòng)態(tài)地呈顯出來(lái)(速度由用戶自己控制),呈現(xiàn)出來(lái)之后還可借助Excel中的求和函數(shù)對(duì)各行炉爆、各列進(jìn)行求和驗(yàn)證堕虹。更不可思議的是宏代碼只有25行卧晓,簡(jiǎn)練程度勝過(guò)任何編程工具!

一赴捞、算法簡(jiǎn)介

先將所有單元格清空逼裆,讀取階數(shù)N之后把1放入第一行的最中間一列,此后依次尋找2到N2(次方)這些數(shù)放入的位置赦政,基本算法是:下一個(gè)數(shù)放在前一個(gè)數(shù)的上一行的下一列(第一行的上一行是最后一行胜宇,最后一列的下一列是第一列);如果此位置已被占用(單元格的內(nèi)容非空)恢着,則將它放在前一個(gè)數(shù)的下面桐愉。

注:任一單元格(H行L列)的地址可表示為Chr(L+64) & H,其中Chr是取字符的函數(shù)掰派。

二从诲、用Excel實(shí)現(xiàn)的方法

1.界面設(shè)計(jì)

啟動(dòng)Excel,通過(guò)“視圖”菜單打開(kāi)“窗體”工具欄靡羡,在第一行添加一個(gè)按鈕控件系洛,并在彈出的對(duì)話框中單擊“新建”按鈕,進(jìn)入宏代碼編輯窗口略步。

2.錄制宏在宏代碼編輯窗口中輸入以下代碼:

3描扯、運(yùn)行

關(guān)閉宏代碼窗口,

進(jìn)入Excel后先單擊任一單元格或按Esc鍵

以取消按鈕的編輯狀態(tài)趟薄;然后單擊前面添加的按鈕就可運(yùn)行:在彈出的對(duì)話框中先輸入要顯示的魔方陣的階數(shù)绽诚,然后輸入顯示整個(gè)魔方陣所用的時(shí)間;此后就可看到魔方陣中元素的動(dòng)態(tài)排列過(guò)程杭煎。感興趣的讀者可借助Excel提供的函數(shù)進(jìn)行求和驗(yàn)證憔购。

4、說(shuō)明

如果將宏代碼及界面保存成Excel文件岔帽,下次打開(kāi)時(shí)將提示:該文件中包含宏,宏可能會(huì)攜帶病毒

…等信息导绷;自己編寫(xiě)的這段宏是安全的犀勒,選擇“啟用宏”即可。

本代碼在Excel2000中運(yùn)行通過(guò)妥曲。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末贾费,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子檐盟,更是在濱河造成了極大的恐慌褂萧,老刑警劉巖,帶你破解...
    沈念sama閱讀 212,718評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件葵萎,死亡現(xiàn)場(chǎng)離奇詭異导犹,居然都是意外死亡唱凯,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,683評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門谎痢,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)磕昼,“玉大人,你說(shuō)我怎么就攤上這事节猿∑贝樱” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 158,207評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵滨嘱,是天一觀的道長(zhǎng)峰鄙。 經(jīng)常有香客問(wèn)我,道長(zhǎng)太雨,這世上最難降的妖魔是什么吟榴? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,755評(píng)論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮躺彬,結(jié)果婚禮上煤墙,老公的妹妹穿的比我還像新娘。我一直安慰自己宪拥,他們只是感情好仿野,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,862評(píng)論 6 386
  • 文/花漫 我一把揭開(kāi)白布邑遏。 她就那樣靜靜地躺著诚亚,像睡著了一般菜循。 火紅的嫁衣襯著肌膚如雪惠猿。 梳的紋絲不亂的頭發(fā)上谅辣,一...
    開(kāi)封第一講書(shū)人閱讀 50,050評(píng)論 1 291
  • 那天搂根,我揣著相機(jī)與錄音砾医,去河邊找鬼亡脸。 笑死校镐,一個(gè)胖子當(dāng)著我的面吹牛亿扁,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播鸟廓,決...
    沈念sama閱讀 39,136評(píng)論 3 410
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼从祝,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了引谜?” 一聲冷哼從身側(cè)響起牍陌,我...
    開(kāi)封第一講書(shū)人閱讀 37,882評(píng)論 0 268
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎员咽,沒(méi)想到半個(gè)月后毒涧,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,330評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡贝室,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,651評(píng)論 2 327
  • 正文 我和宋清朗相戀三年契讲,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了仿吞。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,789評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡怀泊,死狀恐怖茫藏,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情霹琼,我是刑警寧澤务傲,帶...
    沈念sama閱讀 34,477評(píng)論 4 333
  • 正文 年R本政府宣布,位于F島的核電站枣申,受9級(jí)特大地震影響售葡,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜忠藤,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,135評(píng)論 3 317
  • 文/蒙蒙 一挟伙、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧模孩,春花似錦尖阔、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,864評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至块茁,卻和暖如春齿坷,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背数焊。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,099評(píng)論 1 267
  • 我被黑心中介騙來(lái)泰國(guó)打工永淌, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人佩耳。 一個(gè)月前我還...
    沈念sama閱讀 46,598評(píng)論 2 362
  • 正文 我出身青樓遂蛀,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親干厚。 傳聞我的和親對(duì)象是個(gè)殘疾皇子答恶,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,697評(píng)論 2 351

推薦閱讀更多精彩內(nèi)容

  • 也許你已經(jīng)做了上千張表格,也許你用函數(shù)算了上千復(fù)雜的運(yùn)算萍诱。也許認(rèn)為excel不過(guò)如此,今天25招秘技希望可以幫到大...
    南屋阿米佛頭閱讀 3,709評(píng)論 0 51
  • 1.1 VBA是什么 直到90年代早期,使應(yīng)用程序自動(dòng)化還是充滿挑戰(zhàn)性的領(lǐng)域.對(duì)每個(gè)需要自動(dòng)化的應(yīng)用程序,人們不得...
    浮浮塵塵閱讀 21,728評(píng)論 6 49
  • 一污呼、誤刪資料恢復(fù) 一不小心刪錯(cuò)了裕坊,還把回收站清空了,咋辦把嗫帷籍凝?只要三步周瞎,你就能找回你刪掉并清空回收站的東西。 步驟:...
    八爺君閱讀 1,542評(píng)論 2 7
  • 別和我說(shuō)你不會(huì)EXCEL饵蒂,半小時(shí)讓你成為EXCEL高手声诸,據(jù)說(shuō),80%以上的人看了這個(gè)退盯,都相見(jiàn)恨晚彼乌,你會(huì)么?如果我們...
    夏洛克的克閱讀 8,435評(píng)論 4 268
  • 本例為設(shè)置密碼窗口 (1) If Application.InputBox(“請(qǐng)輸入密碼:”) = 1234 Th...
    浮浮塵塵閱讀 13,630評(píng)論 1 20