André, boa tarde!

Não sei se já conseguiu resolver... mas segue mais uma ideia!

###<code r>
f <- function(vec, iter, lim) {
     # (vec)tor, (iter)ações e (lim)ite superior
     print(vec)
     for (i in 1:iter) {
          vec  = vec+1
          over = which(vec>=lim)
          vec[over] <- vec[over]-lim
          print(vec)}}

x1 <- c(1,2,5,6)
x2 <- c(0,1,5,6,9,12,15,16,18,19) 
f(x1, 10, 10)
f(x1, 12, 8)
f(x2, 20, 20)
###</code>

Éder Comunello <comunello.eder@gmail.com>
Dourados, MS - [22 16.5'S, 54 49'W]