循序渐进学编程.JavaScript函数作业

本文介绍了一系列JavaScript实用函数,包括判断奇数、素数、数组求和、求最大值和最小值,并应用这些函数实现了哥德巴赫猜想验证及计算特定年份各月份天数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Myfunction.js

// 1. 写一个函数,该函数用于判断某个数是不是奇数
// 函数名参考: isOdd

/**判断n是否奇数,如果是奇数返回true,否则返回false
 * 
 * @param {number} n 要判断的数字
 * @returns boolean  
 */
function isOdd(n)
{
    return n % 2 !== 0;
}


// 2. 写一个函数,该函数用于判断某个数是不是素数

// 函数名参考: isPrime

/**
 * 判断某个数是不是素数,如果是素数返回true,否则返回false
 * @param {Number} n 要判断的数字 
 */
function isPrime(n){
    for(var i = 2; i < n;i++)
    {
        if(n % i === 0)
        return false;
    }
    return true;
}
// 3. 写一个函数,该函数用于对数组求和

// 函数名参考: sumofArray
/**
 * 用于对数组求和,并且返回求和结果
 * @param {Array} arr 待求和的数组 
 */
function sumofArray (arr)
{
    var sum = 0;
    for(var i = 0; i < arr.length;i++)
        sum += arr[i];
    return sum;
}

// 4. 写一个函数,该函数用于得到数组中的最大值

/**
 * 用于得到数组中的最大值,并将最大值返回
 * @param {Array} arr 形参数组
 */
function maxofArray(arr)
{
    var maxnum = 0;
    for(var i = 0; i < arr.length;i++)
    {
        if(arr[i] > maxnum)
            maxnum = arr[i];
    }
    return maxnum;
}

// 函数名参考: maxofArray

// 5. 写一个函数,该函数用于得到数组中的最小值

// 函数名参考:minofArray

/**
 * 用于得到数组中的最小值,并将该值返回
 * @param {Array} arr 形参数组
 */
function minofArray(arr)
{
    var minnum = 0;
    for(var i = 0; i < arr.length;i++)
    {
        if(arr[i] < minnum)
            minnum = arr[i];
    }
    return minnum;
}
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>

    <script src="../common/Myfunction.js">//引入Myfunction.js文件

    </script>
    <script>
        // 1. 利用上面的某些函数, 实现哥德巴赫猜想
        // 任一大于2的偶数都可写成两个质数之和, 比如: 8 = 3 + 5
        // 让用户输入一个大于2的整数, 输出其等于哪两个素数相加

        var n = 12, result = 0;
        if (!isOdd(n))
        {
            for (var i = 2; i < n - 1; i++)
            {
                for (var j = 2; j < n - 1; j++)
                {
                    result = isPrime(i) && isPrime(j) && (i + j === n)
                     if(result)
                     {
                         console.log(i, j);
                         break;
                     }
                }
                if (result)
                    break; 
            }
                
        }
        else
        console.log("您输入的是奇数,不符合哥德巴赫猜想!");

        //2. 让用户输入一个年份, 输出该年每个月的天数
        var year = prompt("请您输入年份:");
        var februrayDay = 28;
        if(year % 4 === 0 && year % 100 !== 0 || year % 400 === 0)
        {
            februrayDay = 29;
        }
        console.log(`
                    一月:${31}天, 二月:${februrayDay}天,
                    三月${31}天,四月${30}天,
                    五月${31}天,六月${30}天,
                    七月${31}天,八月${31}天,
                    九月${30}天,十月${31}天,
                    十一月${30}天,十二月${31}天`)
    </script>
</body>

</html>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值