Các lượt nộp
    Danh sách bài
    Trang chủ
    Báo lỗi

    solution

    Đề bài: [Toán cho CNTT] Phương pháp chia đôi với số bước cho trước

    Phương pháp chia đôi (số bước cho trước)

    Cho đa thức fff (qua hệ số từ bậc cao đến thấp) và khoảng [a,b][a,b][a,b] với f(a)⋅f(b)<0f(a)\cdot f(b) < 0f(a)⋅f(b)<0. Thực hiện đúng KKK bước chia đôi rồi in trung điểm của khoảng cuối cùng — đây là nghiệm gần đúng.

    Mỗi bước: m=a+b2m = \dfrac{a+b}{2}m=2a+b​; nếu f(a)⋅f(m)≤0f(a)\cdot f(m) \le 0f(a)⋅f(m)≤0 thì b←mb \leftarrow mb←m, ngược lại a←ma \leftarrow ma←m.

    Kết quả là a+b2\dfrac{a+b}{2}2a+b​ sau KKK bước, in 6 chữ số thập phân.

    Ví dụ: f(x)=x2−2f(x)=x^2-2f(x)=x2−2 trên [1,2][1,2][1,2], K=10⇒K=10 \RightarrowK=10⇒ xấp xỉ 2\sqrt 22​.

    • Định dạng đầu vào:
      • Dòng 1: bậc nnn.
      • Dòng 2: n+1n+1n+1 hệ số.
      • Dòng 3: aaa và bbb.
      • Dòng 4: số bước KKK.
    • Ràng buộc đầu vào:

      1≤n≤101 \le n \le 101≤n≤10; f(a)f(b)<0f(a)f(b)<0f(a)f(b)<0; 1≤K≤1001 \le K \le 1001≤K≤100.

    • Định dạng đầu ra:

      Nghiệm gần đúng (trung điểm cuối), 6 chữ số thập phân.

    Ví dụ:

    Đầu vào:

    2
    1 0 -2
    1 2
    10
    

    Đầu ra:

    1.414551

    Giải thích:

    Tìm sqrt(2) trên [1,2], sau 10 bước.

    Đang tải editor...