21xrx.com
2024-12-22 22:37:28 Sunday
登录
文章检索 我的文章 写文章
求1~n范围内数字之和为13的整数(C++实现)
2023-07-05 07:57:46 深夜i     --     --
C++ 整数 求和 范围 13

求1~n范围内数字之和为13的整数可能看起来有些难,但其实并不难实现。在这篇文章中,我们将介绍如何使用C++语言实现这个问题。

写一个函数来解决这个问题,函数接受一个正整数n作为参数,并返回1~n范围内所有数字之和为13的整数。下面是我们的实现过程:

1. 首先,定义一个整数变量sum,用于存储符合条件的数字之和。初始化为0。

2. 遍历1~n范围内的每个数字。对于每个数字,定义一个整数变量num,用于存储当前数字的各位数字之和。

3. 对于每个数字,我们可以通过将数字不断除以10,然后将得到的余数相加得到其各位数字之和。例如,数字123的各位数字之和为1+2+3=6。

4. 如果当前数字的各位数字之和为13,则将其加入sum中。

5. 最后,返回sum。

下面是完整的C++代码实现:


int SumThirteen(int n)

{

  int sum = 0;

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

  {

    int num = 0;

    int tmp = i;

    while (tmp != 0)

    {

      num += tmp % 10;

      tmp /= 10;

    }

    if (num == 13)

    {

      sum += i;

    }

  }

  return sum;

}

在主函数里面调用这个函数并打印出结果:


int main()

{

  int n = 100;

  int sum = SumThirteen(n);

  cout << "1~" << n << "范围内数字之和为13的整数为:" << sum << endl;

  return 0;

}

通过这个函数,我们可以轻松地找到1~n范围内数字之和为13的整数。这个方法可以扩展到任何范围内的数字之和。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复