小红定义一个正整数是“好数”,当且仅当该数满足以下两个性质: 1.数位恰好为2. 2.个位数和十位数相同。 请你判断一个给定的正整数是否是好数? 输入描述: 一个正整数x。1≤≤109 输出描述: 若x是好数,请输出"Yes"。否则输出"No"。
时间: 2024-10-27 13:08:37 浏览: 15
首先,我们可以编写一个简单的函数来检查这个正整数是否满足“好数”的定义。我们需要做的是将数字分解成个位(num_units)和十位(num_tens),然后比较这两个数是否相等并且它们的和的数位也是2。
函数可以按照以下步骤操作:
1. 如果输入小于10,直接返回"No",因为它不符合有两位数的要求。
2. 将输入转换为字符串,以便获取个位和十位。
3. 分别读取个位和十位,并将它们转换回整数。
4. 比较这两个数是否相等。
5. 计算这两个数的和,如果和是一个一位数或零,说明它的数位不是2,所以返回"No"。
6. 如果以上条件都满足,返回"Yes"。
以下是Python的一个简单实现:
```python
def is_good_number(x):
if x < 10:
return "No"
num_str = str(x)
num_units = int(num_str[-1])
num_tens = int(num_str[:-1]) if len(num_str) > 1 else 0
if num_units == num_tens and len(str(num_tens + num_units)) == 2:
return "Yes"
else:
return "No"
# 示例测试
input_num = 22
print(is_good_number(input_num)) # 输出:"Yes"
```
阅读全文