Từ 1 tới 3 trên tổng số 3 kết quả

Đề tài: Tính tổng 1+1.2+.....+1.2...n bằng hàm đệ quy

  1. #1
    Ngày gia nhập
    01 2008
    Bài viết
    22

    Question Tính tổng 1+1.2+.....+1.2...n bằng hàm đệ quy

    Ai biết giúp mình với?
    Tôi yêu lập trình

  2. #2
    Ngày gia nhập
    12 2007
    Bài viết
    28

    Theo mình hiểu thì bài này chỉ được giải bằng một hàm đệ quy phải không? Nếu đúng vậy thì đây là ý tưởng của mình:
    f(n) = 1+1.2+.....+1.2...n = 1! + 2! + ... + n!

    f(n) = f(n - 1) + n! = f(n - 1) + n * (n - 1)! = f(n - 1) + n * [f(n - 1) - f(n - 2) ] (với n > 2)

    Vậy ta có công thức truy hồi:
    f(1) = 1
    f(2) = 2
    f(n) = (n + 1) * f(n - 1) - n * f(n - 2). (với n > 2)

  3. #3
    Ngày gia nhập
    03 2008
    Bài viết
    126

    Code:
    #include <iostream>
    #include <windows.h>
    using namespace std;
    int Giai_thua(int i)
    {
    	return (i==0)?1:i*Giai_thua(i-1);
    }
    int main()
    {
    	int n,kq=0;
    	do
    	{
    		cout<<"Nhap n: ";
    		cin>>n;
    		if(n<1)
    			system("cls");
    	}while(n<1);
    	for(int i=1;i<=n;i++)
    		kq+=Giai_thua(i);
    	cout<<"Ket qua := "<<kq<<endl;
    	return 0;
    }
    nếu không hiểu bạn hỏi mọi người sẻ giúp bạn

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn