Tính căn bậc 2

Xem dạng PDF IDE

Gửi bài giải

Điểm: 2,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
Input: stdin
Output: stdout

Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch

Hãy viết chương trình tính gần đúng giá trị căn bậc hai của một số thực dương ~x~ bằng phương pháp tìm kiếm nhị phân (binary search).

Ý tưởng: tìm nghiệm gần đúng của phương trình ~f(y) = y^2 - x = 0~ trên đoạn ~[0, x]~ (hoặc ~[0, 1]~ nếu ~x < 1~) sao cho: ~ |y^2 - x| < \epsilon ~

Yêu cầu: Chỉ sử dụng vòng lặp while. Không sử dụng thư viện toán học như math.h.

Input

  • Một dòng chứa hai số thực ~x~ và ~\epsilon~ ~ (0 < x \le 10^6,\ 10^{-6} \le \epsilon \le 10^{-1}) ~

Output

  • Một dòng duy nhất in ra giá trị gần đúng của ~\sqrt{x}~, làm tròn đến 6 chữ số thập phân.

Ví dụ:

Input


2 0.0001


Output

1.414214  

Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.

Input
Output
Run