Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Lập Trình C

Chương trình tính tổng cấp số nhân trong C

Cho 3 tham số: a (số hạng đầu), r (công tỷ), n (số số hạng). Tính tổng cấp số nhân: a + ar + ar² + ar³ + ... + arⁿ⁻¹.

Ví dụ

Đầu vào - a = 1, r = 0.5, n = 5

Đầu ra - 1.937500

Đầu vào - a = 2, r = 2.0, n = 8

Đầu ra - 510.000000

Thuật toán

  • Khởi tạo sum = 0
  • Vòng lặp i từ 0 đến n-1:
  • sum += a
  • a = a * r
  • Trả về sum

Chương trình mẫu

#include <stdio.h>

float sumGeometric(float a, float r, int n) {
    float sum = 0;
    for (int i = 0; i < n; i++) {
        sum += a;
        a *= r;
    }
    return sum;
}

int main() {
    int a = 1;
    float r = 0.5;
    int n = 5;
    printf("%f", sumGeometric(a, r, n));
    return 0;
}

Kết quả

1.937500

Lưu ý: Có thể dùng công thức toán học S = a(1-rⁿ)/(1-r) khi r ≠ 1 để tính O(1).