素数判定函数
类型:函数
描述
将素数的判定代码定义为一个函数,接受用户输入的正整数n,返回n是否是素数,n为素数时返回True,不是素数时返回False。
并调用该函数判定用户输入的一个正整数n是否为素数。
输入格式
输入一个正整数
输出格式
若该数为素数,输出“X是素数”
若该数为非素数,输出“X不是素数”
其中X为输入的整数
示例 1
输入:
5
5是素数
示例 2
输出:
6
6不是素数
def is_prime(n): # 判断素数的函数
"""判断素数的函数,接收一个正整数为参数,参数是素数时返回True,否则返回False"""
if n < 2:
return False # 0、1、负数以及偶数都不是素数
for i in range(2, int(n ** 0.5) + 1):
if n % i == 0: # 能被2到其n-1之间的数整除的数不是素数
return False
else:
return True # for循环未遇到return正常结束时执行此语句
positive_int = int(input()) # 输入一个正整数
if is_prime(positive_int):
print(f'{positive_int}是素数') # 输出该数是否是素数
else:
print(f'{positive_int}不是素数')
来自计算机的问候-无参有返回值函数
类型:函数
描述
定义一个无参数、有返回值的函数say_hi_human(),调用函数时输出函数的返回值,让计算机向世界发出问候,返回字符串“人类,你好!”。
有返回值函数用return语句将函数的处理结果返回给调用处,调用函数时用print()函数直接输出函数的处理结果,或使用赋值语句为返回值命名以用于后续处理。
示例
输出:人类,你好!
def say_hi_human(): # 函数名用小写字母
"""定义一个名为print_hi_human的无参数函数,其功能是返回字符串-人类,你好!"""
# =======================================================
return '人类,你好!' # 补充你的代码
# =======================================================
# 函数名作为print()函数的参数,输出say_hi_human()的返回值
# =======================================================
print(say_hi_human()) # 补充你的代码
寻找回文素数
类型:函数
描述
如果一个整数是素数,同时其对应的字符串是回文字符串时,便称其为回文素数。例如,131既是素数,其对应的字符串“131”又是回文字符串,所以131是回文素数。
输入一个正整数 n , 请你在一行内输出从小到大排列的小于这个数的所有回文素数,每个数字后面一个空格。
输入格式
输入一个正整数
输出格式
一行内输出从小到大排列的小于这个数的所有回文素数,每个数字后面一个空格。
示例
输入:191
输出:2 3 5 7 11 101 131 151 181
def is_prime(n):
"""判断素数的函数,接收一个正整数为参数,参数是素数时返回True,否则返回False
减小判定区间,减少循环次数,提升效率"""
if n < 2:
return False # 0、1、负数以及偶数都不是素数
for i in range(2, int(n ** 0.5) + 1):
if n % i == 0: # 能被2到其n-1之间的数整除的数不是素数
return False
else:
return True # for循环正常结束,未遇到return的数是素数
def plalindrome_prime(number):
"""接收一个正整数参数number,遍历从0到number之间的所有整数,
若某个数是素数,且转为字符串后是回文字符串,则称其中回文素数
找出并在同一行中输出小于number的所有回文素数,每个数字后一个空格,
函数无返回值"""
for i in range(number): # 遍历小于n的整数
if str(i) == str(i)[::-1] and is_prime(i):
print(i, end=' ') # i为回文素数时输出i,输出后不换行
positive_int = int(input()) # 输入一个正整数
plalindrome_prime(positive_int) # 调用无返回值函数,不需要用print()
任意累积
类型:Python 函数和代码复用
请根据编程模板补充代码,计算任意个输入数字的乘积。
注意:仅需要在标注...的地方补充一行或多行代码。
示例1:
输入:"1,2,3,4"
输出:"24"
def cmul(a, *b):
m = a
for i in b:
m *= i
return m
print(eval("cmul({})".format(input())))
随机密码生成
类型:Python 函数和代码复用
补充编程模板中代码,完成如下功能:
以整数 17 为随机数种子,获取用户输入整数 N
为长度,产生 3 个长度为 N
位的密码,密码的每位是一个数字。每个密码单独一行输出。
产生密码采用 random.randint()
函数。
示例1:
输入:"3"
输出:"
634
524
926
"
注意:
- 输入使用
input()
,不要增加额外的提示信息; - 输出使用
print()
,不要增加额外的输出信息;
import random
def genpwd(length):
a = 10**(length-1)
b = 10**length - 1
return "{}".format(random.randint(a, b))
length = eval(input())
random.seed(17)
for i in range(3):
print(genpwd(length))