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