C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

C++の配列内の異常の数


このチュートリアルでは、指定された配列内の異常の数を見つけるプログラムを作成します。

数値と他のすべての数値との絶対差が指定された数値kより大きい場合、その数値は指定された配列の異常です。例を見てみましょう。

入力

arr = [3, 1, 5, 7]
k = 1

出力

4

すべての数値と他の数値との絶対差はkより大きくなります。

アルゴリズム

  • アレイを初期化します。

  • アレイを繰り返し処理します。

    • 要素を取得し、配列を反復処理します。

      • 2つの数値の絶対差を求めます。

      • 絶対差がk以下でない場合は、異常の数を増やします。

実装

以下は、C++での上記のアルゴリズムの実装です

#include <bits/stdc++.h>
using namespace std;
int getAnomaliesCount(int arr[], int n, int k) {
   int count = 0;
   for (int i = 0; i < n; i++) {
      int j;
      for (j = 0; j < n; j++) {
         if (i != j && abs(arr[i] - arr[j]) <= k) {
            break;
         }
      }
      if (j == n) {
         count++;
      }
   }
   return count;
}
int main() {
   int arr[] = {3, 1, 5, 7}, k = 1;
   int n = 4;
   cout << getAnomaliesCount(arr, n, k) << endl;
   return 0;
}

出力

上記のコードを実行すると、次の結果が得られます。

4

  1. 2D配列をC++関数に渡す

    配列は引数として関数に渡すことができます。このプログラムでは、2次元配列の要素を関数に渡して表示するように実行します。 アルゴリズム Begin The 2D array n[][] passed to the function show(). Call function show() function, the array n (n) is traversed using a nested for loop. End サンプルコード #include <iostream> using namespace std; void show(int n[4][3]); int

  2. C++のCHAR_BIT

    CHAR_BITは、charのビット数です。これは、C++言語の「limits.h」ヘッダーファイルで宣言されています。 1バイトあたり8ビットです。 これがC++言語のCHAR_BITの例です 例 #include <bits/stdc++.h> using namespace std; int main() {    int x = 28;    int a = CHAR_BIT*sizeof(x);    stack<bool> s;    cout << "T