博主信息
博文 20
粉丝 0
评论 0
访问量 16405
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
0805 PHP编程作业 条件循环与回调函数
缘亦
原创
613人浏览过

1. 给定一个数组$arr = [23,3,45,6,78,8,34],筛选其偶数成员组成新的数组返回,请封装函数。

自己弄没弄好,后来查手册,发现array_filter函数,参照手册后搞定

实例

<?php
//检测是否偶数的函数
function even($num) {        
        return !($num % 2);
}

$arr=[23,3,45,6,78,8,34];//需要检测的数组
print_r(array_filter($arr,'even'));//打印输出偶数数组
?>

运行实例 »

点击 "运行实例" 按钮查看在线实例


2. 尝试实现简单的计算器功能,语言不限制。

简单版:

简单版实例

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>计算器</title>
    <style>
        .input {
            height: 25px;
        }
        .submit {
            width: 80px;
            margin: 5px;
            padding: 5px;
        }
        .result {
            color: red;
            font-size: 28px;
        }
    </style>
</head>

<body>
    <center>
        <form name="sub" method="post">
            <label>计算器</label>
            <input type="text" class="input" name="num1" value="<?php echo $_POST['num1'] ?>">
            
            <select name="compute" class="input">
                <option value="+">+</option>
                <option value="-">-</option>
                <option value="*">*</option>
                <option value="/">/</option>
            </select>
            <input name="num2" class="input" value="<?php echo $_POST['num2'] ?>" type="text">
            <br>
            
            <input name="sub" type="submit" value="计算" class="submit">
            
        </form>
        
        <?php
        $num1 = $_POST['num1'];
        $num2 = $_POST['num2'];
        $compute = $_POST['compute'];
        $result = null;
        if (isset($_POST["sub"])) {
            //判断数字1是否为空
            if ($num1 == "") {
                $num1 = false;
                echo "第一个数不能为空<br>";
            }
            //判断数字1是否为数字
            if (!is_numeric($num1)) {
                $num1 = false;
                echo "第一个数不是数字<br>";
            }
            //判断运算符是否为空
            if ($compute == "") {
                $compute = false;
                echo "请选择运算符<br>";
            }
            //判断数字2是否为空
            if ($num2 == "") {
                $num2 = false;
                echo "第二个数不能为空<br>";
            }
            //判断数字2是否为数字
            if (!is_numeric($num2)) {
                $num2 = false;
                echo "第二个数不是数字<br>";
            }
        }
        switch ($compute) {
            case '+':
                $result = $num1 + $num2; //加法求和
                break;
            case '-':
                $result = $num1 - $num2; //减法求差
                break;
            case '*':
                $result = $num1 * $num2; //乘法求积
                break;
            case '/':
                $result = $num1 / $num2; //除法求商
                break;
            default:
        }
        //输出计算结果
        echo '<p class="result">' . $result . '</p>';
        ?>
    </center>
    </form>
</body>

</html>

运行实例 »

点击 "运行实例" 按钮查看在线实例

使用在input中输入数字计算都正常能实现计算器的功能了,想挑战下自己做带按钮的计算器,前半部分实现了,点击数字第一个输入框以及运算符都能通过按钮输入,第2个输入框搞不定了,思路是点击按钮先赋值到第一个input,当点击运算符后,再点击按钮则是赋值到第2个input,这最后一部往第2个input赋值搞不好了,代码贴出来请老师看看吧。

按钮版实例

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>计算器</title>
    <style>
        .input {
            height: 25px;
        }
        .button {
            padding: 5px 10px;
            margin: 5px 2px;
        }
        .buttonc {
            padding: 5px 15px;
            margin: 5px 2px;
        }
        .submit {
            width: 80px;
            margin: 5px;
            padding: 5px;
        }
        .result {
            color: red;
            font-size: 28px;
        }
    </style>
</head>

<body>
    <center>
        <form name="sub" method="post">
            <label>计算器</label>
            <input type="text" class="input" name="num1" value="<?php echo $_POST['num1'] ?>" id="num1">
            
            <select name="compute" class="input" id="compute">
                <option value="">运算符</option>
                <option value="+">+</option>
                <option value="-">-</option>
                <option value="*">*</option>
                <option value="/">/</option>
            </select>
            <input name="num2" class="input" value="<?php echo $_POST['num2'] ?>" type="text" id="num2">
            <br>
            <input type="button" value="1" class="button" onclick="myFunction(this)">
            <input type="button" value="2" class="button" onclick="myFunction(this)">
            <input type="button" value="3" class="button" onclick="myFunction(this)">
            <input type="button" value="4" class="button" onclick="myFunction(this)">
            <input type="button" value="5" class="button" onclick="myFunction(this)">
            <br>
            <input type="button" value="6" class="button" onclick="myFunction(this)">
            <input type="button" value="7" class="button" onclick="myFunction(this)">
            <input type="button" value="8" class="button" onclick="myFunction(this)">
            <input type="button" value="9" class="button" onclick="myFunction(this)">
            <input type="button" value="0" class="button" onclick="myFunction(this)">
            <br>
            <input type="button" value="+" class="buttonc" onclick="document.getElementById('compute').value=this.value">
            <input type="button" value="-" class="buttonc" onclick="document.getElementById('compute').value=this.value">
            <input type="button" value="*" class="buttonc" onclick="document.getElementById('compute').value=this.value">
            <input type="button" value="/" class="buttonc" onclick="document.getElementById('compute').value=this.value">
            <br>
            <input name="del" type="button" value="C" class="submit" onclick="getElementById('num1').value = null;getElementById('num2').value = null">
            <input name="sub" type="submit" value="计算" class="submit">
            <script>
            function myFunction(button) {
                var x = button.value;
                document.getElementById("num1").value += x;
            }
        </script>
        </form>
        
        <?php
        $num1 = $_POST['num1'];
        $num2 = $_POST['num2'];
        $compute = $_POST['compute'];
        $result = null;
        if (isset($_POST["sub"])) {
            //判断数字1是否为空
            if ($num1 == "") {
                $num1 = false;
                echo "第一个数不能为空<br>";
            }
            //判断数字1是否为数字
            if (!is_numeric($num1)) {
                $num1 = false;
                echo "第一个数不是数字<br>";
            }
            //判断运算符是否为空
            if ($compute == "") {
                $compute = false;
                echo "请选择运算符<br>";
            }
            //判断数字2是否为空
            if ($num2 == "") {
                $num2 = false;
                echo "第二个数不能为空<br>";
            }
            //判断数字2是否为数字
            if (!is_numeric($num2)) {
                $num2 = false;
                echo "第二个数不是数字<br>";
            }
        }
        switch ($compute) {
            case '+':
                $result = $num1 + $num2; //加法求和
                break;
            case '-':
                $result = $num1 - $num2; //减法求差
                break;
            case '*':
                $result = $num1 * $num2; //乘法求积
                break;
            case '/':
                $result = $num1 / $num2; //除法求商
                break;
            default:
        }
        //输出计算结果
        echo '<p class="result">' . $result . '</p>';
        ?>
    </center>
    </form>
</body>

</html>

运行实例 »

点击 "运行实例" 按钮查看在线实例


批改老师:灭绝师太灭绝师太

批改状态:合格

老师批语:计算器第二种解决办法:可以给select一个change事件,运算符被选择后,再点击的数就往右边的输入框追加
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学