# 检查SOAS函数接收的参数是否为整数
def CITINIAI(start_num, end_num, commen_difference):
if not (isinstance(start_num, int) and isinstance(end_num, int) and isinstance(commen_difference, int)):
return False
return True
# 检查SOAS函数接收的公差是否为正数且首项小于末项
def CITINIAPN(start_num, end_num, commen_difference):
if not (commen_difference > 0 and start_num < end_num):
return False
return True
# 利用CITINIAI()函数判断是否求和与报错
def SOAS(start_num, end_num, commen_difference):
if not (CITINIAI(start_num, end_num, commen_difference) and CITINIAPN(start_num, end_num, commen_difference)):
return "Invalid input"
else:
number_of_terms = (end_num - start_num) // commen_difference + 1
SOAS = (start_num + end_num) * number_of_terms // 2
return int(SOAS)
#测试
res=SOAS(1,123456789,1)
print(res)
这段代码定义了三个函数:CITINIAI、CITINIAPN 和 SOAS。CITINIAI 函数用于检查输入的参数是否为整数,CITINIAPN 函数用于检查公差是否为正数且首项小于末项,SOAS 函数则根据这些条件计算等差数列的和。
在测试部分,调用 SOAS 函数时传入了一个整数作为公差(1),同时满足 CITINIAI 和 CITINIAPN 的条件。因此,SOAS 函数将计算等差数列的和并返回结果。