取余与周期函数

  如果函数y = f(x)满足f(x+nT) = f(x),则f(x)是周期函数且f(x)的周期是T。周期函数与取余%操作相对应。比如,  

取余与周期函数_第1张图片
  由于f(x+3n) = f(x), 则函数f(x) = x%3的周期是3。
  题目:
  123456789101112…2014除以9的余数是 ( )
    A) 1
    B) 2
    C) 3
    D) 4
  解答:A
  9的余数等于数的各位加起来的和对9求余
  =(1+2+…8+9+1+0+1+1+…+2+0+1+4)mod9
= (1+2+…8+9+10+11+…+2014)mod 9
  令 取余与周期函数_第2张图片
  则 f(x+9n) = f(x),于是
f(1)=f(10)、f(2)=f(11)、… f(8)=f(17)、f(9)=0;
f(1)=f(-8)、f(2)=f(-7)、….
  又 取余%满足加法律,即 f(a+b) = f(a) +f(b)
所以 f(1+2+…+8) = f(1)+f(2)+f(3)+f(4)+f(5)+f(6)+f(7)+f(8)
 = f(-8) +f(-7) + f(-6)+ f(-5) + f(5) +f(6)+f(7)+f(8)
 =f((-8) + (-7) + (-6) + (-5) +(+5) +(+ 6) +(+7) +(+8))
 =f(-8+8-7+7-6+6-5+5)
 =f(0)
 =0
  又 f(9) =0
所以,1+2+…+9是一个循环,其和为0。
  而 2014 = 9*223 +7 = 2007 +7
则原式 = (1+2+…8+9+10+11+…+2014)mod 9
 = (2007 +2008+2009+2010+2011+2012+2013+2014) mod 9
 = (0 + 1 +2+…+7)mod 9
 = (8*(0+7)/2) mod 9 = 28 mod 9
 = 1
即 选A)

你可能感兴趣的:(C++,函数,取余,加法律)