cho e hỏi là tại sao câu trả lời này lại đúng vậy nhỉ
Cách trả lại kết quả khác nhau giữa java và python
Cái này đơn giản thôi nếu bạn có mò hai ngôn ngữ 
Ở Python
>>> 15 / -4
-3.75
>>> 15 / 4
3.75
>>> 15 // -4
-4
>>> 15 // 4
>>> 3
Vì sao lại thế? Đó là vì khi bạn sử dụng // là floor division có nghĩa là kết quả (là kết quả được làm tròn) nhỏ hơn kết quả thực. Ở ví dụ trên kết quả thực khi chia 4 là 3.75. Kết quả phải nhỏ hơn => 3. Còn khi chia -4 là -3.75 do đó -4 mới nhỏ hơn -3.75 nên kết quả phải là -4 không phải -3
Riêng ở Java (chắc na ná như C/C++) thì khi bạn chia như thế nó vẫn sẽ có kết quả chia như Python nhưng khác một điều là nó chơi làm tròn khác. Nó bỏ phần thập phân và lấy phần nguyên. Đó là cách int force type
kết quả 15 / -4 = -3.75
phần nguyên: -3
phần thực: -75
2 Likes

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