当前位置: 首页 > 编程笔记 >

在Python程序中查找素数的不同方法

姜羽
2023-03-14
本文向大家介绍在Python程序中查找素数的不同方法,包括了在Python程序中查找素数的不同方法的使用技巧和注意事项,需要的朋友参考一下

在本教程中,我们将探索不同的方法来查找给定数字是否有效。让我们开始吧!

方法1

这是查找质数的一般方法。

  • 如果数字小于或等于1,则返回False。

  • 如果数字可被任何数字整除,则该函数将返回False。

  • 循环后,返回True。

示例

# checking for prime
def is_prime(n):
   if n <= 1:
      return False
   else:
      for i in range(2, n):
         # checking for factor
         if n % i == 0:
            # return False
            return False
      # returning True
   return True
print(f"Is 2 prime: {is_prime(2)}")
print(f"Is 4 prime: {is_prime(4)}")
print(f"Is 7 prime: {is_prime(7)}")

输出结果

如果运行上面的代码,则将得到以下结果。

Is 2 prime: True
Is 4 prime: False
Is 7 prime: True

方法2

在这种方法中,我们通过将迭代次数切成n的平方根来减少迭代次数,让我们看一下代码。

示例

import math
# checking for prime
def is_prime(n):
   if n <= 1:
      return False
   else:
      # iterating loop till square root of n
      for i in range(2, int(math.sqrt(n)) + 1):
         # checking for factor
         if n % i == 0:
            # return False
            return False
      # returning True
      return True
print(f"Is 2 prime: {is_prime(2)}")
print(f"Is 4 prime: {is_prime(4)}")
print(f"Is 7 prime: {is_prime(7)}")

输出结果

如果运行上面的代码,则将得到以下结果。

Is 2 prime: True
Is 4 prime: False
Is 7 prime: True

方法3

在前面的方法中,我们检查了偶数。我们都知道,偶数不能是素数,除非是两个。因此,在这种方法中,我们将删除所有偶数以减少时间。

示例

import math
# checking for prime
def is_prime(n):
   # checking for less than 1
   if n <= 1:
      return False
   # checking for 2
   elif n == 2:
      return True
   elif n > 2 and n % 2 == 0:
      return False
   else:
      # iterating loop till square root of n
      for i in range(3, int(math.sqrt(n)) + 1, 2):
         # checking for factor
         if n % i == 0:
            # return False
            return False
      # returning True
      return True
print(f"Is 2 prime: {is_prime(2)}")
print(f"Is 4 prime: {is_prime(4)}")
print(f"Is 7 prime: {is_prime(7)}")

输出结果

如果运行上面的代码,则将得到以下结果。

Is 2 prime: True
Is 4 prime: False
Is 7 prime: True

结论

如果您对本教程有疑问,请在评论部分中提及。

 类似资料:
  • 问题内容: 我正在尝试使用Pandas查找每列中不同值的计数。这就是我所做的。 我需要计算每一列的不同元素的数量,如下所示: 什么是最有效的方法,因为此方法将应用于大小大于1.5GB的文件? 根据答案,是最快的(笔记本)。 问题答案: 从 熊猫0.20开始, 我们可以直接在s上使用,即: 其他旧选项: 您可以对df进行转置,然后逐行调用: 编辑 正如@ajcr指出的,转置是不必要的:

  • 当我试图将元素放入元素中时,我面临一个问题。我尝试了两种方法来实现这一点,但不幸的是没有成功。 上面的代码获取所有DOM元素列表。 方法1: 当我尝试这个方法时,它总是返回第一个元素的文本,而不是相应的元素文本。 在搜索时,我发现了一个链接,有人问了和我一样的问题。 Selenium Webdriver在子元素中查找元素 当我尝试答案时,它给了我一个空白数组。 结果: 请建议我如何实现这一点,如何

  • 本文向大家介绍在C ++中查找协方差的程序,包括了在C ++中查找协方差的程序的使用技巧和注意事项,需要的朋友参考一下 在本教程中,我们将讨论一个寻找协方差的程序。 为此,我们将提供两组随机变量。我们的任务是计算它们的协方差,即这两个值相差多少的度量。 示例 输出结果

  • 本文向大家介绍使用递归查找数字是否为素数的Python程序,包括了使用递归查找数字是否为素数的Python程序的使用技巧和注意事项,需要的朋友参考一下 当需要使用递归技术查找数字是否为质数时,将定义一个方法,并使用“ while”条件。 递归计算较大问题的小位的输出,并将这些位组合以给出较大问题的解决方案。 示例 以下是相同的演示- 输出结果 解释 定义了一个名为“ check_prime”的方法

  • 本文向大家介绍在Python中查找列表中元素的相对顺序,包括了在Python中查找列表中元素的相对顺序的使用技巧和注意事项,需要的朋友参考一下 我们给了一个列表,其元素是整数。我们需要找到相对顺序,这意味着如果它们以升序排序,那么我们需要找到它们位置的索引。 带排序和索引 我们首先对整个列表进行排序,然后在排序之后找出每个列表的索引。 示例 输出结果 运行上面的代码给我们以下结果- 用枚举和排序

  • 问题内容: 假设我们有两个连续的整数序列缺失,并且缺失的元素位于第一个元素与最后一个元素之间。我确实写了完成任务的代码。但是,我想尽可能地使用更少的循环来提高效率。任何帮助将不胜感激。当我们必须找到更多的缺失项(例如接近n / 4)而不是2时,情况又如何呢?我认为我的代码应该是高效的,因为我早先退出了循环? 问题答案: 假定L是没有重复的整数列表,则可以推断出,当且仅当且仅当且仅当且仅当且仅当且仅