15到2004的所有自然数的数码的和是多少?

4个回答

  • 为了简化公式写法,定义下面的一些符号:

    1至10^n-1 (即自然数n个9)的和记为Sn,容易推导出Sn=45*n*10^(n-1);

    n位数字An=∑ai*10^(i-1)的各位数字和记为sn,ai为An的第i位的数字,i从1至n;

    An去掉最高位后的自然数记为A[n-1]=∑ai*10^(i-1),i从1至n-1,

    A[n-1]各位数字和记为s[k-1],也就是[]内表示下标;

    k位数Ak的各位数字和通式为:

    sk=(1+2+...+k-1)*10^(k-1)+Ak*S[k-1]+ak*(A[k-1]+1)+s[k-1]

    =ak(ak-1)/2*10^(k-1)+ak*45*(k-1)*10^(k-2)+ak*(A[k-1]+1)+s[k-1]

    按上述公式分别写出1至4位数的情况如下:

    1、一位数A1=a1

    S1=1+2+...+9=45*1*10^(1-1)=45

    s1=1+2+...+a1=a1(a1+1)/2

    2、两位数A2=a2*10+a1

    S2=45*2*10^(2-1)=900

    s2=a2(a2-1)/2*10+S1*a2+a2(a1+1)+s1

    =a2(a2-1)/2*10+45*a2+a2(a1+1)+a1(a1+1)/2

    在此求出1至14的所有数字和为:

    1*(1-1)/2*10+45*1+1*(4+1)+4*(4+1)/2

    =45+5+10

    =60

    3、三位数A3=a3*100+A2=a3*100+a2*10+a1

    S3=45*3*10^(3-1)=13500

    s3=a3(a3-1)/2*100+a3*S2+a3*(A2+1)+s2

    =a3(a3-1)/2*100+900*a3+a3(A2+1)+45*a2+a2(a2-1)/2*10+a2(a1+1)+a1(a1+1)/2

    4、四位数A4=a4*10^3+A3=a4*10^3+a3*10^2+a2*10+a1

    S4=45*4*1000=180000

    s4=a4*(a4-1)/2*1000+a4*S3+a4*(A3+1)+s3

    a4*(a4-1)/2*1000+a4*13500+a4*(A3+1)+s3

    2004的数字和为:

    2*(2-1)/2*1000+13500*2+4*(4+1)+4(4+1)/2=28020

    28020-60=27960