描述
写出一个程序,接受一个正浮点数值,输出该数值的近似整数值。如果小数点后数值大于等于 0.5 ,向上取整;小于 0.5 ,则向下取整。
数据范围:保证输入的数字在 32 位浮点数范围内
输入描述:
输入一个正浮点数值
输出描述:
输出该数值的近似整数值
示例1
输入:
5.5
复制输出:
6
复制说明:
0.5>=0.5,所以5.5需要向上取整为6
示例2
输入:
2.499
复制输出:
2
复制说明:
0.499<0.5,2.499向下取整为2
答案1:做差判断
import java.util.Scanner;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
double num = in.nextDouble();
int a=(int)num;
if(num-((float)a)>=0.5){
System.out.println(a+1);
}else{
System.out.println(a);
}
}
}
详解1
将浮点数转换为整数,再与其相减,若差>=0.5,则进1,否则直接输出该整数。
答案2:Math.round()
方法直接求近似值
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
double num = scanner.nextDouble(); // 读取输入的浮点数
int roundedNum = (int) Math.round(num); // 使用 Math.round() 方法四舍五入取整
System.out.println(roundedNum); // 输出近似整数值
}
}
详解2
Math.round()
方法
Math.round()
方法是 Java 中Math
类提供的一个静态方法,用于对一个浮点数进行四舍五入取整,并返回最接近的 long 类型整数。用法:
double num = 3.14; long roundedNum = Math.round(num); // 对浮点数进行四舍五入取整 System.out.println("Rounded number: " + roundedNum);
输出:
Rounded number: 3
解释:
Math.round()
方法接受一个double
类型的参数,并返回一个long
类型的整数。- 方法会将浮点数参数四舍五入取整,并返回最接近的
long
类型整数。- 如果参数是一个正数且小数部分大于或等于 0.5,则向上取整;如果小于 0.5,则向下取整。
- 如果参数是一个负数且小数部分绝对值大于或等于 0.5,则向下取整;如果小于 0.5,则向上取整。
- 在给定的示例中,浮点数
3.14
经过四舍五入取整后,返回的最接近整数是3
。因此,
Math.round()
方法通常用于对浮点数进行四舍五入取整操作。
对Java编程不熟悉?请移步Java基础知识速成笔记“超实用”学完就去实战!(一)-CSDN博客