Возможно, вы используете компилятор с необычными расширениями, который поддерживает случайные вещи, но var[] = a[x + incr] - a[x]
это недопустимый стандартный синтаксис.Поскольку вы не объяснили, что на самом деле не удалось, я предполагаю, что сбой на этой линии.Для начала определите var
как размер и тип, который вы хотите получить.В этом случае я предполагаю, что вам нужен целочисленный массив размера 2, поскольку для массива размера 5 нужно вычислить 2 экземпляра.
int var[2];
Затем в массиве используйте индекс для помещения значений в var
где они принадлежат, не забывайте увеличивать свое место размещения.
int place_index = 0;
for (x = 0; x + incr < size; x+= incr){
var[place_index] = a[x + incr] - a[x];
place_index++;
}
Затем вы можете отобразить результаты
for (x = 0; x < 2; x++)
std::cout << var[x] << ' ';
Учитывая a[5] = {0,1,2,3,4}
, это печатает 2 2
.Учитывая a[5] = {0,2,4,6,8}
, это печатает 4 4
.Учитывая a[5] = {0, 2, 8, 32, 128}
, это печатает 8 120
.
Существуют и другие способы решения этой проблемы с использованием итераторов, преобразований, стандартной библиотеки и т. Д.