for循环的一些简单小练习2

7、1-100之间的质数

    质数又称为素数,是一个大于1的自然数,

    除了1和它自身外,不能被其他自然数整除的数叫做质数;否则称为合数。

var num = prompt("请输入数字:");

      if (num <= 1) {

        alert("该值不合法!");

      } else {

        //创建一个变量来保存当前数的状态,默认当前的num是质数

        var flag = true;

        //判断num是否是质数

        for (var i = 2; i < num; i++) {

          //获取2-num之间的数字

          //判断num是否能被i整除

          if (num % i == 0) {

            /* 判断一个人是否健康,所有的科室都要查,都是健康的,比较麻烦,

                但是如果查到一个科不健康,就可以判定他不是健康的,后面的就不用查了,比较方便

                反着证明

            */

            //如果num被i整除,则说明num一定不是质数

            flag = false;

            console.log(i);

            break; //如果不加break,它会一直循环到结束,加了只要符合就停止循环,代码效率提升

          }

        }

        // flag告诉我,是不是质数

        if (flag) {

          alert(num + "是质数");

        } else {

          alert(num + "不是质数");

        }

      }

8、输出1000以内的水仙花数,

例子:如果一个三位数abc=a *a *a+b * b* b+c* c* c则该数字是一个水仙花数

步骤:

      1:循环打出三位数

      2:算出百位数,十位数,个位数字

      3:判断条件百十个位3次幂相加等于i

      4:打出符合条件i

for (var i = 100; i < 1000; i++) {

        //获取所有的三位数

        //获取百位上的数字

        var bai = parseInt(i / 100);

        //获取十位上的数字

        var shi = parseInt((i - bai * 100) / 10);

        //获取个位上的数字

        var ge = i % 10;

        //判断i是否是水仙花数

        if (bai * bai * bai + shi * shi * shi + ge * ge * ge == i) {

          console.log("水仙花数" + i);

        }

      }

11:打印1-100 所有的数,除了10,20,30,40,50,60,70,80,90,100。

for (var i = 1; i <= 100; i++) {

        if (i % 10 == 0) {

          continue;

        }

        console.log(i);

      }

12:接收用户输入的用户名和密码,若用户名为 “admin” ,且密码为 “123456” ,

    则提示用户登录成功!  否则,让用户一直输入。

var username = "";

      var password = "";

      while (true) {

        username = prompt("请输入用户名");

        password = prompt("请输入密码");

        if (username == "admin" && password == 123456) {

          alert("用户登录成功");

          break;

        }

      }

13:控制台接收两个数,打印出几行几列的*;

var row = +prompt("请输入打印行数");

      var clo = +prompt("请输入打印列数");

      var str = "";

      for (var i = 0; i < row; i++) {

        for (var j = 0; j < clo; j++) {

          str = str + "*";

        }

        str = str + "\n";

      }

      console.log(str);

14:简易ATM

    题目描述:里面现存有 100 块钱。

    如果存钱,就用输入钱数加上先存的钱数, 之后弹出显示余额提示框

    如果取钱,就减去取的钱数,之后弹出显示余额提示框

    如果显示余额,就输出余额

    如果退出,弹出退出信息提示框

var money = 100;

      do {

        var step = prompt("请输入你的操作" + "\n1.存钱" + "\n2.取钱" + "\n3.显示余额" + "\n4.退出程序");

        if (step == 1) {

          var add = +prompt("请输入你要存入的金额");

          if (add < 0 || isNaN(add)) {

            alert("非法输入");

            continue;

          } else {

            money += add;

            alert("你的余额是:" + money);

          }

        } else if (step == 2) {

          var reduce = +prompt("你要取款多少钱");

          if (reduce < 0 || isNaN(reduce)) {

            alert("非法输入");

            continue;

          } else if (reduce > money) {

            alert("余额不足");

            continue;

          } else {

            money -= reduce;

            alert("你的余额是:" + money);

          }

        } else if (step == 3) {

          alert("你的余额是:" + money);

        } else if (step == 4) {

          alert("退出登录");

          break;

        } else {

          alert("输入有误");

        }

      } while (step != 4);

15:简易计算器
题目描述:用户在弹出的输入框中选择要做的运算
用户选择后弹出两个输入框,让用户输入数据
根据用户选择的操作和输入的数据,计算出最后结果并弹出提示框显示结果
操作界面如下:

do {

        var step = +prompt("欢迎使用简易计算机" + "\n 1.加法运算" + "\n 2.减法运算" + "\n 3.乘法运算" + "\n 4.除法运算" + "\n 5.退出" + "\n 请输入你的选项");

        if (step == 1) {

          var num1 = +prompt("请输入第一个数字");

          var num2 = +prompt("请输入第二个数字");

          if (isNaN(num1) || isNaN(num2)) {

            alert("请输入正确的数字");

          } else {

            alert(num1 + num2);

          }

        } else if (step == 2) {

          var num1 = +prompt("请输入第一个数字");

          var num2 = +prompt("请输入第二个数字");

          if (isNaN(num1) || isNaN(num2)) {

            alert("请输入正确的数字");

          } else {

            alert(num1 - num2);

          }

        } else if (step == 3) {

          var num1 = +prompt("请输入第一个数字");

          var num2 = +prompt("请输入第二个数字");

          if (isNaN(num1) || isNaN(num2)) {

            alert("请输入正确的数字");

          } else {

            alert(num1 * num2);

          }

        } else if (step == 4) {

          var num1 = +prompt("请输入第一个数字");

          var num2 = +prompt("请输入第二个数字");

          if (isNaN(num1) || isNaN(num2)) {

            alert("请输入正确的数字");

          } else {

            alert(num1 / num2);

          }

        } else if (step == 5) {

          break;

        } else {

          alert("非法输入");

        }

      } while (step != 5);

  • 37
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值