ในปัญหานี้ เราได้รับสองตัวเลข 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