Обсуждение:Размотка цикла

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

Оптимизация:

unsigned int i = 1; 
for (; i < n - 3; i += 4)
{
    a[i] = (i % b[i]);
    a[i + 1] = ((i + 1) % b[i + 1]);
    a[i + 2] = ((i + 2) % b[i + 2]);
    a[i + 3] = ((i + 3) % b[i + 3]);
}
for (; i < n; i++) // избавились от i = 4*(n/4)
{
    a[i] = (i % b[i]);
}