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

配列内のすべてのペアワイズ連続要素の絶対差(C ++)?


この問題では、配列内の要素の各ペアの要素間の絶対差を取得する方法を確認します。 n個の要素がある場合、結果の配列にはn-1個の要素が含まれます。要素が{8、5、4、3}であると仮定します。結果は|8-5|になります=3、次に| 5-4 | =1、| 4-3 |=1。

アルゴリズム

pairDiff(arr、n)

begin
   res := an array to hold results
   for i in range 0 to n-2, do
      res[i] := |res[i] – res[i+1]|
   done
end

#include<iostream>
#include<cmath>
using namespace std;
void pairDiff(int arr[], int res[], int n) {
   for (int i = 0; i < n-1; i++) {
      res[i] = abs(arr[i] - arr[i+1]);
   }
}
main() {
   int arr[] = {14, 20, 25, 15, 16};
   int n = sizeof(arr) / sizeof(arr[0]);
   int res[n-1];
   pairDiff(arr, res, n);
   cout << "The differences array: ";
   for(int i = 0; i<n-1; i++) {
      cout << res[i] << " ";
   }
}

出力

The differences array: 6 5 10 1

  1. C++の配列内のすべての素数の積

    いくつかの要素を持つ整数配列arr[]が与えられた場合、タスクはその数のすべての素数の積を見つけることです。 素数は、1で割った数、またはその数自体です。または、素数は、1とその数自体を除いて他の数で割り切れない数です。 1、2、3、5、7、11など 与えられた配列の解を見つける必要があります- 入力 −arr [] ={11、20、31、4、5、6、70} 出力 − 1705 説明 −配列の素数は− 11、31、5であり、それらの積は1705 入力 − arr [] ={1、2、3、4、5、6、7} 出力 − 210 説明 −配列の素数は− 1、2、3、5、7

  2. 配列内の偶数と奇数のインデックス付き要素の絶対差(C ++)?

    ここでは、配列内の奇数と偶数のインデックス付き要素の絶対差を取得する方法を説明します。絶対差は、1つのペアの差が負の場合、絶対値が取られることを示します。たとえば、番号を{1、2、3、4、5、6、7、8、9}とします。したがって、偶数の位置の要素は1、3、5、7、9(0から開始)であり、奇数の場所の要素は2、4、6、8です。したがって、偶数の位置のデータの差は| 1〜3|です。 =2、次に| 2-5 | =3、| 3-7 | =4および|4-9| =5同様に、奇数の場所の差は4になります。 アルゴリズム offEvenDiff(arr、n) begin    even :