【Javascript Day5】for循环及典型案例

打印 上一主题 下一主题

主题 998|帖子 998|积分 2994

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
 for 循环


        // 语法:  for( 开始 ; 结束 ; 步长  ){ 循环体 }
        //        for( var i = 循环初始值 ; i的循环范围 ; i的增加或减少规则  ){ 循环体 }
        // 死循环
        // for(;;){
        //     console.log("for循环");
        // }
        // 循环打印10次
        for(var i=0; i<10 ; i++){
            console.log("for循环");
        }
        // 计算 1~100的累加(求和)效果
        var sum = 0;
        for (var i = 1; i <= 100; i++) {
            // sum = sum + i;
            sum += i;
        }
        console.log(sum);
        // 算法:将代码通过固定的逻辑大概公式举行简化,提供步伐的运行服从
        // 连续数值相加公式 : (首位+末了)*(位数/2)
        var sum1 = (1+100)*(100/2);
        console.log(sum1);
多重循环:循环嵌套



        //         内层循环的循环次数 = 自身循环的次数*外层循环次数
        // for (var i = 0; i < 10; i++) {
        //     for (var j = 0; j < 10; j++) {
        //         console.log(i,j);
        //     }
        // }

训练

1.不限位数的回文数

  1.         var flag = true; // 默认认为是回文数
  2.         // 不限位数的回文数
  3.         var num = 1234321;
  4.         // length是字符串的功能,所有先转换为字符串,再获取
  5.         var size = (num+"").length;
  6.         // 计算出需要判断次数
  7.         var end = parseInt(size/2);
  8.         for (var i = 1; i <= end; i++) {
  9.             // console.log( num%10 ); // 10**1
  10.             // console.log( num%100 ); // 10**2
  11.             // console.log( num%1000 ); // 10**3
  12.             var a = num%(10**i); // 32
  13.             for (var j = 1; j < i; j++) {
  14.                 a = parseInt(a / 10);
  15.             }
  16.             
  17.             // console.log( parseInt(num/1000000) ); // 10 ** (7-1)
  18.             // console.log( parseInt(num/100000) ); // 10 ** (7-2)
  19.             // console.log( parseInt(num/10000) ); // 10 ** (7-3)
  20.             var b = parseInt( num / ( 10**(size-i) ) );
  21.             b = b % 10;
  22.             console.log(a,b,a==b);
  23.             if(a!=b){
  24.                 flag = false;
  25.             }
  26.         }
  27.         console.log(num, flag?"是回文数":"不是回文数" );
复制代码
2.入职薪水10K,每年涨幅5%,50年后工资多少?

  1. <script>
  2.         var sum =10000;
  3.         for( var i = 1 ; i <= 50 ;i++){
  4.             sum *= 1.05;
  5.         }
  6.         console.log(sum)
  7.     </script>
复制代码
3.矩形*号

  1. <script>
  2.         var i;
  3.         var sum = "";
  4.         for( i=1 ; i<= 18; i++){
  5.             sum += "*";
  6.             if(i % 6 == 0){
  7.                 sum += "\n";
  8.             }
  9.         }
  10.         console.log(sum);
  11.     </script>
复制代码
效果


4.九九乘法表

  1. <script>
  2.     var i = 1 ;
  3.     var j ;
  4.     var sum ="";
  5.     for(j =1 ;j <= i; j++){
  6.         for (i = 1; i <= j; i++) {
  7.             sum += (i + "*" + j + "=" + (i*j) + " ");
  8.         }
  9.         sum += "\n";
  10.         if(j == 9){
  11.             break;
  12.         }
  13.     }
  14.     console.log(sum);
  15. </script>
复制代码
效果

5.三位水仙花数

  1. var num = prompt("请输入一个数");
  2.     var a = (num % 100);
  3.     var b = (num - a);
  4.     var c = (b / 100);
  5.     var d = parseInt((num % 100)/10);
  6.     if(isNaN(num)){
  7.         alert(`${num}不是数值!`)
  8.     }
  9.     else if(num == null||num==''){
  10.         alert("用户未输入")   
  11.     }
  12.     else if(num <100 || num >=1000){
  13.         alert("只能输入三位数,请重新输入!")
  14.     }
  15.     else if((((num %100) % 10) % 1) != 0){
  16.         alert("不能输入小数,请重新输入!")
  17.     }
  18.     else if((c**3 +(a % 10)**3 + d**3) ==  num*1){
  19.         alert(`${num}是水仙花数`)
  20.     }
  21.     else if((c**3 +(a % 10)**3 + d**3) !=  num*1){
  22.         alert(`${num}不是水仙花数`)
  23.     }
复制代码


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

忿忿的泥巴坨

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表