实验二php基本程序设计

实验目的:

  1. 掌握PHP语法基本元素,掌握数据类型、变量和常量、运算符、表达式的使用;
  2. 掌握PHP流程控制;

实验内容及要求:

  1. 求一个一维数组的最大值。
  2. 求一个一维数组的元素之和。
  3. 求一个数的阶乘。界面如下图:

 

  1. 打印水仙花数。打印水仙花数

水仙花数的特点:三位的数字,满足的条件是abc=a3+b3+c3

  1. 设计一个计算器。如下图所示:

 

6.能被3整除的个位数为6的数

7. 操场上100多人排队,3人一组多1,4人一组多2,5人一组多3,共多少人?

8. 假设某人有100,000 现金。每经过一次路口需要进行一次交费。交费规则为当他现金大于50,000 时每次需要交5%如果现金小于等于50,000 时每次交5,000。请写一程序计算此人可以经过多少次这个路口。

实验源代码:

  1. 求一个一维数组的最大值。

<?php

$num=array(1,5,3,515,45,32,18);

$max=$num[0];

for($i=1;$i<count($num);$i++){

    if($num[$i]>$max){

        $max=$num[$i];

    }

}

echo ‘数组中最大的数为:’.$max;

  1. 求一个一维数组的元素之和。

<?php

$arr=array(4,6,2,22,11);

$sum=0;

for($i=0;$i<count($arr);$i++){

    $sum+=$arr[$i];

}

echo “数组元素之和: “.$sum;

  1. 求一个数的阶乘。界面如下图:

<?php

$result=0;

$n=0;

if(!empty($_POST))

{

    $result=1;

    $n=$_POST[‘num’];

    if($n<0)

    {

        $result=0;

    }

    if($n==0)

    {

        $result=1;

    }else{

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

        {

            $result*=$i;

        }

    }

}

 

?>

<!DOCTYPE html>

<html lang=”en”>

<head>

    <meta charset=”UTF-8″>

    <meta name=”viewport” content=”width=device-width, initial-scale=1.0″>

    <title>求阶乘</title>

</head>

<body>

<form action=”” method=”post”>

    <table border=”3″ >

        <tr>

 

            <td colspan=”2″>

                求阶乘

            </td>

        </tr>

        <tr>

            <td>

                请输入一个数

            </td>

            <td>

                <input type=”text” id=”num” name=”num” value=<?php echo $n;?>>

            </td>

        </tr>

        <tr>

            <td colspan=”2″>

                <input  type=”submit” value=”提交”>

            </td>

        </tr>

    </table>

    <?php echo $n,”的阶乘结果为:”,$result; ?>

</form>

</body>

</html>

  1. 打印水仙花数。打印水仙花数

水仙花数的特点:三位的数字,满足的条件是abc=a3+b3+c3

<?php

//计算立方

function cube($n)

{

    return $n*$n*$n;

}

 

//判断是否是水仙花数

function sxh($x)

{

    $hundred=floor($x/100);

    $ten=floor($x/10)%10;

    $one=floor($x%10);

    return (bool)($x==cube($hundred)+cube($ten)+cube($one));

 

}

 

//打印水仙花数

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

    if (sxh($i)) {

        echo $i . “\n”;

    }

}

  1. 设计一个计算器。如下图所示:

<?php

$num1=”;

$num2=”;

$result=””;

$operation=’+’;

 

if(!empty($_POST)){

    $num1=$_POST[‘num1’];

    $num2=$_POST[‘num2’];

    $operation=$_POST[‘operation’];

    if($operation==’+’){

        $result=$num1+$num2;

    }elseif($operation==’-‘){

        $result=$num1-$num2;

    }elseif($operation==’*’){

        $result=$num1*$num2;

    }else{

        $result=$num1/$num2;

    }

}

 

?>

 

<!DOCTYPE html>

<html lang=”en”>

<head>

    <meta charset=”UTF-8″>

    <meta name=”viewport” content=”width=device-width, initial-scale=1.0″>

    <title>计算器</title>

</head>

<body>

<form action=”” method=”post”>

    <label>第一个数:</label>

    <input type=”text” name=”num1″ value=<?php echo $num1;?>>

    <br/>

    <input type=”radio” name=”operation” value=”+” <?php if($operation==’+’) echo ‘checked’; ?>>+

    <input type=”radio” name=”operation” value=”-” <?php if($operation==’-‘) echo ‘checked’; ?>>-

    <input type=”radio” name=”operation” value=”*” <?php if($operation==’*’) echo ‘checked’; ?>>*

    <input type=”radio” name=”operation” value=”/” <?php if($operation==’/’) echo ‘checked’; ?>>/<br/>

    <label>第二个数:</label>

    <input type=”text” name=”num2″ value=<?php echo $num2;?>><br/>

    结果为<input type=”text” name=”result” value=<?php echo $result;?>>

    <input type=”submit” value =”计算”>

</form>

 

</body>

</html>

  1. 能被3整除的个位数为6的数

<?php

//能被3整除的个位数为6的数(100以内的) 

for($i=0;$i<100;$i++)

{

    if($i%3==0&&$i%10==6)

    echo $i.”   “;

}

  1. 操场上100多人排队,3人一组多1人,4人一组多2人,5人一组多3人,共多少人?

<?php

//n%3==1  n%4==2  n%5==3

$n=0;

for($i=100;$i<200;$i++) {

    if ($i % 3 == 1 && $i % 4 == 2 && $i % 5 == 3) {

        $n = $i;

        echo “一共”.$n.”人        “;

    }

 

}

8. 假设某人有100,000 现金。每经过一次路口需要进行一次交费。交费规则为当他现金大于50,000 时每次需要交5%如果现金小于等于50,000 时每次交5,000。请写一程序计算此人可以经过多少次这个路口。

<?php

 $n=0;

 

 //现金大于50000

 for($i=100000;$i>50000;$i-=$i*0.05)

        $n++;

//现金小于500000

for($j=$i;$j>=0&&$j<=50000;$j-=5000)

{

    $n++;

 

echo “总共可以通过”.$(n-1).”次这个路口”;

 

实验截图:

  1. 求一个一维数组的最大值。

 

  1. 求一个一维数组的元素之和。

 

  1. 求一个数的阶乘。

 

  1. 打印水仙花数。打印水仙花数

水仙花数的特点:三位的数字,满足的条件是abc=a3+b3+c3

 

  1. 设计一个计算器。

 

  1. 6.能被3整除的个位数为6的数

 

  1. 7. 操场上100多人排队,3人一组多1人,4人一组多2人,5人一组多3人,共多少人?

 

  1. 8. 假设某人有100,000 现金。每经过一次路口需要进行一次交费。交费规则为当他现金大于50,000 时每次需要交5%如果现金小于等于50,000 时每次交5,000。请写一程序计算此人可以经过多少次这个路口。

 

实验体会:

         通过本次实验,我基本掌握了PHP简单的语法,参数的建立,以及简单循环的套用,数组的运用,PHP与网页的简单结合。

版权声明:本文为慢漫曼蔓原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/manmmm/p/16154241.html