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

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


Đề bài

Tính tổng cấp số cộng, người dùng nhập số đầu, tổng số phần tử và công sai.

Giải pháp

Cấp số cộng (A.P.) là dãy số mà hiệu 2 số liên tiếp luôn bằng nhau. Tổng số phần tử ký hiệu là Tn.

Tổng A.P.: Sn = n/2 * (2a + (n-1)d)
Số hạng thứ n: Tn = a + (n-1)d

Thuật toán

Bước 1: Khai báo biến
Bước 2: Khởi tạo sum = 0
Bước 3: Nhập số đầu a
Bước 4: Nhập số phần tử n
Bước 5: Nhập công sai d
Bước 6: Tính sum = n * (2a + (n-1)d) / 2
Bước 7: Tính tn = a + (n-1)d
Bước 8: Vòng lặp for i = a; i <= tn; i += d
    Nếu i != tn: printf("%d + ", i)
    Ngược lại: printf("%d = %d", i, sum)
Bước 9: In dòng mới

Chương trình hoàn chỉnh

#include <stdio.h>

int main() {
    int a, num, diff, tn, i;
    int sum = 0;
    
    printf("Nhập số đầu tiên của dãy: ");
    scanf("%d", &a);
    printf("Nhập tổng số phần tử: ");
    scanf("%d", &num);
    printf("Nhập công sai: ");
    scanf("%d", &diff);
    
    sum = (num * (2 * a + (num - 1) * diff)) / 2;
    tn = a + (num - 1) * diff;
    
    printf("\nTổng dãy A.P: ");
    for(i = a; i <= tn; i = i + diff) {
        if(i != tn)
            printf("%d + ", i);
        else
            printf("%d = %d", i, sum);
    }
    printf("\n");
    return 0;
}

Kết quả chạy

Nhập số đầu tiên: 3
Nhập tổng số phần tử: 10
Nhập công sai: 5
Tổng dãy A.P: 3 + 8 + 13 + 18 + 23 + 28 + 33 + 38 + 43 + 48 = 255

Nhập số đầu tiên: 2
Nhập tổng số phần tử: 15
Nhập công sai: 10
Tổng dãy A.P: 2 + 12 + 22 + 32 + 42 + 52 + 62 + 72 + 82 + 92 + 102 + 112 + 122 + 132 + 142 = 1080