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

ผลรวมของซีรีส์ 1 + x/1 + x^2/2 + x^3/3 + .. + x^n/n ใน C++


ในปัญหานี้ เราได้รับสองตัวเลข X และ n ซึ่งแสดงถึงอนุกรมทางคณิตศาสตร์ งานของเราคือสร้างโปรแกรมเพื่อหาผลรวมของอนุกรม 1 + x/1 + x^2/2 + x^3/3 + .. + x^n/n.

มาดูตัวอย่างเพื่อทำความเข้าใจปัญหากัน

ป้อนข้อมูล

x = 2 , n = 4

ผลผลิต

คำอธิบาย −

sum= 1 + 2/1 + (2^2)/2 + (2^3)/3 + (2^4)/4
   = 1 + 2 + 4/2 + 8/3 + 16/4
   = 1 + 2 + 2 + 8/3 + 4
   = 9 + 8/3
   = 11.666.

วิธีแก้ไขง่ายๆ คือ การสร้างอนุกรมและหาผลรวมโดยใช้ค่าฐาน x และช่วง n แล้วคืนเงิน

ตัวอย่าง

โปรแกรมเพื่อแสดงการทำงานของโซลูชันของเรา

#include <iostream>
#include <math.h>
#include <iomanip>
using namespace std;
double calcSeriesSum(int x, int n) {
   double i, total = 1.0;
   for (i = 1; i <= n; i++)
   total += (pow(x, i) / i);
   return total;
}
int main() {
   int x = 3;
   int n = 6;
   cout<<"Sum of the Series 1 + x/1 + x^2/2 + x^3/3 + .. + x^"<<n<<"/"<<n<<" is "<<setprecision(5)   <<calcSeriesSum(x, n);
   return 0;
}

ผลลัพธ์

Sum of the Series 1 + x/1 + x^2/2 + x^3/3 + .. + x^6/6 is 207.85