[C++]for文で配列の要素同士で掛け算した積を取得するには?

C++

どうも、ちょげ(@chogetarou)です。

for文を使って配列(array)の要素同士で掛け算した積を取得する方法を紹介します。

スポンサーリンク

方法

インターフェース, インターネット, プログラム, ブラウザ, Www

for文を使って配列(array)の要素同士で掛け算した積を取得するには、「*」を使います。

まず、「1」で初期化した変数を用意します。

次に、for文で配列をループします。

そして、ループ処理で、用意した変数に「*」で配列の要素を掛けます。

//myArray=対象の配列
int result = 1;
for (auto it = begin(myArray); it != end(myArray); ++it) {
    result *= *it;
}

上記のfor文は、配列の要素同士で掛け算した積を変数に格納します。

次のコードでも、上記と同じ結果が得られます。

int result = 1;
for (T item: myArray) {
    result *= it;
}

使用例

#include <iostream>
using namespace std;

int main(void){
    
    int nums[6] = { 11, 2, 8, 20, 7, 4 };
    
    int result = 1;
    for (auto it = begin(nums); it != end(nums); ++it) {
    	result *= *it;
    }
    
    cout << result << endl;
    
    return 0;
}
出力:
98560

コメント

タイトルとURLをコピーしました