ループと再帰なしで、C++で1から100を印刷します
再帰関数、gotoステートメントを使用したり、main()関数の外部で関数を作成したりするなど、ループを使用せずに数値を出力する方法はいくつかあります。
これは、C++言語でgotoステートメントを使用して数値を出力する例です。
例
#include <bits/stdc++.h> using namespace std; int main() { int count=1; int x; cout << "Enter the max value of x : "; cin >> x; PRINT: cout << " " << count; count++; if(count<=x) goto PRINT; return 0; }
出力
Enter the max value of x : 1
上記のプログラムでは、GOTOステートメントを使用して、ループや再帰を使用せずに1から100までの数値を出力しました。
PRINT: cout << " " << count; count++; if(count<=x) goto PRINT;
-
C++を使用して再帰を使用せずにルートからリーフへのパスを出力するプログラム
このチュートリアルでは、ルートノードから特定のバイナリツリー内のすべてのリーフノードへのパスを出力するプログラムについて説明します。 たとえば、次の二分木があるとしましょう この二分木には、4つのリーフノードがあります。したがって、ルートノードからリーフノードへのパスは4つになります。 これを解決するために、反復アプローチを使用します。二分木のプレオーダートラバーサルを実行している間、マップに親ポインタを格納できます。トラバーサル中にリーフノードに遭遇したときはいつでも、親ポインタを使用してルートノードからそのパスを簡単に出力できます。 例 #include <bits/st
-
C ++プログラミングで再帰を使用せずに、ルートからリーフへのパスを出力します。
二分木を考えると、プログラムはルートからリーフまでの複数のパスを見つける必要があります。つまり、すべてのパスを出力する必要がありますが、再帰を使用しないことが課題です。 再帰なしで実行することが制約であるため、ツリーを繰り返しトラバースします。したがって、これを実現するために、ルート要素を格納するSTLマップを使用できます。リーフノードがレベル順トラバーサルによって識別されると、ルートノードを指すマップポインターがあるため、ルートからリーフへのパスが出力されます。 上記のツリーには、ルートからリーフに到達するために生成できる複数のパスがあります- 10 -> 3 ->