第二周复习题(循环)

循环

一.买本、笔、书

在这里插入图片描述

 var count = 0;
        for (var shu = 0; shu <= 7; shu++) {
            for (var bi = 0; bi <= 30; bi++) {
                for (var ben = 0; ben <= 50; ben++) {
                    if (shu * 20 + bi * 5 + ben * 3 == 150 && bi == 10) {
                        document.writeln("书" + shu + '笔' + bi + '本' + ben + "<br>");
                        count++;
                    }
                }
            }
        }
        document.writeln('有' + count + "种买法");

二.百马百石(34种)

在这里插入图片描述

   var x,y,z;
        var count=0;
        for(x=0;x<=50;x++)
        {
            for(y=0;y<=100;y++)
            {
                for(z=0;z<=100;z++)
                {
                    if(x*2+y*1+z/2*1==100&&x+y+z==100)
                    {
                        count++;
                        document.writeln('大马'+x+'中马'+y+'小马'+z,'<br />');
                        document.writeln(count+'种');
                    }
                }
            }
        }

三.百钱百鸡(3种)

在这里插入图片描述

 var x,y,z;
        var count=0;
        for(x=1;x<=20;x++)
        {
            for(y=1;y<=33;y++)
            {
                for(z=1;z<=300;z++)
                {
                    if(x*5+y*3+z/3*1==100&&x+y+z==100)
                    {
                        count++;
                        document.writeln('公鸡'+x+'母鸡'+y+'小鸡'+z,'<br />');
                        document.writeln(count+'种');
                    }
                }
            }
        }

四.搬砖

题目:36 块砖,36 人搬,男搬4,女搬3,两个小孩抬1 砖,
要求一次全搬完,问男、女和小孩各若干?

五.三位数

有一个三位数,个位数字比百位数字大,而百位数字比十位数字大,并且各位数字之和等于各位数字相乘之积。求这个三位数

六.蜘蛛腿

蜘蛛有8条腿,蜻蜓有6条腿和2对翅膀。蝉有6条腿和一对翅膀。

三种虫子一共有18只,共有118条腿和20对翅膀。问每种虫子各有多少只

各种数

一.1-10000的回文数

 //1-10000的回文数
        function testHuiWenShu() {
            // var num = 121;
            for (var i = 1; i < 10000; i++) {
                var num1 = String(i);
                if (num1.length == 3) {
                    if (num1[0] == num1[2]) {
                        document.writeln(num1);
                    }
                }
                else if (num1.length == 4) {
                    if (num1[0] == num1[3] && num1[1] == num1[2]) {
                        document.writeln(num1);
                    }
                }
                else if (num1.length == 1) {
                    document.writeln(num1);
                }
                else if (num1.length == 2) {
                    if (num1[0] == num1[1]) {
                        document.writeln(num1);
                    }
                }
            }
        }

二.回文数和平方回文数

  function huiwen() {
            for (var num = 100; num <= 3000; num++) { //num = 1234
                var num1 = String(num);
                var newNum = '';
                for (var i = num1.length - 1; i >= 0; i--) {
                    newNum += num1[i]; //4321  1234  
                    if (newNum == num1) {
                        document.writeln(num1 + '回文数');

                        //对数字进行开平方, 如果数字是121开平方后得到11
                        var n = parseInt(Math.sqrt(newNum));
                        if (n * n == num) {
                            document.writeln(num1 + '平方回文数');
                        }
                    }
                }
            }
        }

三.水仙花数

function shuixianhua() {
            var num = Number(prompt('请输入一个数字')); ///string- 数字
            var bai = parseInt(num / 100);
            var shi = parseInt(num / 10 % 10);
            var ge = parseInt(num % 10);
            // if (bai * bai * bai + shi * shi * shi + ge * ge * ge == num) {
            if (Math.pow(bai, 3) + Math.pow(shi, 3) + Math.pow(ge, 3) == num) {
                document.write(num + '是一个水仙花数');
            }
        }

三.1-100每个数的因子

 function yinzi() {
            for (var num = 1; num <= 100; num++) {
                document.writeln(num + '的因子有:');
                for (var i = 1; i <= num; i++) {
                    if (num % i == 0) {
                        document.writeln(i);
                    }
                }
                document.writeln("<br>");
            }
        }

四.1-100的完数

 function wanshu() {
            for (var num = 1; num <= 100; num++) {
                var sum = 0;
                for (var yz = 1; yz < num; yz++) {
                    if (num % yz == 0) {
                        sum += yz;
                    }
                }
                if (sum == num) {
                    document.writeln(num + '是一个完数');
                }
            }
        }

五.质数

for (var num = 2; num <= 100; num++) {
                var flag = true; //0代表是一个质数
                for (var i = 2; i < num; i++) { //1和本身
                    if (num % i == 0) {
                        // document.writeln('不是一个质数');
                        flag = false; //不是一个质数
                        break;
                    }
                }
                if (flag == true) {
                    document.writeln(num + '是一个质数');
                }
            }

六.丑数

 var num = Number(prompt('请输入一个数字'));
            while (num > 1) {
                if (num % 2 == 0) {
                    num /= 2;  //15
                } else if (num % 3 == 0) {
                    num /= 3;  //5
                } else if (num % 5 == 0) {
                    num /= 5;
                }
                else {
                    document.writeln('不是一个丑数');
                    break;
                }
            }
            if (num == 1) {
                document.writeln('是一个丑数');
            }

七.加密数字

请添加图片描述

function test2() {
            var num = 2548;
            var newNum = 0;
            var qian = parseInt((parseInt(num / 1000) + 5) % 10);
            var bai = parseInt((parseInt(num / 100 % 10) + 5) % 10);
            var shi = parseInt((parseInt(num / 10 % 10) + 5) % 10);
            var ge = parseInt((parseInt(num % 10) + 5) % 10);

            newNum = ge * 1000 + shi * 100 + bai * 10 + qian;
            document.writeln(newNum);
        }

八.猴子吃桃(190)

公园里有一些桃子,猴子每天吃掉一半以后扔掉一个,第6天的时候发现还剩下1个桃子,问开始有几个桃子?

function tz() {
            var tz = 1;
            for (var t = 1; t < 7; t++) {
                tz = (tz+1*2;
            }
            document.writeln(tz);
        }

公园里有200个桃子,猴子每天吃掉一半以后扔掉一个,问6天以后还剩余多少桃子?

var tao = 200;
        for (var i = 0; i < 6; i++) {
            tao = parseInt(tao / 2) - 1;
        }
        alert(tao);

九.小芳存零花钱(76)

小芳的妈妈每天给她2.5元钱,她都会存起来,但是,每当这一天是存钱的第5天或者5的倍数的话,她都会花去6元钱,请问,经过多少天,小芳才可以存到100元钱

function xiaofang() {
            //钱
            var money = 0;
            var tian = 0;
            while (true) {
                tian++;
                money += 2.5;
                if (tian % 5 == 0) {
                    money -= 6;
                }
                if (money == 100) {
                    break;
                }
            }
            document.writeln('第' + tian + '天攒了' + money + '钱');
        }

十.字符串反转

function test3() {
            var num = prompt('请输入内容');
            var str = '';
            for (var i = num.length - 1; i >= 0; i--) {
                str += num[i];
            }
            document.writeln(str);
        }

十一.兔子

在这里插入图片描述

 function tuzi() {
            var sum = 0; //兔子和
            var youtu = 1;
            var xiaotu = 0;
            var chengtu = 0;
            for (var yue = 1; yue <= 10; yue++) {
                if (yue == 1) {
                    xiaotu = 0;
                    chengtu = 0;
                    sum = 1;
                }
                else {
                    chengtu = xiaotu + chengtu;
                    xiaotu = youtu;
                    youtu = chengtu;
                    sum = chengtu + xiaotu + youtu;
                }
            }

            document.writeln('兔子总和是' + sum); //55
            document.writeln('成兔是' + chengtu); //21
            document.writeln('小兔是' + xiaotu); //13
            document.writeln('幼兔' + youtu);  //21
        }

十二.获取字符串中字符出现的次数

 function zfc() {
            var str = 'hello world';
            var num = 0; //l字符出现的次数
            var num2 = 0; //o字符出现的次数  2
            for (var i = 0; i < str.length; i++) {
                if (str[i] == 'l') {
                    num++;
                } else if (str[i] == 'o') {
                    num2++;
                }
            }
            document.writeln(num2); //2
            document.writeln(num); //3
        }

十三.平方回文数

在这里插入图片描述
在这里插入图片描述

function hw() {
            var n = prompt('输入一个范围');
            var count = 0;
            document.writeln(' <table style="border: 1px solid black;">');
            for (var a = 1; a <= n; a++) {
                // 把a倒着来,和原值判断
                var b = String(a); //'10' [0][1]
                var c = '';
                for (var i = b.length - 1; i >= 0; i--) {
                    c += b[i];
                }
                if (c == b) {
                    var fang = parseInt(Math.sqrt(c)); //开方后
                    if (fang * fang == c) {
                        document.writeln(' <tr> <td style="border: 1px solid black;">' + c + '</td></tr>');
                        count++;
                    }
                }
            }
            document.writeln(' </table>')
            document.writeln(count);
        }

十四.打印图形

在这里插入图片描述

function tuxing2() {
            for (var i = 1; i <= 4; i++) { //行
                for (var j = 4; j >= i; j--) {
                    document.writeln('*');
                }

                for (var k = 1; k <= i; k++) { //i=2 k=1,2 i=3 k=123
                    document.writeln(k);
                }

                for (var f = (i - 1); f >= 1; f--) {
                    document.writeln(f);
                }

                document.writeln('<br>');
            }
        }

十五.韩信点兵

韩信带兵不足百人,3人一行排列多一人,5人一行排列正好,7人一行排列少两人,求士兵的人数?

  for (var i = 1; i <= 100; i++) {
            if (i % 3 == 1 && i % 5 == 0 && i % 7 == 5) {
                document.writeln(i);
            }
        }

请添加图片描述

 for (var i = 1; i <= 1500; i++) {
            if (i % 3 == 2 && i % 5 == 4 && i % 7 == 6) {
                document.writeln(i);
            }
        }

图形打印-菱形

在这里插入图片描述

for (var i = 1; i <= 4; i++) {
            for (var j = 1; j <= 5; j++) {
                document.writeln('*');
            }
            document.writeln('<br>');
        }

在这里插入图片描述

for (var i = 1; i <= 4; i++) { // *  **
            for (var j = 1; j <= i; j++) {
                document.writeln('*');
            }
            document.writeln('<br>');
        }

在这里插入图片描述

for (var i = 1; i <= 4; i++) {
//将图形分为两部分,左边的空格和右边的星
            for (var j = 3; j >= i; j--) {
                document.writeln('&nbsp');
            }
            //这个用来打印星
            for (var j = 1; j <= 2 * i - 1; j++) {
                document.writeln('*');
            }
            document.writeln('<br>');
        }

在这里插入图片描述
在这里插入图片描述

//上半部分的三角
        for (var i = 1; i <= 4; i++) {
            //左边部分的空格
            for (var j = 4; j >= i; j--) {
                document.write('&nbsp');
            }
            //右边的星
            for (var k = 1; k <= 2 * i - 1; k++) {
                if (k == 1 || k == 2 * i - 1) {
                    document.write('*');
                } else {
                    document.write('&nbsp');
                }
            }
            document.write("<br>");
        }

        //下半部分的三角
        for (var i = 1; i <= 3; i++) {
            //左边的空格
            for (var j = 0; j <= i; j++) {
                document.write('&nbsp');
            }
            //右边的星
            for (var k = 5; k >= 2 * i - 1; k--) {
                if (k == 5 || k == 2 * i - 1) {
                    document.write('*');
                } else {
                    document.write('&nbsp');
                }

            }
            document.write("<br>");
        }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值