Как хранить значения в массиве внутри цикла? - PullRequest
1 голос
/ 25 марта 2012

У меня есть петля, где N = 50. внутри цикла у меня есть массив (вектор). Мое условие: если я мод 10 == 0, то сохранение значения суммирования в векторе. Поэтому после завершения цикла мы ожидаем, что в векторе будет храниться 5 значений. Как я могу сделать это без сохранения всех 50 значений.

Мой пример: мой вектор сохранит (0 0 0 0 0 0 0 0 0 20 0 0 0 ...). Я просто хочу сохранить только 20 в первом ряду, а затем повторить это 5 раз. Я должен использовать N = 50, а не 5. Это возможно? enter image description here enter image description here

Ответы [ 2 ]

6 голосов
/ 26 марта 2012

Это просто с сдвиговыми регистрами : используйте один для передачи строящегося массива от одной итерации к другой и протестируйте i%10==0 в структуре case. В true добавьте текущее значение в массив, иначе не изменяйте его.

VI snippet

1 голос
/ 26 марта 2012

Я не уверен, что понимаю ваш вопрос. При вашем текущем состоянии, i == 10, в векторе будет храниться только одно значение, а не 5 (т.е. в векторе будет храниться только значение 10).

Если вы хотите сохранять число каждый раз, когда я кратно 10, то все, что вам нужно сделать, это добавить условие в цикл, чтобы проверить, является ли i mod 10 == 0. Если результат равен true, добавьте i в противном случае вектор игнорирует значение i. В качестве альтернативы вы можете сделать цикл от 1 до 5 раз и добавить i * 10 к вашему вектору. результат будет таким же.

...