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

ผลรวมของ N จำนวนธรรมชาติแรกที่หารด้วย 2 และ 7 ลงตัวใน C++

ในปัญหานี้ เราได้รับตัวเลข N ภารกิจคือการหาผลรวมของ N จำนวนธรรมชาติแรกที่หารด้วย 2 และ 7 ลงตัว

ที่นี่ เราจะได้รับตัวเลข N โปรแกรมจะหาผลรวมของตัวเลขระหว่าง 1 ถึง N ที่หารด้วย 2 หรือ 7 ลงตัว

ตัวอย่างเพื่อเข้าใจปัญหา

อินพุต −

N = 10

เอาต์พุต −

37

คำอธิบาย −

sum = 2 + 4 + 6 + 7 + 8 + 10 = 37

แนวคิดพื้นฐานในการแก้ปัญหาคือการหาตัวเลขทั้งหมดที่หารด้วย 2 หรือ 7 ลงตัว ผลรวมนี้จะเป็น −

ผลรวมตัวเลขหารด้วย 2 ลงตัว + ผลรวมตัวเลขหารด้วย 7 ลงตัว - ผลรวมตัวเลขหารด้วย 14 ลงตัว

ผลรวมทั้งหมดนี้สามารถสร้างได้โดยใช้สูตรลำดับเลขคณิต (A.P.)

S2 = [( (N/2)/2) * ( (2*2)+((N/2-1)*2) )]
S7 = [( (N/7)/2) * ( (2*7)+((N/7-1)*7) )]
S14 = [( (N/14)/2) * ( (2*14)+((N/14-1)*14) )]

ผลรวมสุดท้าย

Sum = S2 + S7 - S14

ตัวอย่างโปรแกรม

#include <iostream>
using namespace std;

int findSum(int N) {
    return ( ((N/2)*(2*2+(N/2-1)*2)/2) + ((N/7)*(2*7+(N/7-1)*7)/2) - ((N/14)*(2*14+(N/14-1)*14)/2) );
}

int main() {
    int N = 42;
    cout << "The sum of natural numbers which are divisible by 2 and 7 is " << findSum(N);
    return 0;
}

เอาต์พุต

The sum of natural numbers which are divisible by 2 and 7 is 525