xの倍数である配列のすべての要素を昇順で再配置するC++プログラム
「intarr[]」として整数型配列が与えられ、「x」として整数型変数が与えられます。タスクは、配列のすべての要素を、指定された整数値「x」で割り切れるように再配置することであり、配置は昇順である必要があります。
このためのさまざまな入出力シナリオを見てみましょう-
入力 − int arr [] ={4,24、3、5、7、22、12、10}、int x =2
出力 − x 2の倍数である配列のすべての要素を降順で並べ替えると、次のようになります。4 10 3 5 7 12 22 24
説明 -{4,24、3、5、7、22、12、10}の値と2の値を持つxを含む整数型の配列が与えられます。次に、分割可能な配列のすべての要素をチェックします。 2、つまり4、24、22、12、10で。ここで、すべての要素を昇順で配置します。最終出力である4、10、3、5、7、12、22、24。
入力 − nt arr [] ={4,24、3、5、7、22、12、10}、int x =3
出力 − x 3の倍数である配列のすべての要素を降順で並べ替えると、次のようになります。4 3 12 5 7 22 24 10
説明 − {4,24、3、5、7、22、12、10}の値と3の値を持つxを含む整数型の配列が与えられます。最初に、で割り切れる配列のすべての要素をチェックします。 3、つまり3、24、12。次に、すべての要素を昇順で配置します。つまり、最終出力である4、3、12、5、7、22、24、10です。
以下のプログラムで使用されているアプローチは次のとおりです
-
整数型配列を宣言します。配列のサイズを計算し、sizeという名前の変数に格納します。配列を再配置する必要がある整数型変数「x」を宣言します。
-
データを関数Rearrange_Elements(arr、size、x)
に渡します -
関数Rearrange_Elements(arr、size、x)の内部
-
整数型の値を格納する型ベクトルのvecとして変数を作成します。
-
iがサイズより小さくなるまでiから0までループFORを開始します。ループ内で、IF arr [i]%x =0を確認してから、arr[i]をvecにプッシュします
-
C ++ STLソートメソッドを使用して配列をソートします。ここで、begin()とend()をパラメーターとして関数に渡します。
-
iがサイズより小さくなるまでiから0までループFORを開始します。 IF arr [i]%x =0を確認してから、arr[i]をvec[j++]に設定します。
-
配列の最初の要素から最後の使用可能な要素までトラバースして、forループを使用して配列を出力します。
-
例
#include <bits/stdc++.h> using namespace std; void Rearrange_Elements(int arr[], int size, int x){ vector<int> vec; int j = 0; for(int i = 0; i < size; i++){ if(arr[i] % x == 0){ vec.push_back(arr[i]); } } sort(vec.begin(), vec.end()); for (int i = 0; i < size; i++){ if(arr[i] % x == 0){ arr[i] = vec[j++]; } } cout<<"Rearrangement of all elements of array which are multiples of x "<<x<<" in decreasing order is: "; for(int i = 0; i < size; i++){ cout << arr[i] << " "; } } int main(){ int arr[] = {4,24, 3, 5, 7, 22, 12, 10}; int x = 2; int size = sizeof(arr) / sizeof(arr[0]); Rearrange_Elements(arr, size, x); return 0; }
出力
上記のコードを実行すると、次の出力が生成されます
Rearrangement of all elements of array which are multiples of x 2 in decreasing order is: 4 10 3 5 7 12 22 24
-
配列要素の乗算のためのC++プログラム
整数要素の配列で与えられ、タスクは配列の要素を乗算して表示することです。 例 Input-: arr[]={1,2,3,4,5,6,7} Output-: 1 x 2 x 3 x 4 x 5 x 6 x 7 = 5040 Input-: arr[]={3, 4,6, 2, 7, 8, 4} Output-: 3 x 4 x 6 x 2 x 7 x 8 x 4 = 32256 以下のプログラムで使用されるアプローチは次のとおりです − 一時変数を初期化して、最終結果を1で格納します ループを0からnまで開始します。nは配列のサイズです 最終結果を得るには、tempの値にarr[i]を掛け続
-
配列内のxより大きいすべての値をフィルター処理するプログラム
numsという番号のリストがあるとします。別の数xもあります。フィルタリングによって、x未満のnumsからすべての数値を見つける必要があります。 Pythonを使用する場合、関数を引数として受け取り、この関数を使用してフィルター処理するfilter()メソッドが1つあります。 したがって、入力がnums =[1,5,8,3,6,9,12,77,55,36,2,5,6,12,87] x =50の場合、出力は[ 1、5、8、3、6、9、12、36、2、5、6、12] これを解決するには、次の手順に従います- 関数fを定義します。これは、引数aを取ります。