建立本地网站,软件开发工具平台,个性网页设计,wordpress面页模板下1.数字A除本身以外的因数之和为数字B#xff0c;B除本身之外的因数之和为A#xff0c;这样的数对称为相亲数#xff0c;例如#xff1a;220的真因数之和为1245101120224455110284#xff0c;284的真因数之和为 12471142220#xff0c;请找出2到10000之间所有的相亲数。 …1.数字A除本身以外的因数之和为数字BB除本身之外的因数之和为A这样的数对称为相亲数例如220的真因数之和为1245101120224455110284284的真因数之和为 12471142220请找出2到10000之间所有的相亲数。 function index($m,$n){
$array [];
define(N,$n);
for ($i $m; $i N; $i){
for ($j 1,$array[$i] 0; $j $i; $j){
if ($i % $j 0){$array[$i] $j;}}
}
for ($i $m; $i N; $i){
$j $array[$i];
if ($j N){
continue;
}
if ($i $array[$j] $j $i){
echo $i. 与 .$j. 为相亲数;
echo \n;
}
}
}
index(2,10000); 2.兄弟四人的年龄成一等差数列他们四人的年龄相加是26相乘是880求以他们的年龄为前4项的等差数列的前20项。 function lists () { for ( $a 1 ; $a 4 ; $a ){ for ( $n 1 ; $n 6 ; $n ){ if ( 4 * $a 6 * $n 26 $a * ( $a $n ) * ( $a $n $n ) * ( $a $n $n $n ) 880 ){ for ( $i 1 ; $i 20 ; $i ){ $an $a ( $i - 1 ) * $n ; echo $an . ; } } } } } lists (); 3.水仙花数是指一个三位数其各位数字立方和等于该数本身。例如153 1³ 5³ 3³所以 153 是一个水仙花数试找出所有三位数中的所有水仙花数。 function ShuiXian ( $n , $m ) { for ( $i $n ; $i $m ; $i ){ $arr str_split ( $i ); if ( $i (( $arr [ 0 ] * $arr [ 0 ] * $arr [ 0 ]) ( $arr [ 1 ] * $arr [ 1 ] * $arr [ 1 ]) ( $arr [ 2 ] * $arr [ 2 ] * $arr [ 2 ]))){ echo $i . \n ; } } } ShuiXian ( 100 , 999 ); 4.用递归方法计算一个数的阶乘。 function fn2 ( $n ) { if ( $n 0 || $n 1 ){ return 1 ; } $fn fn2 ( $n - 1 ) * $n ; return $fn ; } echo fn2 ( 4 ); 5.堆排序是利用堆积树的数据结构所设计的一种排序算法可以根据数组索引快速定位到指定的数据元素。用堆排序的方式将数组[49, 38,65, 97, 76, 13, 27]按照从小到大的方式排序。 function orderBy ( array $array ) { $length count ( $array ); for ( $i $length / 2 - 1 ; $i 0 ; $i -- ){ $array adJustHeap ( $array , $i , $length ); } for ( $j $length - 1 ; $j 0 ; $j -- ){ $array Swap ( $array , 0 , $j ); $array adJustHeap ( $array , 0 , $j ); } var_dump ( $array ); } function adJustHeap ( array $array , $i , $length ) { $temp $array [ $i ]; for ( $k $i * 2 1 ; $k $length ; $k $k * 2 1 ){ if ( $k 1 $length $array [ $k ] $array [ $k 1 ]){ $k ; } if ( $array [ $k ] $temp ){ $array [ $i ] $array [ $k ]; $i $k ; } else { break ; } } $array [ $i ] $temp ; return $array ; } function Swap ( array $array , $a , $b ) { $temp $array [ $a ]; $array [ $a ] $array [ $b ]; $array [ $b ] $temp ; return $array ; } orderBy ([ 49 , 38 , 65 , 97 , 76 , 13 , 27 ]);