<?php
/*数列如下:1,2,3,6,9,18,27… ,求第20项的值是多少?
(注意,规律就是第n个数是第n-2个数的3倍,已知第一个是1,第二个是2)。
*/
function ahc($n)
{
if($n==1)
{
return 1;
}elseif($n==2)
{
return 2;
}else{
$r = ahc($n-2)*3;
return $r;
}
}
echo ahc(6).'<br>';
echo ahc(20);
<?php
/*
》》》(选做),
写2个函数,分别可以求得两个正整数的最大公约数和最小公倍数。
提示:
最大公约数就是能够同时整除该两个数的最大的那个。比如24和36的最大公约数是12
最小公倍数就是能够同时被该两个数整除的最小的那个。比如24和36的最小公倍数是72
*/
function big_two($n,$m)
{
$max = $n>$m?$n:$m;
$min = $n<$m?$n:$m;
for($i=$max;$i>=$max;$i+=$max)
{
if($i%$min==0){
return $i;
}
}
}
echo '3,4的最小公倍数'.big_two(3,4).'<hr>';
function small_two($n,$m)
{
$max = $n>$m?$n:$m;
$min = $n<$m?$n:$m;
for($i=$min;$i<=$min;$i--)
{
if($max%$i==0){
return $i;
}
}
}
echo '8,4的最小公约数'.small_two(8,4).'<hr>';
<?php
/*
》》》(选做)
写一个函数,该函数可以将给定的任意个数的参数以指定的字符串串接起来成为一个长的字符串。
该函数带2个或2个以上参数,其中第一个参数是用于将其他参数进行串联的连接字符串。比如调用该函数:
chuanlian(“-”, “ab”, “cd”, 123); //得到结果为字符串:”ab-cd-123”
*/
function str_c()
{
$bbr = func_get_args();
$acg = func_get_arg(0);
$arr_b = count($bbr);
$b ='';
for($i=1;$i<=$arr_b-2;$i++){
$str = $bbr[$i];
$b .= $bbr[$i].$acg;
}
$b .= func_get_arg($arr_b-1);
return $b;
}
echo str_c('-','ab',123,'sahsa','asdsadhhas');