ホームページ > バックエンド開発 > C++ > C言語で書かれたハノイの塔プログラム

C言語で書かれたハノイの塔プログラム

PHPz
リリース: 2023-09-13 10:13:06
転載
1530 人が閲覧しました

C言語で書かれたハノイの塔プログラム

ハノイの塔は数学的なパズルです。それは 3 本のロッドと、ロッドのいずれかにスライドするさまざまなサイズのいくつかのディスクで構成されます。パズルは、円盤がサイズの小さい順に棒の上にきちんと積み上げられ、最小の円盤が一番上に置かれることから始まります。同じスタックを 3 番目のロッドに移動する必要があります。

パズルの目標は、次の簡単なルールに従って、スタック全体を別のロッドに移動することです。 -

  • 一度に移動できるディスクは 1 つだけです。

  • 各移動には、1 つのパイルから上のディスクを取り出して別のパイルの上に配置することが含まれます。つまり、ディスクは 1 つのパイル ディスクの上にある場合にのみ移動できます。

  • ディスクをより小さいディスクの上に置くことはできません。

#例

入力 − 3

出力 − A から B

A to C

− 再帰関数を使用し、ハノイの塔を解決します。

Example

#include<stdio.h>
void TOH(int n,char x,char y,char z) {
   if(n>0) {
      TOH(n-1,x,z,y);
      printf("</p><p>%c to %c",x,y);
      TOH(n-1,z,y,x);
   }
}
int main() {
   int n=3;
   TOH(n,&#39;A&#39;,&#39;B&#39;,&#39;C&#39;);
}
ログイン後にコピー

出力

A to B
A to C
B to C
A to B
C to A
C to B
A to B
ログイン後にコピー

以上がC言語で書かれたハノイの塔プログラムの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:tutorialspoint.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート