Cẩn thận với $k=0$. Nhưng tạm thời cứ bỏ qua trường hợp đó.
Từ giả thiết thì dễ dàng quy nạp được rằng $f(x+nk)-f(x)=na \,\forall n \in \mathbb{Z}$ (1) (quy nạp với $n > 0$ rồi áp dụng ngược với $n < 0$).
Bây giờ xét $k$ dương, còn $k$ âm xét tương tự. Ta đặt các giá trị khởi điểm $v_i = f(i)$ với $i \in \{ 0, 1, \ldots, k-1\}$.
Như vậy, với mọi $x$, ta viết $x$ thành dạng $pk + q$ với $p \in \mathbb{Z}, q \in \{ 0, 1, \ldots, k-1\}$. Khi đó sử dụng (1) ta có ngay $f(x)=pa + v_q$.
Trong trường hợp $f: \mathbb{R} \to \mathbb{R}$ thì sẽ phức tạp hợp nhưng ý tưởng cũng tương tự và phải sử dụng một số kiến thức cao cấp về lý thuyết tập hợp.
Tuy nhiên, trường hợp $\mathbb{Q}$ thì có thể là làm được với kiến thức sơ cấp. Bạn thử xem sao