如何编写函数计算等差数列前5项和?支持用户输入首项与公差
实现等差数列前5项和计算函数
1. 修正函数逻辑,添加必要参数
你的现有函数未接收首项、公差参数,也未针对等差数列项做计算。我们需要给函数补充参数,并调整循环内的累加逻辑:
循环累加版本(直观易懂)
function calculateArithmeticSum(firstTerm, commonDifference) { let sum = 0; // 循环计算前5项,i从0到4对应第1到第5项的偏移量 for (let i = 0; i < 5; i++) { const term = firstTerm + i * commonDifference; sum += term; } return sum; }
公式计算版本(效率更高)
利用等差数列前n项和公式:Sₙ = n*a₁ + n*(n-1)*d/2(其中n=5,a₁为首项,d为公差),直接计算:
function calculateArithmeticSum(firstTerm, commonDifference) { return 5 * firstTerm + (5 * 4 * commonDifference) / 2; }
2. 补充用户输入交互与结果展示
在页面中添加用户输入逻辑,获取首项、公差后调用函数,并输出结果:
完整代码示例:
<!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> </head> <body> <script> function calculateArithmeticSum(firstTerm, commonDifference) { let sum = 0; for (let i = 0; i < 5; i++) { const term = firstTerm + i * commonDifference; sum += term; } return sum; } // 获取用户输入并转换为数字 const firstTerm = parseFloat(prompt("请输入等差数列的首项:")); const commonDifference = parseFloat(prompt("请输入等差数列的公差:")); // 验证输入有效性后计算并展示结果 if (!isNaN(firstTerm) && !isNaN(commonDifference)) { const result = calculateArithmeticSum(firstTerm, commonDifference); alert(`等差数列前5项的和为:${result}`); } else { alert("请输入有效的数字!"); } </script> </body> </html>
代码说明
calculateArithmeticSum函数负责核心计算,接收首项、公差参数,返回前5项和。- 用
prompt获取用户输入,parseFloat将输入的字符串转为数字类型。 - 加入输入验证,避免非数字输入导致的计算错误。
- 通过
alert直接向用户展示计算结果。
内容的提问来源于stack exchange,提问作者ilushk
相关产品推荐
相关产品推荐

