c语言求等比数列前n项的和
时间: 2024-10-23 18:03:47 浏览: 39
2.5等比数列前n项和(二).doc
在C语言中,计算等比数列前n项的和可以使用公式:
\[ S_n = \frac{a_1(1 - r^n)}{1 - r} \]
其中 \( S_n \) 是前n项和,\( a_1 \) 是首项,\( r \) 是公比,且假设 \( |r| < 1 \)(如果公比大于1,则会得到无穷大结果),因为只有当公比小于1时,这个公式才成立。
如果你需要编写代码,下面是一个简单的函数示例:
```c
#include <stdio.h>
#include <math.h>
double fibonacci_sum(double a1, double r, int n) {
if (n <= 0 || r >= 1) { // 检查输入合法性
printf("Invalid input! Please ensure r is less than 1 and n is a positive integer.\n");
return 0;
}
return (a1 * (1 - pow(r, n))) / (1 - r);
}
int main() {
double first_term = 1.0; // 首项,这里设为1(通常等比数列的首项为1)
double common_ratio = 0.5; // 公比
int num_terms = 10; // 要求的项数
double result = fibonacci_sum(first_term, common_ratio, num_terms);
printf("The sum of the first %d terms of the geometric series with first term %.2f and ratio %.2f is %.2f.\n", num_terms, first_term, common_ratio, result);
return 0;
}
```
在这个例子中,`fibonacci_sum`函数接受首项、公比和项数作为参数,并返回它们的和。在`main`函数中,我们设置了一个示例场景并打印出结果。
阅读全文