输入一个整数n(2<=n<=100),要求输出所有从1到这个整数之间(不包括1和这个整数)个位为1的素数,如果没有则输出-1。
时间: 2024-11-29 08:33:07 浏览: 0
PAT计算机能力考试乙级1-10题答案.doc
这个问题是一个编程任务,需要编写一段程序来解决。首先,我们需要遍历1到指定整数n的所有数字,检查每个数是否是素数并且个位数是1。如果是素数且个位为1,则将其添加到结果列表中。以下是伪代码的描述:
```markdown
输入: 整数 n (2 <= n <= 100)
步骤:
1. 初始化一个空列表 primes
2. 对于每个数 i (从2到n-1):
a. 检查 i 是否是素数
- 如果不是素数,跳过
b. 检查 i 的个位是否为1
- 如果不是,跳过
- 否则,将 i 添加到 primes 列表
3. 如果 primes 空,返回 -1;否则返回 primes
```
在实际编程语言中,你可以使用如Python这样的语言,并利用其库函数帮助判断素数。下面是一个简单的Python实现示例:
```python
def is_prime(num):
if num < 2:
return False
for i in range(2, int(num**0.5) + 1):
if num % i == 0:
return False
return True
def find_primes_with_last_digit_one(n):
primes = []
for i in range(2, n):
if is_prime(i) and i % 10 == 1:
primes.append(i)
if not primes:
return -1
else:
return primes
# 使用示例
n = 20
result = find_primes_with_last_digit_one(n)
print(result)
```
阅读全文