01/10/2018, 00:45

Hỏi - Hiển thị dạng float trong C++

Có đôi chút…ức chế giống như việc bị C++ troll vậy .
Mình gặp bài toán yêu cầu lấy 2 số phần thập phân (sau dấu phẩy). Tính toán một hồi ra kết quả 48.28563

cout.precesion(2);
cout<< fixed << 48.28563;

Output ra kết quả là 48.29 …ềy.

Đau khổ ở chỗ đáp án là 48.28.

Lên đây hỏi anh chị em xem có cách nào hiển thị phần thập phân của float hay double mà nó không tự ý làm tròn như thế kia không?

viết 02:57 ngày 01/10/2018

nếu bạn muốn round down vậy thì lấy cout << fixed << setprecision(2) << (x - 0.005); là được

cho qua đáp án thôi? Đáng lẽ khi check đúng sai người ta phải check output chênh lệch 1% thì coi như là đúng. Xài tuyệt đối thế kia thì ác quá.

Quang Minh viết 02:53 ngày 01/10/2018

làm tôi nhớ những ngày pascal…

Người bí ẩn viết 02:55 ngày 01/10/2018

Hình như mấy cái xuất định dạng số thực của C++ thua C thì phải
VD:
Muốn in 6.9 thì C chỉ cần truyền cái đặc tả %.1f, trong khi C++ phải std::fixed rồi std::setprecision(...)

Bài liên quan
0