C ++の2次元ベクトル

2 Dimensional Vector C



ベクトルは動的配列を作成するために使用され、ベクトルのサイズは、ベクトルに要素を追加および削除することで増減できます。ベクトルが別のベクトル内で宣言されると、そのベクトルは2次元ベクトルと呼ばれ、2次元配列のように機能します。 2次元ベクトルには複数の行が含まれ、各行は別のベクトルです。このチュートリアルでは、C ++での2次元ベクトルの使用法を示しています。

構文:

2次元ベクトルの構文は次のとおりです。







ベクター<ベクター<データ・タイプ>>vector_name;

特定のデータ型は、ベクトル宣言時に定義されます。ベクトルサイズが定義されていない場合、そのベクトルは空のベクトルと呼ばれます。ベクトルのサイズは、さまざまな方法を使用するか、ベクトルを初期化することで変更できます。



例-1:同数の列の2次元ベクトルを作成する

次の例は、文字データを含む3行4列の2次元ベクトルを宣言する方法を示しています。ここで、ベクトルの値は、ベクトル宣言時に定義されており、ネストされた ‘ にとって ‘ループは、ベクトルの値を出力するために使用されています。



//必要なライブラリを含める

#含む

#含む

名前空間stdを使用する;
int主要(()。
{{
/ *
2次元ベクトルを宣言します
文字の
* /

ベクター<ベクター>>chrVector
{{{{'に' 'NS' 'NS' 'NS'} {{'と' 'NS' 'NS' 'NS'} {{'私' 'NS' 'に' 'NS'}};
//ベクトルの値を出力します
費用<< 'ベクトルの値は次のとおりです。NS';
にとって ((int= 0;<chrVector。サイズ(()。;++)。
{{
にとって ((intNS= 0;NS<chrVector[]サイズ(()。;NS++)。
費用<<chrVector[][NS] << '';
費用<< 'NS';
}
戻る 0;
}

出力:





上記のコードを実行すると、次の出力が表示されます。



例2:列数が異なる2次元ベクトルを作成する

次の例は、4行の2次元ベクトルを宣言する方法を示しています。ここで、最初の行には1つの列、2番目の行には2つの列、3番目の行には3つの列、4番目の行には4つの列が含まれます。ベクトルは整数データで初期化され、ネストされた ‘を使用して出力されます にとって ’ループ。

//必要なライブラリを含める

#含む

#含む

名前空間stdを使用する;

int主要(()。
{{
/ *
で2Dベクトルを初期化します
各行に異なるが含まれる整数
要素の数
* /

ベクター<ベクター>>intVector
{{{{20} {{10 30} {{50 40 60 } {{80 10 70 90 }};
// forループを使用してベクトルの値を出力します
費用<< 'ベクトルの値は次のとおりです。NS';
にとって ((vectorrowintVector)。
{{
にとって ((int時間)。
費用<<時間<< '';
費用<< 'NS';
}
戻る 0;
}

出力:

上記のコードを実行すると、次の出力が表示されます。

例-3:デフォルト値で2次元の空のベクトルを初期化します

浮動小数点数の2次元の空のベクトルを宣言し、浮動小数点数でベクトルを初期化する方法を次の例に示します。ここでは、ネストされた「for」ループを使用して、を使用してベクトルにデータを挿入しています。 push_back() 関数を実行し、ベクトルの値を出力します。

デフォルト値の6.5は、2行3列を作成することでベクターに挿入されています。 NS サイズ() 関数は、ベクトルの値を出力するために行と列の合計をカウントするために使用されています。

//必要なライブラリを含める

#含む

#含む

名前空間stdを使用する;

int主要(()。
{{
//デフォルト値を設定します
浮くdefault_value= 6.5;
//外側のベクトルを定義します
ベクター<ベクター>>outVect;

にとって ((int= 0;< 2;++)。
{{
//内部ベクトルを定義します
vectorinVect;
にとって ((intNS= 0;NS< 3;NS++)。 {{
//デフォルト値を挿入します
inVect。push_back((default_value)。;
}
//内側のベクトルを外側のベクトルに挿入します
outVect。push_back((inVect)。;
}

//ベクトルの値を出力します
費用<< 'ベクトルの値は次のとおりです。NS';
にとって ((int= 0;<outVect。サイズ(()。;++)。
{{
にとって ((intNS= 0;NS<outVect[]サイズ(()。;NS++)。
費用<<outVect[][NS] << '';
費用<< 'NS';
}
戻る 0;
}

出力:

上記のコードを実行すると、次の出力が表示されます。出力には、デフォルト値と、コードによって作成された行と列の数に基づいたベクトルの内容が表示されます。

例-4:入力値を取得して2次元の空のベクトルを初期化します

次の例に、ユーザーからの入力を使用して2次元ベクトルを作成する方法を示します。整数の2次元の空のベクトルが、2行3列を含むコードで宣言されています。

ネストされた ‘ にとって ‘ループは、ユーザーから6(2×3)の整数を取得し、インデックス値を使用してそれらをベクトルに挿入するために使用されています。別のネストされた ‘ にとって ‘ループは、挿入されたベクトルの値を出力するために使用されています。

//必要なライブラリを含める

#含む

#含む

名前空間stdを使用する;

int主要(()。
{{
//列の数を定義します
intとともに= 3;
//行数を定義します
int= 2;
//整数変数を初期化します
int時間= 0;
//空のベクターを初期化します
ベクター<ベクター>>int2DVector;

//外側のベクトルのサイズを変更します
int2DVector。サイズ変更(()。;
にとって ((int= 0;<;++)。
{{
//内部ベクトルのサイズを変更します
int2DVector[]サイズ変更((とともに)。;
にとって ((intNS= 0;NS<とともに;NS++)。
{{
//ユーザーから入力を受け取ります
費用時間;
//ベクターに挿入します
int2DVector[][NS] =時間;
}
}

//ベクトルの値を出力します
費用<< 'ベクトルの値は次のとおりです。NS';
にとって ((int= 0;<int2DVector。サイズ(()。;++)。
{{
にとって ((intNS= 0;NS<int2DVector[]サイズ(()。;NS++)。
費用<<int2DVector[][NS] << '';
費用<< 'NS';
}
戻る 0;
}

出力:

上記のコードを実行すると、次の出力が表示されます。出力には、6つの入力値と、行と列の数に基づくベクトルの内容が表示されます。

結論

2次元ベクトルは、C ++プログラミングで使用され、行と列に基づいてデータを格納およびアクセスします。このチュートリアルでは、簡単な例を使用して、2次元ベクトルを作成するさまざまな方法を示しました。 C ++で2次元ベクトルを使用する目的は、このチュートリアルを読んだ後で明らかになります。