(defun append-increment-from (beginning end n)
"Append a number to the end of each line in the region, incrementing
it from the number supplied. So first line gets n, second n + 1, ..."
(interactive "r
sEnter the number to increment from: ")
(if (string-match "[0-9]*" n)
(save-excursion
(goto-char end)
(let ((start-line 0)
(end-line 0)
(n (string-to-number n)))
(setq start-line (count-lines 1 (progn
(goto-char beginning)
(end-of-line)
(point))))
(progn
(goto-char end)
(setq end-line (count-lines 1 (progn
(goto-char end)
(point)))))
(while ( <= start-line end-line)
(progn
(goto-line start-line)
(end-of-line)
(insert (number-to-string n))
(setq start-line (1+ start-line))
(setq n (1+ n))))))))