如何在Python中找到大于x的最小数?
在本文中,我们将展示如何在Python中找到大于x的最小数。
阅读更多:Python 教程
Python中的Ceil函数介绍
Ceil是Python的math模块中的一个函数,包含在Python标准库中。在数学上,它与Least Integer函数或Ceil函数相同。
如果给定实数整数x, ceil(x) 在数学符号表示法中表示为⌈x⌉,其中括号的上方方向对应于 cieling操作 (因为天花板在你的头上)。
相反,下取整(返回最大的整数≤x)通过使用⌊x⌋表示,其中向下的符号表示 floor操作 。
使用分段定义,ceil(x) =
x,如果x∈Z
⌊x+1⌋,如果x∉Z
ceil() 函数
在Python中,方法ceil(x)返回大于或等于x的最小整数。它被称为x的ceiling值。
句法
import math
math.ceil(x)
参数
- x − 任何实数
返回值 − 返回不小于x的最小整数。
2种调用ceil()函数的方法
根据您在Python应用程序中导入了什么,可以通过两种方式调用 ceil() 方法。
- 如果你导入了整个 math模块 而不仅仅是函数,我们必须使用 dot (.) 运算符来访问 ceil() 函数(因为它在math模块中定义)。 如果y是我们的输出变量,x是我们的数字输入变量,则格式如下 −
y= math.ceil(x)
- 如果你用math模块导入了 ceil() 函数,调用函数的语法变得更加容易,如下所示−
y= ceil(x)
- 如果您还导入了另一个具有其自己定义的 ceil() 的模块(可能是用于不同目的),则必须使用第一种方法以避免歧义。
例子
算法(步骤)
以下是执行所需任务的要遵循的 Algorithm/steps −
- 使用import关键字来导入 math 模块。
-
使用 math.ceil() 函数获取一个数字的ceiling值即大于或等于该数字的最小整数,通过将该数字作为参数传递给它。
例子
下面的程序使用 math.ceil() 函数返回ceiling值,即大于或等于x的最小整数−
# 导入math模块
import math
# 使用math.ceil()获取数字的上限值
print("-12.11最小的整数大于是:", math.ceil(-12.11))
print("50.26最小的整数大于是:", math.ceil(50.26))
print("30.5最小的整数大于是:", math.ceil(30.5))
print("1.1最小的整数大于是:", math.ceil(1.1))
输出
执行上述程序将生成以下输出 –
-12.11最小的整数大于是: -12
50.26最小的整数大于是: 51
30.5最小的整数大于是: 31
1.1最小的整数大于是: 2
使用int()函数的最小整数函数
算法(步骤)
执行所需任务的以下是 算法/步骤 :
- 检查传入的数字是否大于0,如果为真,则返回使用 int() 函数传递的数字的整数格式(从给定对象返回整数)+1。这将返回大于给定参数的最小数。
-
否则返回数字的整数格式。
-
通过传递数字作为参数调用 smallestInteger() 函数并打印由它返回的数字的最小整数函数值。
-
类似地,查找其他数字并观察更改。
举例
下面的程序返回天花板值,即使用 int() 函数得到大于或等于x的最小整数 –
#创建一个函数,通过将给定数字作为参数返回
def smallestInteger(n):
#检查数字是否大于0
if(n>=0):
#返回给定数字+1的整数格式
return int(n)+1
#否则如果它是负数
else:
#返回整数格式
return int(n)
#通过传递给定数字作为参数调用smallestInteger()函数
print('5.2最小的整数大于是:',smallestInteger(5.2))
print('0.2最小的整数大于是:',smallestInteger(0.2))
#负数
print('-5.2最小的整数大于是:',smallestInteger(-5.2))
输出
执行上述程序将生成以下输出 –
大于 5.2 的最小整数是:6
大于 0.2 的最小整数是:1
大于 -5.2 的最小整数是:-5
当传递无效参数时的异常情况
正如我们在之前的章节中所看到的那样,在Python中, ceil() 接受一个数字参数。在Python中,数字类型包括int、float和complex,但只有实数类型int和float允许作为ceil()的输入参数。
因为布尔值是int的一个子类型,所以True和False值也会被接受作为输入参数。事实上,Python ceil() 将把它们分别视为1和0处理。
将字符串作为输入参数
以下程序会返回一个TypeError,因为ceil()函数不接受字符串作为输入参数 −
# 导入math模块
import math
# 将字符串作为输入参数
# 返回一个TypeError
print(math.ceil("2.3"))
输出
执行上述程序将生成以下输出 −
Traceback (most recent call last):
File "main.py", line 6, in
print(math.ceil("2.3"))
TypeError: must be real number, not str
将列表作为输入参数
以下程序会返回一个TypeError,因为ceil()函数不接受列表作为输入参数 −
# 导入math模块
import math
# 输入的列表
list = [1,2,3]
# 将列表作为输入参数
# 返回一个TypeError
print(math.ceil(list))
输出
执行上述程序将生成以下输出 −
Traceback (most recent call last):
File "main.py", line 9, in
print(math.ceil(list))
TypeError: must be real number, not list
结论
在本文中,我们学习了在Python中查找大于x的最小数字的两种方法。通过示例,我们也研究了ceil()函数(最小整数函数)的异常情况。
极客教程