"PHP" / Говнокод #3349 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
$div = false;
while (true) {
    if ($div = !$div) {
        // тут действие если четная итерация цикла
    } else {
        // тут если нечетная
    }
}

ну, или так

for ($i=0, $div = true; $i<$max; $i++, $div = !$div){
    if ($div) {
        // тут действие если четная итерация цикла
    } else {
        // тут если нечетная
    }
}

человек один говорит, что такая проверка на четность/нечетность - говно.
говно ли?

Запостил: shmaltorhbooks shmaltorhbooks, (Updated )

Комментарии (20) RSS

  • Выглядит как-то не очень красиво. Можно было бы побитово умножать i (во втором примере) на единичку, примерно так:
    if($i & 1){
    //нечетное
    }else
    {
    //четное
    }

    либо if($i % 2)
    Ответить
    • BLA BLA BLA
      приведённый первый цикл шикарен и кошерен ( второй тоже ничего,но лучьше его разбить на несколько строк для наглядности
      а твой коментарий - хуёвый и медленный
      Ответить
      • проверка последнего бита медленней по сравнению с введением новой переменной?%)
        Ответить
      • Залогинься, хамло. Я хочу знать, как зовут этого тупого 13-летнего мудака.
        Ответить
        • меня зовут "бокс по переписке",умный 17ти летний еблан 🙂
          Ответить
            • не напрягай свои слабые дельфийские мозги такими тонкостями, как "оптимизация".
              Все равно ты ничего сложнее змейки в жизни не написал, а там оптимизация не важна
              Ответить
  • Говны так и плещутся, кошмар! Что дальше то будет...
    Ответить
  • А еще можно попробовать сократить количество итераций в 2 раза
    Ответить
      • for ($i = 0; $i < $max; ){
        // Делаем для четных
        $i++;
        // Делаем для нечетных
        $i++;
        }
        Ответить
          • Да в любом случае неэкономично будет: подазреваю, что четный код от нечетного отличается не очень силно, так что в любом случае будет копипаста. Я, конечно, ничего не утверждаю без контекста.
            Ответить
            • вообще говнисто само по себе, четности-нечетности смотреть
              Ответить
          • Все правильно будет 🙂
            Косяк будет как раз таки при нечетном $max (лишний полуцикл, $i == $max)
            Но с учетом возможного while (true) из первого варианта это выглядит не так уж и страшно.
            Ответить
            • >Все правильно будет 🙂
              Будет, а пока не правильно.
              Ответить
  • как по мне лучше по возможности сделать 2 цикла, чтобы убрать ветвление.
    вариант с for - точно чистый кал
    Ответить

Добавить комментарий

Из-за тебя ушел bormand, guest!

    А не использовать ли нам bbcode?


    8