函数相关练习题

本文介绍了如何根据用户输入的时间进行问候,以及一系列涉及数字验证、比较、奇偶数判断、日期计算、经济决策(吃饭预算)和基本算法(如最大值、数组操作、简易计算器)的实用函数。涵盖了前端开发、数学逻辑、日期处理和IT工具等多个领域。
摘要由CSDN通过智能技术生成
//根据用户输入时间进行问候
function sayHello(time) {
            //数据的合法性验证:原则:排除不符合条件的数据
            //1.输入的时间必须是整数(正则表达式)
            var verify = /^\d+$/  //匹配1到多个整数
            if (!verify.test(time)) {
                alert('请输入整数');
                return false;
            }
            //2.时间必须是0-23
            if (time < 0 || time > 24) {
                alert('请输入0-23之间的整数');
                return false;
            }
            //逻辑判断
            if (time >= 19) {
                alert('晚上好');
            } else if (time >= 13) {
                alert('下午好');
            } else if (time >= 6) {
                alert('上午好');
            } else {
                alert('现在是休息时间,请您休息');
            }
        }
        var time = window.prompt('请问现在几点了?')
        sayHello(time);
//比较两个数的大小
function compare(num1, num2) {
                if (isNaN(num1) || isNaN(num2)) {
                    alert('请您输入有效的数字')
                    return false;
                }
                var max = num1 >= num2 ? num1 : num2
                alert('较大值为:' + max)
            }
            var num1 = parseInt(prompt('请输入第一个数字'));
            var num2 = parseInt(prompt('请输入第二个数字'));
            compare(num1, num2);
//判断奇偶数
function odd_even(num) {
            //1.输入的数字必须是整数(正则表达式)
            var verify = /^\d+$/ //匹配1到多个整数
            if (!verify.test(num)) { //如果传递进来的数据是整数,那么preg.test(hour)结果为true
                alert('请输入整数');
                return false;
            }
            if (num%2 ==0) {
                alert('偶数');
            }else{
                alert('奇数');
            }
        }
        var num = parseInt(window.prompt('请输入一个数'));
        odd_even(num);
//假设1号为星期一,根据输入的日期判断星期几
function week(date) {
            //1.输入的数字必须是整数(正则表达式)
            var verify = /^\d+$/ //匹配1到多个整数
            if (!verify.test(date)) { //如果传递进来的数据是整数,那么preg.test(hour)结果为true
                alert('请输入整数');
                return false;
            }
            if (date<1 || date>31) {
                alert('请输入1到31之间的整数');
                return false;
            }
            var yushu = date%7;
            switch(yushu){
                case 1:alert('星期一');
                break;
                case 2:
                    alert('今天是星期二')
                    break;
                case 3:
                    alert('今天是星期三')
                    break;
                case 4:
                    alert('今天是星期四')
                    break;
                case 5:
                    alert('今天是星期五')
                    break;
                case 6:
                    alert('今天是星期六')
                    break;
                case 0:
                    alert('今天是星期日')
                    break;
            }
        }

        var date = parseInt(window.prompt('请输入日期'));
        week(date);
//根据输入的钱,请吃饭,switch的技巧运用
 function eat(money) {
                if (isNaN(money)) {
                    alert('请输入有效的数字')
                    return false;
                }
                switch (true) {
                    case (money >= 2000): alert('请大家吃西餐')
                        break;
                    case (money >= 1500 ): alert('请大家吃快餐')
                        break;
                    case (money >= 1000 ): alert('请大家喝饮料')
                        break;
                    case (money >= 500 ): alert('请大家吃棒棒糖')
                        break;
                    default: alert('班长下次把钱带够啊')
                        break;
                }
            }
            var money = window.prompt('班长你有多少钱?')
            console.log(money);
            eat(money);
//质数
function zhishu(num) {
                if (num <= 2) {
                    return false;
                } else if (num % 2 == 0 || num % 3 == 0 || num % 5 == 0 || num % 7 == 0) {
                    return false;
                } else {
                    return true;
                }
            }

        var num = window.prompt('请输入一个数:');
        document.write(zhishu(num));
// 写一个函数,能返回传入的任意三个数字的最大值。
        function maxThree(a,b,c){
            if(a>b && a>c){
                return a;
            }else if(b>a && b>c){
                return b;
            }else{
                return c;
            }
        }
        var x = parseInt(window.prompt('请输入一个数:'));
        var y = parseInt(window.prompt('请输入一个数:'));
        var z = parseInt(window.prompt('请输入一个数:'));
        document.write('您的输入的最大值为:'+maxThree(x,y,z));
//能翻转传入的任意数组,并把翻转结果通过返回值返回。 
 //var new_arr=arr.reverse(); //数组中自带的反转函数
        function array_reverse(arr) {
            return arr.reverse(arr); //反转函数
        }
        var new_arr=array_reverse([1,2,3,4,5]);
        console.log(new_arr);

 //给定任意一个数组实现数组从小到大排序
        function arr_sort(arr) {
            return arr.sort(function (a, b) { //排序函数
                //return a-b; //从小到大
                return b - a; //从大到小
            });
        }
        var arr=[28,12,65,8,19];
        console.log(arr_sort(arr));
// 简易计算器       
        function calculator(option, num1, num2) {
                while (true) {
                    var option = window.prompt('欢迎使用简易计算器:' + '\n' + '1.加法运算' + '\n' + '2.减法运算' + '\n' + '3.乘法运算' + '\n' + '4.除法运算' + '\n' + '5.退出' + '\n' + '请输入您的选项');
                    if (option == 5) {
                        break;
                    }
                    var num1 = parseInt(window.prompt('请输入第一个数:'));
                    var num2 = parseInt(window.prompt('请输入第二个数:'));
                    switch (parseInt(option)) {
                        case 1:
                            var result = parseInt(num1) + parseInt(num2);
                            alert('加法运算结果为' + result);
                            break;
                        case 2:
                            var result = num1 - num2;
                            alert('减法运算结果为' + result);
                            break;
                        case 3:
                            var result = num1 * num2;
                            alert('乘法运算结果为' + result);
                            break;
                        case 4:
                            var result = num1 / num2;
                            alert('除法运算结果为' + result);
                            break;
                        case 5: break;
                    }
                }
            }
            calculator();
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值