本文最后更新于 568 天前,其中的信息可能已经有所发展或是发生改变。
第1关:求阶乘
任务描述
本关任务:编写一个求阶乘的小程序。
相关知识
为了完成本关任务,你需要掌握:1.如何定义函数
编程要求
根据提示,在右侧编辑器补充代码,计算n的阶乘。
测试说明
平台会对你编写的代码进行测试:
测试输入:4
; 预期输出: 4!=24
测试输入:5
; 预期输出: 5!=120
# 函数定义
def factorial(n):
if n != 1:
return factorial(n-1) * n
else:
return 1
n = eval(input())
y = factorial(n)
# print(f'{n}!={y}')
print(y)
第2关:判断一个数是否是素数
任务描述
本关任务:编写一个程序,判断x是否是素数。
相关知识
为了完成本关任务,你需要掌握:1.如何定义函数,2.如何遍历2到x之间的数。
编程要求
根据提示,在右侧编辑器补充代码,
测试说明
平台会对你编写的代码进行测试:
测试输入:4
; 预期输出: False
测试输入:5
; 预期输出: True
def isPrime(x):
for i in range(2,x):
if x % i == 0:
return False
return True
a=input()
if a.isdigit():
print(isPrime(int(a)))
else:
print("输入不合法")
第3关:求最大公约数(本题样例是错的哦)
任务描述
本关任务:编写一个程序。求m,n的最大公约数。
相关知识
为了完成本关任务,你需要掌握:1.如何定义函数; 2 求最大公约数的算法。
编程要求
根据提示,在右侧编辑器补充代码,计算m,n的最大公约数。
测试说明
平台会对你编写的代码进行测试:
测试输入:4
,91
; 预期输出: 平均值:44.0
最大值:91
测试输入:151
,12
; 预期输出: 平均值:57.2
最大值:151
m,n = map(int,input().split(","))
m,n = max(m,n),min(m,n)
while m!=0:
r = n % m
n = m
m = r
print(n)
第4关:判断两个字符串是否为换位字符串
任务描述
本关任务:编写一个程序。判断两个字符串是否为换位字符串。 换位字符串是指组成两个字符串的字符相同,但位置不同。
相关知识
为了完成本关任务,你需要掌握:1.如何遍历字符串。
编程要求
根据提示,在右侧编辑器补充代码,
测试说明
平台会对你编写的代码进行测试:
测试输入:abbc
,bbca
; 预期输出: True
测试输入:abbc
,abbd
; 预期输出: False
m,n = input().split(" ")
tot = [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]
for i in m:
tot[ord(i)-ord('a')] += 1
for i in n:
tot[ord(i)-ord('a')] -= 1
if max(tot) != 0:
print("False")
else:
print("True")