Chào, Khách!
  1. 123456789
    Offline
    123456789   [10/1]
    viết dùm em thuật toán để giải phương trình bậc ba va tim giai thừa của một số cho trước
  2. interpol
    Offline
    interpol   [1.414/1.462]
    Giải phương bình bậc ba dạng cơ bản x^3 + b*x^2 + c*x + d = 0 (1)

    Bằng cách đặt ẩn phụ x = X - b/3 bao giờ ta cũng được (1) về dạng thiếu :
    X^3 + p*X + q = 0

    Với p = c - (b^2)/3 ; q = d + (2*b^3)/27 - b*c/3

    Do đó : Ta chỉ cần giải X^3 + p*X + q = 0

    delta = q^2 + (4*p^3)/27

    @ Nếu delta > 0 : nghiệm duy nhất.

    X = căn bậc ba của ((-q + căn bậc hai của delta)/2) + _
    căn bậc ba của ((-q - căn bậc hai của delta)/2)

    @ Nếu delta < 0 : phương trình có ba nghiệm

    X1 = (căn bậc hai của (-4*p/3))*cos(G/3)
    X2 = (căn bậc hai của (-4*p/3))*cos((G + 2*pi)/3)
    X3 = (căn bậc hai của (-4*p/3))*cos((G + 4*pi)/3)

    với G = arccos((3*q*căn bậc ba của 3)/(p*căn bậc hai của(-4*p)))

    @ Nếu delta = 0 : phương trình có :

    # Nghiệm đơn : X1 = 3*q/p
    # Nghiệm kép : X2 = X3 = -3*q/(2*p)

    Tính giai thừa...
  3. lyvinhr00m
    Offline
    lyvinhr00m   [1.234/930]
    coppy đâu bỏ vào thế
  4. interpol
    Offline
    interpol   [1.414/1.462]
    Vậy có hiểu thuật toán và đoạn code đó không?
  5. lyvinhr00m
    Offline
    lyvinhr00m   [1.234/930]
    Thuật toán = Cấu trúc dữ liệu + Giải thuật.
    Cái đó biết lây ở đâu rồi
  6. interpol
    Offline
    interpol   [1.414/1.462]
    Đó là khóa 4. Mới học lý thuyết ngôn ngữ lập trình. Bài tập chương 3. :-s Nên càng đơn giản càng tốt. + Làm ra đầy đủ luôn thì còn ai động não nữa :-" Không tranh cãi nữa....
  7. trungqn1
    Offline
    trungqn1   [390/162]
    Ủa bữa nay khóa 4 có học thêm môn pascal hay sao mà mình thấy bài tìm giai thừa viết bằng ngôn ngữ pascal vậy
  8. hongoctrien
    Offline
    hongoctrien   [2.449/2.464]
    Học ngôn ngữ C
  9. interpol
    Offline
    interpol   [1.414/1.462]
    Không có. ^^!! Mình search thấy có đoạn code hay nên post lên. Đọc hiểu rồi thì tự viết thuật toán
  10. trungqn1
    Offline
    trungqn1   [390/162]
    Cái này hơi lạ nghe, hồi giờ anh nghe thấy người ta thường bảo nhau rằng dựa vào thuật toán để viết code, chứ chưa nghe dựa vào code viết thuật toán bao h, có code rồi viết thuật toán chi nữa chuyển từ pascal qua ngôn ngữ C thôi.
    Thanks đã chia sẻ thuật toán hay.
  11. integer
    Offline
    integer   [1.695/1.313]
    code bài giai thừa bằng C++:

    Mã:
    #include<iostream>
    using namespace std;
    main()
    {
        float n,x=1;
        cout<<"\nNhap so: ";
        cin>>n;
        for(int i=1;i<=n;i++)
            x*=i;
        cout<<x;
    
    }