C++出力演算子を使用して先行ゼロを出力する
ここでは、C++の出力として先行ゼロを出力する方法を説明します。いくつかの数値の前にいくつかのゼロを直接置くと、すべてのゼロが破棄され、正確な数値のみが出力されることがわかっています。
Cでは、フォーマット指定子のいくつかのオプションを使用して、この問題を解決できます。 C ++では、iomanipライブラリを使用して出力シーケンスを操作できます。このライブラリでは、前のテキストと現在のテキストの間にスペースを空けるためのsetw()関数を取得します。次に、setfill(char)関数を使用して、そのフィールドにいくつかの文字を追加できます。
setw()とsetfill()について理解するには、次のコードを確認してください。
サンプルコード
#include<iostream> #include<iomanip> using namespace std; int main() { int number = 256; //want to print 00000256, so total 8 characters cout << setw(8) << setfill('0') << number; }
出力
00000256
-
C++で3nスライスのピザ
さまざまなサイズの3nスライスのピザがあるとすると、私と2人の友人は次のようにピザのスライスを取ります- ピザのスライスを選びます。 友達のアマルが私のピックの反時計回りに次のスライスをピックします。 友達のBimalが、私のピックの時計回りに次のスライスをピックします。 ピザのスライスがなくなるまで、これらの手順を繰り返します。 ピザスライスのサイズは、時計回りの円形配列スライスで表されます。可能な最大のスライスサイズの合計を見つける必要があります。 したがって、入力が[9,8,6,1,1,8]のような場合、 次に、各ターンでサイズ8のピザスライスを選
-
C++でバイナリツリーを印刷する
これらのルールに基づいて、m *n2D文字列配列に二分木を表示する必要があるとします- 行番号mは、指定された二分木の高さと同じである必要があります。 列番号nは常に奇数である必要があります。 ルートノードの値は、配置できる最初の行の真ん中に配置する必要があります。ルートノードが存在する列と行は、残りのスペースを2つの部分に分割します。これらは左下部分と右下部分です。左下の部分に左のサブツリーを印刷し、右下の部分に右のサブツリーを印刷する必要があります。ここで、左下部分と右下部分は同じサイズである必要があります。一方のサブツリーがnoneで、もう一方がnoneでない場合でも、noneサブツリ