Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on Aug 7th, 2012  |  syntax: None  |  size: 0.57 KB  |  hits: 5  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. /* Ch5-5.c */
  2. #include <stdio.h>
  3. #include <stdlib.h>
  4. /* 河內塔問題的遞迴函數 */
  5. int hanoiTower(int dishs,int peg1,int peg2,int peg3)
  6. {
  7.    if ( dishs == 1)             /* 終止條件 */
  8.      printf("盤子從 %d 移到 %d\n", peg1, peg3);
  9.    else
  10.    {
  11.      hanoiTower(dishs - 1,peg1,peg3,peg2); /* 第1步驟 */
  12.      printf("盤子從 %d 移到 %d\n", peg1, peg3);
  13.      hanoiTower(dishs - 1,peg2,peg1,peg3); /* 第3步驟 */
  14.    }
  15. }
  16. /* 主程式 */
  17. int main()
  18. {
  19.    hanoiTower(5,1,2,3);          /* 呼叫遞迴函數 */
  20.    system("PAUSE");
  21.    return 0;
  22. }