题目描述 Given two postive integers A and B, please calculate the maximum integer C that C*B≤A, and the real number D equal to A/B. 输入格式 Two integers A and B in one line separated by a space.(A,B>0) 输出格式 Output C in one line,followed by D in one line. D
//整数相除 保留一位小数 public static String division(int a ,int b){ String result = ""; float num =(float)a/b; DecimalFormat df = new DecimalFormat("0.0"); result = df.format(num); return result; }
方式1:被除数转double后,除以除数,结果是一个double类型的数,将double结果按要求保留n位小数即可. 保留n位小数的写法 int a = 10; int b = 3; double res = new BigDecimal((double) a / b).setScale(2, RoundingMode.HALF_UP).doubleValue(); 方式2: 直接使用BigDecimal进行运算 int a = 10; int b = 3; BigDecimal bigA =
两个整数相除会自动省略小数点后的小数位即使下面这种: int a,int b; int a = 4; int b = 3; double d = a/b; d= 1.0000000; --------------------------- 整数除法用 “/”的话得到的是一个整数(得到小数的话自动去掉小数位只保留整数位), 所以这里要得到实际除出来的数的话,先将两个数转化为double类型,再进行“/”除法. 至于要规定输出保留多少位小数,则用cout<<setprecision(2)<&
If IsNull({DECL_INV_ITEM_I.DECLEAR_NO}) Or Trim({DECL_INV_ITEM_I.DECLEAR_NO}) = "" Then "0" Else CStr({DECL_INV_ITEM_I.EX_RATE},5,',') CSTR({number_field}, 0, ''),第一个是数字字段:第二个是保留的小数位,0是整数:第三个是千分位分隔字符.