PHP练习题(一)

程序1 .
题目: 企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10% ; 利润高于10 万元, 低于20 万元时, 低于10万元的部分按10% 提成,高于 10万元的部分,可提成7.5%;20万到40 万之间时,高于20 万元的部分,可提成5%; 高于40 万元的部分, 可提成1%,从键盘输入当月利润I,求应发放奖金总数?(利用if else if)

 1 $I = 4324128;
 2 $bonus = 0;  // 奖金数
 3 
 4 if ($I <= 100000) {
 5     $bonus = $I * 1/10;
 6 } else if ($I > 100000 && $I < 200000) {
 7     $bonus = $I % 100000 * 7.5/100 + ($I - $I % 100000) * 1/10;
 8 } else if ($I >= 200000 && $I < 400000) {
 9     $bonus = ($I - 200000) * 5/100 + ($I % 100000 * 7.5/100) + ($I - $I % 100000) * 1/10;
10 } else {
11     $bonus = ($I - 400000) * 1/100 + ($I - 200000) * 5/100 + ($I % 100000 * 7.5/100) + ($I - $I % 100000) * 1/10;
12 }
13 
14 echo 'bonus :' . $bonus.'<br/>';

 

程序2.
题目: 输入三个整数x, y, z, 找出最大的数;

1 $x = 4;
2 $y = 7;
3 $z = 2;
4 
5 $max = $x>$y ? $x : $y;
6 $max = $z>$max ? $z : $max;
7 
8 echo 'max number :' . $max .'<br/>';

 

 

程序3.
题目: 打印出所有的“水仙花数”, 所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。

 1 $j = 0; // 数的个位 
 2 $k = 0; // 数的十位
 3 $l = 0; // 数的百位
 4 for($i = 100; $i<1000; $i++){
 5     $j = $i % 10;
 6     $k = ($i % 100 - $j) / 10;
 7     $l = ($i - $i % 100) / 100;
 8     if ($i == ($j*$j*$j + $k*$k*$k + $l*$l*$l)) {
 9         echo $i . ' ';
10     } 
11 }

 

 

程序4.
题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又吃了一个,第二天早上又将剩下的桃子吃掉一半,又多吃了一个。 以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,只剩下一个桃子了。求第一天共摘了多少。 (采用逆向思维,从后往前推)

1 $sum = 1;
2 for ($i = 1; $i <= 10; $i++) {
3     $sum = ($sum + 1) * 2;
4 } 
5 echo '桃子总数:' .$sum. '<br/>';

 

 

程序5.
题目: 有一分数序列: 2/1, 3/2, 5/3, 8/5, 13/8, 21/13...求出这个数列的前20项之和。(注意分子和分母的变化规律)

1 $sum2 = 0;
2 $a = 2;
3 $b = 1;
4 for($i = 1; $i <= 20; $i++) {
5     $sum2 = $sum2 + $a/$b;
6     $b = $a;
7     $a += $b;
8 }
9 echo '前20项之和为:' .$sum2.'<br/>';

 


 
 

posted @ 2016-04-14 21:50  帅的打破吉尼斯  阅读(1011)  评论(0编辑  收藏  举报