给定两个整数A、B,请求出大于等于A,小于等于B的所有绝对素数。输入一行,包含两个整数A、B,保证10<A<B<1000。
时间: 2024-03-22 14:38:44 浏览: 42
C语言上机练习
以下是使用 Python 语言的代码实现:
```python
def is_prime(n):
if n < 2:
return False
for i in range(2, int(n ** 0.5) + 1):
if n % i == 0:
return False
return True
def sum_of_digits(n):
return sum(int(digit) for digit in str(n))
a, b = map(int, input().split())
absolute_primes = []
for i in range(a, b+1):
if is_prime(i) and is_prime(sum_of_digits(i)):
absolute_primes.append(i)
print(*absolute_primes)
```
首先,我们定义了两个辅助函数。`is_prime(n)`用于判断一个数是否是质数,`sum_of_digits(n)`用于计算一个数的各个数位上的数字之和。
然后,我们读取输入的两个整数 A 和 B。接着,我们遍历 A 到 B 的每一个整数,如果这个数是质数并且它的各个数位上的数字之和也是质数,那么就将它加入到结果列表中。
最后,我们使用 `print(*absolute_primes)` 将所有的绝对素数打印出来。
阅读全文