どうも、ちょげ(@chogetarou)です。
配列(array)の全要素を同じ値にする方法を紹介します。
方法

配列(array)の全要素を同じ値にする方法は、2つあります。
ループ
ひとつは、ループを使う方法です。
まず、配列のインデックスをfor文でループします。
(0から配列の要素数を「-1」した値までループ)
そして、for文の{}内で、配列の全てのインデックスの要素に値を代入します。
//myArray =対象の配列, value=値
for (int i = 0; i < size(myArray); i++) {
myArray[i] = value;
}
上記のfor文は、配列(array)を全て同じ値にします。
使用例
#include <iostream>
using namespace std;
int main(void){
int nums[6] = { 1, 2, 3, 4, 5, 6 };
int value = -1;
for (int i = 0; i < size(nums); i++) {
nums[i] = value;
}
for (int i: nums) {
cout << i << endl;
}
return 0;
}
出力:
-1
-1
-1
-1
-1
-1
std::fill()
もうひとつは、std::fill()を使う方法です。
まず、std::fill()を呼び出します。
std::fill()の第1引数にbegin()、第2引数にend()、第3引数に値を指定します。
そして、begin()とend()の両方の引数に、配列を指定します。
//myArray=対象の配列, value=埋める値
std::fill(begin(myArray), end(myArray), value);
上記のstd::fill()は、配列(array)の全要素を同じ値にします。
使用例
#include <iostream>
using namespace std;
int main(void){
int nums[6] = { 1, 2, 3, 4, 5, 6 };
fill(begin(nums), end(nums), 10);
for (int item: nums) {
cout << item << endl;
}
return 0;
}
出力:
10
10
10
10
10
10
まとめ
配列(array)の全要素を同じ値にする方法は、次の2つです。
- ループを使う方法
for (int i = 0; i < size(myArray); i++) { myArray[i] = value; }
- std::fill()を使う方法
std::fill(begin(myArray), end(myArray), value);
コメント