迪迦


私信TA

用户名:dotcpp0776032

访问量:758

签 名:

等  级
排  名 6931
经  验 1345
参赛次数 0
文章发表 25
年  龄 0
在职情况 学生
学  校
专  业

  自我简介:

解题思路:

Sn=a+aa+aaa+...,可以看成是Sn=A1+A2+A3+....

而A1=a*10^0,    A2=A1+a*10^1,    A3=a*10^2+A2,所以可以得出 An=a*10^(n-1)+A(n-1)

换句话说这里就可以用递归或者求和的方式,本片文章就用求和的方式来解答:

设置一个sum初值为0,然后每一次求出An的值,最后在对每一项An求和


注意事项:
两次求和,第一次求An的值,第二次求Sn,也就是An相加


参考代码:

#include <stdio.h>

#include <math.h>

#define a 2

int main()

{

    int n, Sn = 0, sum = 0;

    scanf("%d", &n);

    for (int i = 0; i < n; i++)

    {

        sum += a * pow(10, i);

        Sn += sum;

    }

    printf("%d", Sn);

    return 0;

}

 

 

0.0分

0 人评分

  评论区

  • «
  • »