如何在R语言中计算指定有限和并给出对应代码及函数说明
R实现有限和计算代码及说明

可直接运行的R代码
# 计算1到n的一次方累加和 sum_1 <- function(n) { stopifnot(is.numeric(n), n >= 1, n == floor(n)) n * (n + 1) / 2 } # 计算1到n的二次方累加和 sum_2 <- function(n) { stopifnot(is.numeric(n), n >= 1, n == floor(n)) n * (n + 1) * (2 * n + 1) / 6 } # 计算1到n的三次方累加和 sum_3 <- function(n) { stopifnot(is.numeric(n), n >= 1, n == floor(n)) (n * (n + 1) / 2) ^ 2 } # 测试示例 n_test <- 10 cat("n=10时一次方和:", sum_1(n_test), "\n") cat("n=10时二次方和:", sum_2(n_test), "\n") cat("n=10时三次方和:", sum_3(n_test), "\n")
核心函数作用解释
stopifnot():参数校验工具,当传入的n不满足正整数要求时会直接抛出错误终止运行,避免输出无意义的计算结果。function():R中自定义函数的基础语法,将求和逻辑封装为独立函数后,后续调用仅需传入参数n即可得到结果,无需重复编写计算逻辑。cat():格式化输出函数,相比默认的print输出可以更灵活地拼接提示文本和计算结果,\n为换行符,优化结果可读性。- 内置运算符:
*执行乘法运算,/执行除法运算,^执行幂运算,运算优先级和常规数学规则一致,括号用于调整计算顺序匹配公式逻辑。
结果验证方法
如果需要确认结果准确,可以用R内置的sum()函数直接对序列求和做对比,示例如下:
# 验证n=10时的三次方和结果 sum((1:10)^3) # 输出结果和sum_3(10)完全一致即可确认正确性
内容的提问来源于stack exchange,提问作者Theo
相关产品推荐
相关产品推荐

