C语言 素数 函数调用

2022-08-03 教育 54阅读
  素数:
  质数又称素数,有无限个。一个大于1的自然数,除了1和它本身外,不能被其他自然数(质数)整除,换句话说就是该数除了1和它本身以外不再有其他的因数;否则称为合数。
  根据算术基本定理,每一个比1大的整数,要么本身是一个质数,要么可以写成一系列质数的乘积;而且如果不考虑这些质数在乘积中的顺序,那么写出来的形式是唯一的。最小的质数是2。
  基本判断思路:
  在一般领域,对正整数n,如果用2到

  之间的所有整数去除,均无法整除,则n为质数。
  Python 代码:
  def is_prime(n):
  list_num = []
  for i in range(2, n):
  for num in range(2, int(sqrt(n))+1):
  if i % num == 0 and i != num:
  break
  elif i % num != 0 and num == (int(sqrt(n))):
  list_num.append(i)
  return list_num
  

  Java代码:
  public static boolean isPrime(long n) {
  if (n <= 3) {
  return n > 1;
  }
  if (n % 2 == 0 || n % 3 == 0) {
  return false;
  }
  
  for (int i = 5; i * i <= n; i += 6) {
  if (n % i == 0 || n % (i + 2) == 0) {
  return false;
  }
  }
  return true;
  }
  

  Php代码:
  function isPrime($n) {//TurkHackTeam AVP production
  if ($n <= 3) {
  return $n > 1;
  } else if ($n % 2 === 0 || $n % 3 === 0) {
  return false;
  } else {
  for ($i = 5; $i * $i <= $n; $i += 6) {
  if ($n % $i === 0 || $n % ($i + 2) === 0) {
  return false;
  }
  }
  return true;
  }
  }
  

  C/C++代码:
  bool isPrime(unsigned long n) {
  if (n <= 3) {
  return n > 1;
  } else if (n % 2 == 0 || n % 3 == 0) {
  return false;
  } else {
  for (unsigned short i = 5; i * i <= n; i += 6) {
  if (n % i == 0 || n % (i + 2) == 0) {
  return false;
  }
  }
  return true;
  }
  }
  
声明:你问我答网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系fangmu6661024@163.com