Tình hình là em đang gặp 1 bài nếu số sau khi đảo ngược vượt quá kích thước lưu trữ của biến thì trả về 0, nhưng em không biết so sánh như thế nào. Ai có thể cho em gợi ý được không? Em xin cám ơn trước
Làm sao để biết số sau khi đảo ngược có vượt quá kích thước lưu trữ của biến hay không?
Chỉ có đổi thử mới biết 
Lấy ví dụ 8 bit thì UCHAR_MAX = 255, vậy thì kịch kim là bq + r = 255 với b là cơ số, nói cách khác q <= 255/b. Con số này có thể tính sẵn.
2 Likes
Cho em ví dụ dễ hiểu hơn tí nữa được không ạ?
đổi số thành chuỗi rồi đảo chuỗi rồi xài std::stoi lại, bắt exception :V
2 Likes
VD 214 = 0326 trong cơ số 8. Số đảo ngược của nó rõ ràng là bị tràn 
Lấy n = 214 và b = 8.
214 (div/mod) 8 = (26, 6)
26 (div/mod) 8 = (3, 2)
mà 062 = 50 > 255/8 = 31 
3 Likes
cho em hỏi 062 đâu ra vậy ạ?
- Các chữ số được trích từ phải sang trái
- thì ta viết số dư từ trái sang phải.
2 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?