Em mới học c# và đang làm bài tập viết chương trình thì gặp lỗi khi tính số thập phân là sau khi tính ! nó thay vì ra là 0.12 thì nó lại ra là 0. Cho em hỏi có cách nào để sử không ạ
Code tính toán với số thập phân bị sai
phép chia trong ngoặc phải cast số int thành double
nếu không thì kết quả nó sẽ cast lại thành số int, mất phần thập phân, chỉ còn phần nguyên.
góp ý: với bài này có thể nhìn vào và đoán được nguyên nhân, với những bài khác thì không chắc
ngoài code ra thì bạn phải cho người ta biết bạn đã nhập gì vào các biến và kết quả biến nào không như mong đợi
cho mình hỏi làm sao để cast vậy bạn
- c# convert int to double
- c# cast int to dounble
- [language] cast/convert something to something
góp ý thêm: bạn nên tập suy nghĩ trước khi nhờ hỗ trợ
Nhìn giống trên hackerrank thế!
Viết ngay trong Main()
cũng không sao. Nhưng bạn nên viết đúng yêu cầu là thực hiện trong phương thức người ta quy định. Tức là “bê” mấy dòng bạn viết vào phương thức phía trên. Phần người ta viết sẵn thì đừng thay đổi gì hết.
Còn lý do chỉ in ra 0
thì do các phép chia trên kiểu số nguyên đều bị làm tròn xuống (50/100 = 0
, không phải 0.5
). Ép kiểu về số thực rồi chia.
Từ khóa: c# ép kiểu số
(c# number casting
).