本题要求实现一个函数和统计,任意整数中某个位数出现的次数
时间: 2024-01-09 19:04:10 浏览: 75
思路:
1. 将整数转换成字符串,方便查找每个数字
2. 依次遍历字符串中每个字符,如果该字符等于目标位数的字符,则计数器加1
3. 返回计数器的值
代码实现:
```python
def count_digit(n, d):
# 将整数转换成字符串
s = str(n)
# 初始化计数器
count = 0
# 遍历字符串中每个字符,如果该字符等于目标位数的字符,则计数器加1
for i in range(len(s)):
if s[i] == str(d):
count += 1
# 返回计数器的值
return count
```
测试样例:
```python
print(count_digit(12345, 3)) # 1
print(count_digit(12345, 0)) # 0
print(count_digit(12345, 5)) # 1
print(count_digit(12345, 1)) # 1
print(count_digit(11111, 1)) # 5
```
运行结果:
```
1
0
1
1
5
```
相关问题
本题要求实现一个求非负整数的逆序数的简单函数,建议用递归实现。
好的,以下是一个简单的递归函数实现求一个正整数的逆序数:
```python
def reverse_num(n):
if n < 10:
return n
else:
return n % 10 * pow(10, len(str(n))-1) + reverse_num(n//10)
```
这个函数的递归思路是先取出数字的个位数,然后乘以十的位数次方再递归求解除个位以外的数字。例如,对于输入的数字1234,首先取出个位数4,然后乘以10的3次方(即1000),再递归求解234的逆序数。递归的结束条件是当数字小于10时,直接返回该数字本身。
这个函数可以求解任意正整数的逆序数,包括负数和0。但是对于大数的计算可能会出现递归深度超出限制的问题。
编写程序,输入一个任意位数的正整数,输出其各位数字之和
以下是Python的示例代码:
```python
num = input("请输入一个正整数:")
sum = 0
for digit in num:
sum += int(digit)
print("各位数字之和为:", sum)
```
首先,程序要求用户输入一个正整数,使用`input()`函数获取输入的字符串。然后,使用一个变量`sum`来保存各位数字之和,初始化为0。
接下来,使用`for`循环遍历输入的字符串,对于每个字符(即每个数字),使用`int()`函数将其转换为整数类型,累加到`sum`中。
最后,输出各位数字之和。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)