Изменение массива в цикле в C++
Если нужно изменить все ячейки, удобно идти
по индексам и перезаписывать arr[i].
Range-for по значению копирует элемент,
поэтому для замены в массиве берут индекс:
const int num1 = 3;
int arr[num1] = {1, 2, 3};
for (int i = 0; i < num1; ++i) {
arr[i] = arr[i] * 2;
}
for (int num2 : arr) {
std::cout << num2 << "\n";
}
Можно задать новое значение по правилу, зависящему от индекса:
const int num1 = 3;
int arr[num1] = {0, 0, 0};
for (int i = 0; i < num1; ++i) {
arr[i] = i + 1;
}
for (int num2 : arr) {
std::cout << num2 << "\n";
}
Дан массив:
int arr[4] = {1, 2, 3, 4};
Увеличьте каждый элемент на 10
и выведите все элементы, каждый с новой строки.
Дан массив:
int arr[3] = {5, 5, 5};
Запишите в каждую ячейку ее индекс и выведите все элементы, каждый с новой строки.