Простой задача - приращение целого числа в диапазоне от 1 до 4, начального значения 1:Приращение целого числа в диапазоне без условных операторов
i = (i + 1) < 5 ? i + 1 : 1
Тем не менее, я хотел бы сделать это без условного, так что я подумал, КИ, то %
этого решения, % 4
даст мне от 0 до 3, добавьте 1, и это делается:
i = (i + 1) % 4 + 1
однако, это выражение производит только значение 3 и 1. С начальным значением 1 2 % 4
является 2, добавить 1 для конечного результата 3. И 3 4 % 4
является 0, добавьте 1, и мы вернулись к 1.
Итак, можно сделать это в одном выражение без условных операторов?