写出一个程序,接受一个正浮点数值,输出该数值的近似整数值。如果小数点后数值大于等于5,向上取整;小于5,则向下取整。
1 package test;
2
3 import java.util.*;
4 import java.math.*;
5
6 public class exam02 {
7
8 public static void main(String[] args) {
9 Scanner in = new Scanner(System.in);
10 float fl = in.nextFloat();
11 System.out.println(getApproximate2(fl));
12
13 }
14
15 // 方法一
16 private static int getApproximate1(float fl) {
17 if (fl == 0)
18 return 0;
19 int i = (int) fl;
20 if (fl > 0) {
21 // fl为正数
22 if ((fl - i) >= 0.5)
23 return i + 1;
24 } else {
25 // fl为负数
26 if ((i - fl) >= 0.5) {
27 return i - 1;
28 }
29 }
30 return i;
31 }
32
33 // 方法二
34 private static int getApproximate2(float fl) {
35 if (fl >= 0) {
36 return (int) (((fl * 10) + 5) / 10);
37 } else {
38 return (int) (((fl * 10) - 5) / 10);
39 }
40 }
41 }
|