新网创想网站建设,新征程启航

为企业提供网站建设、域名注册、服务器等服务

php水仙花数据 水仙花数php代码

PHP里判断三个已知整数是否构成水仙花数

#includeiostream

蕲春ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联建站的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:13518219792(备注:SSL证书合作)期待与您的合作!

#includealgorithm

#includestring.h

using namespace std;

int a[1001];

int f[1000];

int main()

{

int i,n,m,x,j,k;

a[0]=0;

while(cinnn){

for(i=1;i=n;i++)

cina[i];

cinm;

if(m5)

sort(a,a+n+1);

memset(f,-1,sizeof(f));

f[0]=0;

for(k=0;k=m-5;k++)

if(f[k]=0){

for(i=f[k]+1;in;i++)

if(k+a[i]=m-5(f[k+a[i]]i||f[k+a[i]]==-1))

f[k+a[i]]=i;

}

for(i=m-5;i=0;i--)

if(f[i]=0)

break;

coutm-i-a[n]endl;

}

return 0;

}

请参考

用PHP编写求水仙花数

?php

for($q=1;$q=9;$q++){

for($w=0;$w=9;$w++){

for($e=0;$e=9;$e++){

if($q*$q*$q + $w*$w*$w + $e*$e*$e ==

100*$q + 10*$w + $e){

echo "$q $w $e "."p";

}

}

}

}

?

如何写函数用来找出所有水仙花数并尽可能提高函数的执行效率

水仙花数是指一种三位数,其各个数之立方和等于该数。

水仙花数共有4个,分别为:153、370、371、407

( 例如:1^3 + 5^3 + 3^3 = 153 )

PHP“水仙花数”实现代码:

?php

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

{

$a = intval($i/100);

$b = intval($i/10)%10;

$c = $i%10;

if(pow($a,3)+pow($b,3))+pow($c,3) == $i)

{

echo $x.'/br';

}

}

?

C语言的"水仙花数"实现代码:

#include stdio.h

int main(void)

{

int a,b,c;

for(a=1;a=9;a++)

for(b=0;b=9;b++)

for(c=0;c=9;c++)

if(100*a+10*b+c==a*a*a+b*b*b+c*c*c)

printf("%d%d%d\n",a,b,c);

return 0;

}

PASCAL实现代码:

program shuixianhuashu;

var

a,b,c:integer;

begin

for a:=1 to 9 do

for b:=0 to 9 do

for c:=0 to 9 do

if a*a*a+b*b*b+c*c*c=100*a+10*b+c then writeln(100*a+10*b+c);

end.

Visual Basic的"水仙花数"实现代码:

Private Sub Form_Click()

Dim a, b, c As Integer 'a(个)b(十)c(百)

For a = 0 To 9

For b = 0 To 9

For c = 1 To 9

If a ^ 3 + b ^ 3 + c ^ 3 = a + 10 * b + 100 * c Then

MsgBox 100 * c + 10 * b + a

End If

Next c

Next b

Next a

End Sub

FORTRAN的"水仙花数"实现代码:

WRITE(*,30)

DO 10 K=100,999

IA=K/100

IB=MOD(K,100)/10

IC=MOD(K,10)

IF(K.NE.IA**3+IB**3+IC**3) GOTO 10

WRITE(*,20)K, IA,IB,IC

10 CONTINUE

20 FORMAT(5X,4I4)

30 FORMAT(5X,18HN=I**3+J**3+K**3)

STOP

END

C++编译器上的水仙花数实现代码

#includeiostream

using namespace std;

void main()

{

int a=100;

int q,w,e;

for(a;a1000;++a)

{

q=a/100;

w=(a-q*100)/10;

e=(a-q*100-w*10);

if(a==q*q*q+w*w*w+e*e*e)

couta"是水仙花数"endl;}

}

pyhon 中实现的代码

for i in range(1,10):

for j in range(0,10):

for k in range(0,10):

if i*100+j*10+k==i*i*i+j*j*j+k*k*k:

print i*100+j*10+k,

Java 中实现的代码

public class shuixianhua

{

public static void main(String[] args){

for(int i=1; i=9; i++)

for(int j=0; j=9; j++)

for(int k=0; k=9; k++)

if(i*i*i+j*j*j+k*k*k == 100*i+10*j+k)

System.out.print(i*100+j*10+k+" ");

}

}

PHP程序编写水仙花数

所谓“水仙花数”,是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身。

求水仙花数的程序,有多种写法,以下提供其中一种:

?php

header("content-type:text/html;charset=utf-8;"); //设置页面编码为 utf-8

//以下代码求解1000以内的水仙花数

echo 'p1000以内的水仙花数: /p';

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

{

$hundreds = floor( $i / 100);    //分解出百位

$tens = floor( $i / 10 ) % 10;   //分解出十位

$ones = floor( $i % 10 );        //分解出个位

if (bcpow($hundreds,'3')+bcpow($tens,'3')+bcpow($ones,'3') == $i)

echo $i."BR/";

}

?

运行结果截图:


网站标题:php水仙花数据 水仙花数php代码
转载源于:http://wjwzjz.com/article/ddjdgge.html
在线咨询
服务热线
服务热线:028-86922220
TOP