题目描述
数学家高斯很小的时候就天分过人。一次老师指定的算数题目是:1+2+…+100。
高斯立即做出答案:5050!
这次你的任务是类似的。但并非是把一个个的数字加起来,而是对该数字的每一个数位作累加。这样从1加到100的“和”是:901
从10加到15是:21,也就是:1+0+1+1+1+2+1+3+1+4+1+5,这个口算都可以出结果的。
按这样的“加法”,从1加到1000是多少呢?
输出
输出一个整数表示答案
代码如下:
#include <iostream>
using namespace std;int check(int x) {int sum = 0;while (x) {int c = x % 10;sum += c;x = x / 10;}return sum;
}int main() {int sum = 0;for (int i = 1; i <= 1000; i++) {sum += check(i);}cout << sum << endl;return 0;
}