Hỏi cách hiển thị dạng float trong C++

Có đôi chút…ức chế giống như việc bị C++ troll vậy :smile: .
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?

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á.

4 Likes

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

2 Likes

Hình như mấy cái xuất định dạng số thực của C++ thua C thì phải :smile:
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(...)

2 Likes

2 posts were split to a new topic: Làm thế nào để tính kết quả phép chia ra số thực?

cout << (int)(v * 100) / 100.0 << end;

Là vầy :slight_smile:
Chơi được từ 48.28001 đến 48.28999

2 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?