Эффективность итерации цикла - PullRequest
2 голосов
/ 02 июня 2011

У вас есть цикл, который повторяет более 1000 элементов. Вы хотите добавить новую строку в каждые четыре элемента. Элементы в структуре массива имеют числовой индекс, начинающийся с 0. Как вы это делаете?

Ответы [ 4 ]

1 голос
/ 02 июня 2011

FWIW:

for (int i = 0; i < list.size(); ++i) {
    // you want to 'do it' with list[i] here

    if (0 == (i+1)%4))
    {
           // 'you want to add a new line' here
    }
}
0 голосов
/ 02 июня 2011

На всякий случай, что вы на самом деле пытаетесь спросить: «Как я распечатаю эти предметы, четыре в строку?»вот один из способов

int nOnLine = 0;
for (i = 0; i < 1000; i++){
  // print item i
  nOnLine++;
  if (nOnLine >= 4){
    // print newline
    nOnLine = 0;
  }
}
if (nOnLine > 0){
  // print newline
  nOnLine = 0;
}
0 голосов
/ 02 июня 2011
for(i=3;i<len;i=i+4) { // where len is the length of your array
  ary[i]+='\n';        // use string append operator of your language.
}

, который будет добавлять новую строку к каждому четвертому элементу, то есть пунктам 3, 7, 11 и т. Д.

РЕДАКТИРОВАТЬ

Изменен для соответствия критериям ОП.

0 голосов
/ 02 июня 2011
for (int i = 0; i < list.size(); i += 4) {
 // add to the item
}

Вышеприведенное повторяется для каждого четвертого элемента вместо каждого отдельного элемента.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...