Все опытные программисты на C# (я думаю, это пришло из C) привыкли приводить целые числа в делении, чтобы получить результат decimal/double/float вместо int (реальный результат усечен).
Я хотел бы знать, почему это реализовано именно так? Есть ли КАКАЯ-нибудь веская причина усекать результат, если оба числа целые?