如何在Python中找到大于x的最小数

如何在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()函数(最小整数函数)的异常情况。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程