刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!

简答题

数位求和

题目描述:

给定两个正整数N和M(N<M),统计N到M之间(包含N和M)的正整数中,各个位上的数字之和为8的有多少个。

如:N=100,M=150,100到150之间有5个数,各个位上的数字之和为8。分别是107、116、125、134、143。

输入描述:

输入两个正整数N和M(10O≤N<M≤8O1),且正整数之间以一个空格隔开。

输出描述:

输出一个整数,表示N到M之间(包含N和M)的正整数中有多少个各个位上的数字之和为8。


样例输入:

100 150

样例输出:

5

使用微信搜索喵呜刷题,轻松应对考试!

答案:

```pythondef digit_sum_8(n, m):count = 0for i in range(n, m+1):if sum(int(digit) for digit in str(i)) == 8:count += 1return countn, m = map(int, input().split())print(digit_sum_8(n, m))```

解析:

【喵呜刷题小喵解析】:

本题要求统计在给定范围N到M之间的正整数中,各个位上的数字之和为8的数的个数。

首先,我们需要编写一个函数`digit_sum_8`,接受两个参数n和m,然后遍历从n到m的所有整数,检查每个数的各个位上的数字之和是否为8,如果是,则计数器加1。最后返回计数器的值。

在主程序中,我们读取输入的两个整数n和m,然后调用`digit_sum_8`函数,并打印结果。

具体实现中,我们使用`map`函数将输入的字符串转换为整数,使用`split`函数将输入的字符串按照空格分割,使用`range`函数生成从n到m的整数序列,使用`sum`函数计算一个数的各个位上的数字之和,使用`if`语句判断条件,使用`print`函数输出结果。
创作类型:
原创

本文链接:数位求和 题目描述: 给定两个正整数N和M(N<M),统计N到M之间(包含N和M)的正整数中,各个位

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。

让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!

分享考题
share