华为机试-007-入门-HJ7.取近似值
一、描述
- 写出一个程序,接受一个正浮点数值,输出该数值的近似整数值。如果小数点后数值大于等于 0.5 ,向上取整;小于 0.5 ,则向下取整。
数据范围:保证输入的数字在 32 位浮点数范围内
1.1、输入描述
- 输入一个正浮点数值
1.2、输出描述
- 输出该数值的近似整数值
二、示例
2.1、示例1
输入:
5.5
输出:
6
说明:
0.5>=0.5,所以5.5需要向上取整为6
三、答案(java)
3.1、方法一
package com.tzq.hwod;
import java.util.Scanner;
/**
* @author tzq
*/
public class hwod_001 {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
double number = in.nextDouble();
System.out.println((int) (number + 0.5));
}
}
3.2、方法二
package com.tzq.hwod;
import java.util.Scanner;
/**
* @author tzq
*/
public class hwod_001 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
float ans = sc.nextFloat();
System.out.println(ans - (int) ans >= 0.5 ? (int) (ans + 1) : (int) ans);
}
}
四、答案(python 3)
4.1、方法一
#!/usr/bin/python
# -*- coding: UTF-8 -*-
#思路1
# from math import ceil,floor
# def ceilNumber(n):
# a = ceil(n)-n
# if (a<=0.5):
# return ceil(n)
# return floor(n)
# b = float(input())
# print(ceilNumber(b))
#思路2
# def ceilNumber(n):
# a = int(n+0.5)
# return a
# b = float(input())
# print(ceilNumber(b))
#思路3
n = float(input())
y = lambda x : int(x+0.5)
print(y(n))