ハノイの塔のCプログラム
パズルの目的は、次の簡単なルールに従って、スタック全体を別のロッドに移動することです-
-
一度に移動できるディスクは1つだけです。
-
各移動は、スタックの1つから上位のディスクを取り出し、それを別のスタックの上に配置することで構成されます。つまり、ディスクは、スタックの最上位のディスクである場合にのみ移動できます。
-
小さいディスクの上にディスクを置くことはできません。
サンプル
入力 − 3
出力 −AからB
AからC
BからC
AからB
CからA
CからB
AからBの説明-再帰関数を使用して、ハノイの塔を解きます。
例
#include<stdio.h> void TOH(int n,char x,char y,char z) { if(n>0) { TOH(n-1,x,z,y); printf("\n%c to %c",x,y); TOH(n-1,z,y,x); } } int main() { int n=3; TOH(n,'A','B','C'); }
出力
A to B A to C B to C A to B C to A C to B A to B
-
配列の積のCプログラム
n個の要素の配列arr[n]が与えられた場合、タスクはその配列のすべての要素の積を見つけることです。 7つの要素の配列arr[7]があるように、その製品は次のようになります 例 Input: arr[] = { 10, 20, 3, 4, 8 } Output: 19200 Explanation: 10 x 20 x 3 x 4 x 8 = 19200 Input: arr[] = { 1, 2, 3, 4, 3, 2, 1 } Output: 144 以下で使用されるアプローチは次のとおりです − 配列入力を取得します。 そのサイズを見つけます。 配列を反復処理し、その配列の
-
Cでのクリスマスツリーのプログラム
ここで、1つの興味深い問題が発生します。この問題では、クリスマスツリーをランダムに印刷する方法を見ていきます。そのため、ツリーはクリスマスツリーのライトのようにちらつきます。 クリスマスツリーを印刷するために、さまざまなサイズのピラミッドを上下に並べて印刷します。装飾的な葉の場合、ランダムな文字が指定された文字のリストから印刷されます。高さとランダム性は調整可能です。 ここでは、ツリーを生成した後、画面全体がクリアされてから再度生成されます。そのため、これはちらつきツリーのように見えます。 例 #include <stdio.h> #include <stdlib.h&g