Многочисленные цифры противостоять быстрому увеличению [закрыто]C++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Anonymous
 Многочисленные цифры противостоять быстрому увеличению [закрыто]

Сообщение Anonymous »

У меня есть массив, представляющий «состояние машины», вы можете представить его как блокировка велосипеда, которую можно увеличить (например, 4 цифры): < /p>

Код: Выделить всё

0 0 0 0
0 0 0 1
0 0 0 2
...
9 9 9 8
9 9 9 9
0 0 0 0
< /code>
Все цифры - это не знаковые целых, от 0 до N.
Я ищу лучший способ увеличить счетчик. Максимальные цифры могут быть любым положительным целым числом. < /P>
Я написал простое решение (моя функция возвращает false, если счетчик счетчика): < /p>
constexpr size_t state_len = 4;
const size_t value_max = 9;

size_t state[state_len] = {0, 0, 0, 0};
// state array representing "bicycle lock" counter
// with digits from 0 to 9

bool inc_state() {
for (size_t digit_pos{}; digit_pos < state_len; ++digit_pos) {
if (state[digit_pos] != value_max) {
++state[digit_pos];
break;
}
else {
state[digit_pos] = 0;
if (digit_pos == state_len - 1) return false;
}
}
return true;
}
Я хочу сделать его быстрее и стабильным.
Может быть, есть известный алгоритм или некоторые уловки?

Подробнее здесь: https://stackoverflow.com/questions/795 ... ementation
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C++»