亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

難道說 print a,'-->',c 這句有移動盤子的意思?這不是一句打印的語句嗎

如上如上如上

正在回答

3 回答

如果a只有一個圓盤,可以直接移動到c;

如果a有N個圓盤,可以看成a有1個圓盤(底盤) + (N-1)個圓盤,首先需要把 (N-1) 個圓盤移動到 b,然后,將 a的最后一個圓盤移動到c,再將b的(N-1)個圓盤移動到c。

請編寫一個函數,給定輸入 n, a, b, c,打印出移動的步驟:

move(n, a, b, c)

例如,輸入 move(2, 'A', 'B', 'C'),打印出:

A --> B
A --> C
B --> C

首先搞明白這個函數 表明的目標是 n 個盤子 從a 到c 其中可以借助b?

那么就很明白了 n == 1 只需要 a 移動到c

當n=2 的時候 先要將 a上第一個盤子移動到 b ?再將a上的?第二盤子移動到 c ?再將b上的盤子移動到c

那么推廣一下 就知道了上面的分析是對的



def?move(n,?a,?b,?c):

????if?n==1:

????????print?a,'-->',c

????if?n>1:

????????move(n-1,a,c,b)

????????move(1,a,b,c)

????????move(n-1,b,a,c)

move(4,?'A',?'B',?'C')


0 回復 有任何疑惑可以回復我~
#1

柏舟0

為什么只有一個print a,'-->',c,整個輸出卻有b-->c,a-->b的啊,小白不懂誒,見笑了
2016-09-09 回復 有任何疑惑可以回復我~
#2

M 提問者

非常感謝!
2016-10-18 回復 有任何疑惑可以回復我~

這代表將A移到C的過程,只是用語句表示出來

0 回復 有任何疑惑可以回復我~

如果A上只有一個盤子,則可將A上的盤子直接移動到C上

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
初識Python
  • 參與學習       758397    人
  • 解答問題       8967    個

學python入門視頻教程,讓你快速入門并能編寫簡單的Python程序

進入課程

難道說 print a,'-->',c 這句有移動盤子的意思?這不是一句打印的語句嗎

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號