例如要计算2+22+222+2222的值,输入2,4,然后计算得出sum=2468。
需要用C语言实现。
可以拆分成两个部分,一部分是生成aaaa,另一部分是求和
生成aaaa,可以这么实现(其中,E是为了方便×10的倍数)
long E(int m)
{
long num = 1;
while (m) {
num *= 10;
m--;
}
return num;
}
long GenNum(int num, int count)
{
long ret = 0;
while (count) {
count--;
ret += num * E(count);
}
return ret;
}
然后对生成的数求和即可
int main() {
int a, n;
printf("Input a,n:\n");
scanf("%d,%d", &a, &n);
long sum = 0;
while (n) {
sum += GenNum(a, n);
n--;
}
printf("sum=%ld\n", sum);
return 0;
}