Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม C

โปรแกรม C หาผลรวมอาร์เรย์หลังหารด้วยสมาชิกก่อนหน้า

กำหนดอาร์เรย์ arr[] หาผลรวม: arr[0] + arr[1]/arr[0] + arr[2]/arr[1] + ... (ใช้ integer division)

ตัวอย่าง

arr = {3, 5, 98, 345}
Sum = 3 + 5/3 + 98/5 + 345/98 = 3 + 1 + 19 + 3 = 26

อัลกอริทึม

  1. sum = arr[0]
  2. for i = 1 ถึง n-1: sum += arr[i] / arr[i-1]

โค้ดตัวอย่าง

#include <stdio.h>

int main() {
    int arr[] = {2, 5, 8, 11, 43, 78, 234};
    int n = sizeof(arr)/sizeof(arr[0]);
    int sum = arr[0];
    for (int i = 1; i < n; i++)
        sum += arr[i] / arr[i-1];
    printf("Sum = %d\n", sum); // 13
    return 0;
}

ผลลัพธ์

Sum = 13