php中如何变成素数?

2023-03-08 22:00:27 13 0
卡卡

导读:很多朋友问到关于php中如何变成素数的相关问题,本文恰卡编程网就来为大家做个详细解答,供大家参考,希望对大家有所帮助!一起来看看吧!

本文目录一览:

php中如何变成素数?

  • 1、用php语言编写1000以内的素数,代码如下:
  • 2、在php中怎么用函数实现 输出1-100 中的质数(素数,只能被1和本身整除的数)
  • 3、php求素数没有范围怎么办
  • 4、php中求素数问题
  • 5、php编程输出100以内的素数
  • 6、php判断一个数是否为素数

用php语言编写1000以内的素数,代码如下:

$arr[count($arr)] = $ss; $arr[]是一个数组,count($aa) 是统计这个数组中包括多少个元素,也就是数组的个数。如果有10个,就打印出来是10.

foreach($arr as $value) 是遍历这个数组,你可以查看php手册,里面很详细的。

$value 是把这个$arr 赋给$value 这个变量,$value 可以是随便的名字,也可以是 $v 等等。

在php中怎么用函数实现 输出1-100 中的质数(素数,只能被1和本身整除的数)

用函数实现1-100中素数的算法如下:

?php  //定义函数

function sushu() {

//求100以内质数

for ($i = 1; $i = 100; $i++)

{  

$k = 0;  

for ($j = 1; $j $i; $j++) {     

if ($i % $j == 0) { $k++;}} 

if ($k == 1) {

echo $i;      

echo "nbsp;nbsp;";

}

}

}

sushu(); // 调用函数

?

PHP相关知识拓展:

PHP 用户定义函数:

除了内建的 PHP 函数,我们可以创建我们自己的函数。

函数是可以在程序中重复使用的语句块。

页面加载时函数不会立即执行。

函数只有在被调用时才会执行。

自定义函数方法:

?php

function writeMsg() {

echo "Hello world!";

}

writeMsg(); // 调用函数

?

php求素数没有范围怎么办

采用筛选法等求取素数范围。

1、首先,利用筛选法求素数。

2、其次,用1到某个数之间的所有数去除这个数,能够整除这个数的数超过2个那么这个数就不是素数,反之就是素数。

php中求素数问题

//php求素数 - 计算 a 到 b 之间的素数。

function sushu($a,$b)

{

if(!empty($a) !empty($b))

{

if($b$a) return;

$temp = array();

for($i=$a;$i=$b;$i++)

{

$j = intval(sqrt($i));

$flag = true;

if($i=3)

{

$temp[$i] = $i;

}else

{

for($x=2;$x=$j;$x++)

{

if($i%$x==0)

{

$flag = false;

break;

}

}

if($flag)

{

$temp[$i] = $i;

}

}

}

return $temp;

}

}

php编程输出100以内的素数

素数就是只能被 1 和它本身所整除的数。从2~100,逐个判断素数,如果是素数,就打印,否则不打印。

源代码如下:

#coding:utf-8

for i in range(2,101):

fg = 0

for j in range(2,i-1):

if i%j == 0:

fg = 1

break

if fg == 0:

print(i)

i = 2

c = []

while i = 100:

j = 2

while j = i:

if i % j == 0:

if i == j:

c.append(i)

break

j += 1

i += 1

print(c)

扩展资料

a~b之间的素数的代码

def su(a,b):

for i in range(a,b):

n = False #默认不是素数,如果是素数,跳出循环

for j in range(2,int(i**0.5)):

if i%j == 0:

n = True

break

if n == False:

print(i,end=" ")

su(100,200)

php判断一个数是否为素数

function selectnum($num){

    for ($j = 2; $j  sqrt($num); $j++) {

        if ($num % $j == 0) {

            return false;

        }

    }

    return true;

}

判断是不是 素数 ,若 返回true 就是 素数,因为 若一个数能被整除,那肯定就不是素数!!!

加平方根验证(sqrt)的目的,是为了优化性能,因为:

如果它不是质数,那么它应该可以表示成两个非1非自身的数相乘。

而这两个数,必然有一个大于平方根一个小于平方根,或者两个都等于平方根。

下面是 获取 1000000 内 所有的 素数 ,在PHP7下 能做到2.3秒,  在5下 不到4秒!

public function test()

{

    $start_time = microtime(true);

    set_time_limit(0);

    $num_max = 1000000;

    $arr = [] ;

    for ($i = 1;($i*6) = $num_max; $i++) {

        $base=$i*6;

        $num=$base-1;

        $sta=$this-testnum($num);

        if ($sta) {

            $arr[$num]=1;

        }

        $num=$base+1;

        $sta=$this-testnum($num);

        if ($sta) {

            $arr[$num]=1;

        }

    }

    $end = microtime(true);

    $zong = $end -$start_time;

    echo '开始' . $start_time . 'br/' ;

    echo '结束' . $end . 'br/' ;

    echo '用时' . $zong  . 'br/';

    echo '共' . count($arr) . '个素数';

}

function testnum($num){

    for ($j = 2; $j  sqrt($num); $j++) {

        if ($num % $j == 0) {

            return false;

        }

    }

    return true;

}

结语:以上就是恰卡编程网为大家介绍的关于php中如何变成素数的全部内容了,希望对大家有所帮助,如果你还想了解更多这方面的信息,记得收藏关注本站。

收藏
分享
海报
0 条评论
13
上一篇:php函数如何输出(php输出方法) 下一篇:php的符号怎么实现的(2023年最新整理)

本站已关闭游客评论,请登录或者注册后再评论吧~

忘记密码?

图形验证码