1.数字A除本身以外的因数之和为数字B,B除本身之外的因数之和为A,这样的数对称为相亲数,例如:220的真因数之和为1+2+4+5+10+11+20+22+44+55+110=284,284的真因数之和为 1+2+4+71+142=220,请找出2到10000之间所有的相亲数。
function index($m,$n){
$array = [];
define("N",$n);
for ($i = $m; $i N){
continue;
}
if ($i == $array[$j] && $j > $i){
echo $i." 与 ".$j." 为相亲数";
echo "n";
}
}
}
index(2,10000);
2.兄弟四人的年龄成一等差数列,他们四人的年龄相加是26,相乘是880,求以他们的年龄为前4项的等差数列的前20项。
function
lists
()
lists
()
{
for
(
$a
=
1
;
$a
4
;
$a
++
){
(
$a
=
1
;
$a
4
;
$a
++
){
for
(
$n
=
1
;
$n
6
;
$n
++
){
(
$n
=
1
;
$n
6
;
$n
++
){
==
880
){
880
){
for
(
$i
=
1
;
$i
20
;
$i
++
){
(
$i
=
1
;
$i
20
;
$i
++
){
$an
=
$a
+
(
$i
–
1
)
*
$n
;
=
$a
+
(
$i
–
1
)
*
$n
;
echo
$an
.
” “
;
$an
.
” “
;
}
}
}
}
}
lists
();
();
3.水仙花数是指一个三位数,其各位数字立方和等于该数本身。例如:153 = 1 + 5 + 3,所以 153 是一个水仙花数;试找出所有三位数中的所有水仙花数。
function
ShuiXian
(
$n
,
$m
)
ShuiXian
(
$n
,
$m
)
{
for
(
$i
=
$n
;
$i
$m
;
$i
++
){
(
$i
=
$n
;
$i
$m
;
$i
++
){
$arr
=
str_split
(
$i
);
=
str_split
(
$i
);
if
(
$i
==
((
$arr
[
0
]
*
$arr
[
0
]
*
$arr
[
0
])
+
(
$arr
[
1
]
*
$arr
[
1
]
*
$arr
[
1
])
+
(
$arr
[
2
]
*
(
$i
==
((
$arr
[
0
]
*
$arr
[
0
]
*
$arr
[
0
])
+
(
$arr
[
1
]
*
$arr
[
1
]
*
$arr
[
1
])
+
(
$arr
[
2
]
*
$arr
[
2
]
*
$arr
[
2
]))){
[
2
]
*
$arr
[
2
]))){
echo
$i
.
“n”
;
$i
.
“n”
;
}
}
}
4.用递归方法计算一个数的阶乘。
function
fn2
(
$n
)
fn2
(
$n
)
{
if
(
$n
==
0
||
$n
==
1
){
(
$n
==
0
||
$n
==
1
){
return
1
;
1
;
}
$fn
=
fn2
(
$n
–
1
)
*
$n
;
=
fn2
(
$n
–
1
)
*
$n
;
return
$fn
;
$fn
;
}
echo
fn2
(
4
);
fn2
(
4
);
5.堆排序是利用堆积树的数据结构所设计的一种排序算法,可以根据数组索引快速定位到指定的数据元素。用堆排序的方式将数组[49, 38,65, 97, 76, 13, 27]按照从小到大的方式排序。
function
orderBy
(
array
$array
)
orderBy
(
array
$array
)
{
$length
=
count
(
$array
);
=
count
(
$array
);
for
(
$i
=
$length
/
2
–
1
;
$i
>=
0
;
$i
—
){
(
$i
=
$length
/
2
–
1
;
$i
>=
0
;
$i
—
){
$array
=
adJustHeap
(
$array
,
$i
,
$length
);
=
adJustHeap
(
$array
,
$i
,
$length
);
}
for
(
$j
=
$length
–
1
;
$j
>
0
;
$j
—
){
(
$j
=
$length
–
1
;
$j
>
0
;
$j
—
){
$array
=
Swap
(
$array
,
0
,
$j
);
=
Swap
(
$array
,
0
,
$j
);
$array
=
adJustHeap
(
$array
,
0
,
$j
);
=
adJustHeap
(
$array
,
0
,
$j
);
}
var_dump
(
$array
);
(
$array
);
}
function
adJustHeap
(
array
$array
,
$i
,
$length
)
adJustHeap
(
array
$array
,
$i
,
$length
)
{
$temp
=
$array
[
$i
];
=
$array
[
$i
];
for
(
$k
=
$i
*
2
+
1
;
$k
$length
;
$k
=
$k
*
2
+
1
){
(
$k
=
$i
*
2
+
1
;
$k
$length
;
$k
=
$k
*
2
+
1
){
if
(
$k
+
1
$length
&&
$array
[
$k
]
$array
[
$k
+
1
]){
(
$k
+
1
$length
&&
$array
[
$k
]
$array
[
$k
+
1
]){
$k
++
;
++
;
}
if
(
$array
[
$k
]
>
$temp
){
(
$array
[
$k
]
>
$temp
){
$array
[
$i
]
=
$array
[
$k
];
[
$i
]
=
$array
[
$k
];
$i
=
$k
;
=
$k
;
}
else
{
else
{
break
;
;
}
}
$array
[
$i
]
=
$temp
;
[
$i
]
=
$temp
;
return
$array
;
$array
;
}
function
Swap
(
array
$array
,
$a
,
$b
)
Swap
(
array
$array
,
$a
,
$b
)
{
$temp
=
$array
[
$a
];
=
$array
[
$a
];
$array
[
$a
]
=
$array
[
$b
];
[
$a
]
=
$array
[
$b
];
$array
[
$b
]
=
$temp
;
[
$b
]
=
$temp
;
return
$array
;
$array
;
}
orderBy
([
49
,
38
,
65
,
97
,
76
,
13
,
27
]);
([
49
,
38
,
65
,
97
,
76
,
13
,
27
]);
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
微信小程序 监听对象中所有属性的变化 如果某个对象中需要被监听的属性太多,为了方便,可以使用 通配符 ** 来监听 对象中所有属性的变化 什么是纯数字字段 概念:纯数字字段指的是那些不用于界面渲染的 data 字段。 好处:提升界面的更新的性能。 使用规则 在…