Pointer, если
count := count - max_count;
то мы сохраним число, на которое счетчик превысил максимальное значение. Разве нет?