• 循环练习


    练习一:质数相关

    题目:在页面中接收一个用户输入的数字,并判断该数是否是质数。

    方法一 代码实现:

    html>
    <html>
        <head>
            <meta charset="UTF-8" />
            <title>title>
            <script type="text/javascript">
                /*
                质数:只能被1和它自身整除的数,1不是质数也不是合数,质数必须是大于1的自然数。
             */
    
                const num = prompt('请输入一个大于1的整数:');
    
                //判断这个值是否合法
                if (num <= 1) {
                    alert('该值不合法!');
                } else {
                    //先用flag标志位,来保存当前的数的状态
                    //默认当前num是质数
                    let flag = true;
    
                    //判断num是否是质数
                    //获取2-num之间的数
                    for (let i = 2; i < num; i++) {
                        //console.log(i);
                        //判断num是否能被i整除
                        if (num % i == 0) {
                            //一旦发现:如果num能被i整除,则说明num一定不是质数,
                            //此时:设置flag为false,然后跳出 for 循环
                            flag = false;
                            break;
                        }
                    }
    
                    //如果num是质数则输出
                    if (flag) {
                        alert(num + '是质数!!!');
                    } else {
                        alert('这个不是质数');
                    }
                }
            script>
        head>
    
        <body>body>
    html>
    

    方法二 代码实现:

    //方法一的简化
    var num = parseInt(prompt("输入一个数字"))
                for (var i = 2; i < num / 2 + 1; i++) {
                    if (num % i == 0) {
                        alert("不是质数")
                    } else {
                        alert("是质数")
                    }
                    break;
                }
    

    方法三 代码实现:

     //思路:质数只有1和它本身两个因数,所以只需判断因数的个数就可以确定是不是质数
    var num2 = parseInt(prompt("输入一个数字"))
                    var count = 0  //用来统计因数的个数
                    for (var i = 1; i <= num2; i++) {
            
                        if (num2 % i == 0) {
                            console.log(i)
                            count++
                        }  
                    }
                    console.log(count)
                    if (count == 2) {
                        alert("是质数")
                    }
    

    练习二:质数相关

    题目:打印 1~100 之间的所有质数

    代码实现:

    html>
    <html>
        <head>
            <meta charset="UTF-8" />
            <title>title>
            <script type="text/javascript">
                /*
                 * 打印出1-100之间所有的质数
                 */
    
                //打印2-100之间所有的数
                for (let i = 2; i <= 100; i++) {
                    //创建一个布尔值,用来保存结果,默认i是质数
                    let flag = true;
    
                    //判断i是否是质数
                    //获取到2-i之间的所有的数
                    for (let j = 2; j < i; j++) {
                        //判断i是否能被j整除
                        if (i % j == 0) {
                            //如果进入判断则证明i不是质数,修改flag值为false
                            flag = false;
                        }
                    }
    
                    //如果是质数,则打印i的值
                    if (flag) {
                        console.log(i);
                    }
                }
            script>
        head>
    
        <body>body>
    html>
    

    打印结果:

    练习三:99 乘法表

    代码实现:

    html>
    <html>
        <head>
            <meta charset="UTF-8" />
            <title>title>
            <style type="text/css">
                body {
                    width: 2000px;
                }
    
                span {
                    display: inline-block;
                    width: 80px;
                }
            style>
            <script type="text/javascript">
                /*
                 * 1.打印99乘法表
                 *   1*1=1
                 *   1*2=2 2*2=4
                 *   1*3=3 2*3=6 3*3=9
                 *   1*4=4 2*4=8 3*4=12 4*4=16
                 *                      ....9*9=81
                 *
                 * 2.打印出1-100之间所有的质数
                 */
    
                //创建外层循环,用来控制乘法表的高度
                for (let i = 1; i <= 9; i++) {
                    //创建一个内层循环来控制图形的宽度
                    for (let j = 1; j <= i; j++) {
                        document.write('' + j + '*' + i + '=' + i * j + '');
                    }
    
                    //输出一个换行
                    document.write('
    '
    ); }
    script> head> <body>body> html>

    页面效果:

  • 相关阅读:
    SDN和NFV的区别?
    设计模式<二> :策略模式
    C++ set容器
    Jellyfish密码学库
    利用iperf网络带宽测试工具看多线程及多核编程
    【论文系列】01_如何做好文献阅读及笔记整理
    Selenium自动化测试框架工作原理你明白了吗?
    机器学习(八)经验风险与结构风险
    【蓝桥】小蓝的疑问
    Go----方法和函数的区别
  • 原文地址:https://www.cnblogs.com/qianfanqf/p/16881802.html