30/09/2018, 17:43

Giải thuật để giải bài P=1+2x+3x^2+4x^3+...+nx^n-1+(n+1)x^n bằng C?

Mình có bài tập như thế này:

Với số nguyên x và n nhập từ bàn phím, tính giá trị của P(Không dùng bất cứ hàm gi):
P = 1 + 2x + 3x^2 + 4x^3 +…+ nx^(n-1) + (n+1)x^n

Bạn nào giúp mình tìm giải thuật với

Dũng Thảo viết 19:45 ngày 30/09/2018

Gán p=0
chạy 1 vòng for(1->n)
p += i * x ^ (i-1);

*grab popcorn* viết 19:46 ngày 30/09/2018

Ta đưa bài toán về
sigma(n=0…m) (nx^(n-1))
Khảo sát ta thấy
Với x =1 ta đc công thức tổng quát là: 1/2(m(m+1))
Với x =2 ta đc công thức tổng quát là: m
2^m - 2^m+1
Với x =3 ta đc công thức tổng quát là: 1/4(2m3^m - 3^m+1)
Với x =4 ta đc công thức tổng quát là: 1/9(3m4^m - 4^m +1)

Từ đó ta suy ra đc công thức tổng quát của sigma(n=0…m)(n*x^(n-1)) sẽ bằng (với x khác 1)

(1/(x-1)^2) * ((x-1)*m*x^m - x^m+1)
Sơn viết 19:50 ngày 30/09/2018

Thanks các bạn. Ngồi cả tối qua thì mình đã tụ nghĩ ra đc giải thuật, các ban xem có đúng không
gọi thêm biến lt;
gán lt=1,P=1;
cho 1 vòng lặp for chạy từ 2 đến n+1
{ lt*=x; P+=i*lt}
xuất P.

*grab popcorn* viết 19:50 ngày 30/09/2018

Có công thức rồi thì mình chỉ cần in ra cái toạch th là xong r
Đâu cần vòng for nữa

viết 19:44 ngày 30/09/2018

thử với x=5 n=4 có ra 3711 đâu @drgnz

hay là ta bấm máy tính sai

Sơn viết 19:59 ngày 30/09/2018

Bạn thuwe dùng cái giải thuật của mình xem

*grab popcorn* viết 19:44 ngày 30/09/2018

@@
chậc, thiếu mất rồi.
Tính mới đến nx^(n-1)
sr chủ thớt.
thx tnt.
Vậy ct kia chỉ cần tính sigma(n=0…m+1) thì mới đúng ;
;

Sơn viết 19:57 ngày 30/09/2018

Dùng cái của mình là ra 3711

viết 19:47 ngày 30/09/2018

ta giải ra đc cái công thức như vầy, khỏi cần vòng for, nhưng đã có máy tính thì nên xài cái for kia, ngồi giải ra mất công.

Gió viết 19:49 ngày 30/09/2018

Bài này dùng đạo hàm để xét tổng:
Xét g(x)= x+x2+…x^(n+1)= x(1+x+…+x^n)
=x*(x^(n+1)-1)/(x-1)=(x^(n+2)-x)/(x-1)
p(x)=g’(x)
= (((n+2)x^(n+1)-1)(x-1)-(x^(n+2)-x))/(x-1)^2

Bài liên quan
0