【练习】JavaScript循环练习求1~9999之间的回文数

求1~9999之间的整数,判断是否文回文数,如果是则输出并且输出这个数的位数

<script type="text/javascript">
/*先整理思路、、、、、    
var n = 3223;   只要前后颠倒相等就是回文数
整数的位数: n.length
for(var i = n.length - 1; i <= o ; i--){
    m.push(n[i]);
}
    document.write(m);    
    */
    
function huiwen(){
    var num = prompt("请输入一个整数");
    document.write("你输入的数是:" + num + "<br>");
    var n ="";  //定义颠倒后的字符串 
    if(num<1){
       document.write("不要输入负数");
       }else if (num >= 1 &&num <10){
            document.write("这是一个回文数" + "<br>");
            document.write("这个回文数的位数是:1");
       }
        else{
          for(var i = num.length ; i >= 0  ; i--){ 
              var num1 = num.charAt(i);     //charAt等同于数组的下标,这样通过for循环就可以把输入的整数顺序颠倒
              n = n.concat(num1);            // 但是num1并不是一个整数,也不是一个字符串,没法跟num比较,用concat()将它们连接成一个字符串
            }
             document.write( n + ":");      //得到的回文数输出一下
             if( n == num){
               document.write("这是一个回文数" + "<br>");
               document.write("这个回文数的位数是:" + n.length)
            }else{
               document.write('这不是一个回文数');
            }
       }
}
</script>
</head>

<body>
<input type="button" value="开始" onClick="huiwen()">
</body>

 第二种

function one(){
    for(var i = 1; i<10000;i++){
    var num = i + ""; //转成字符串
    var num1 = "";
    //"1234"  =>  ["1","2","3","4"]  => ["4","3","2","1"]
    for(var j = num.length-1; j>=0; j--){
        num1 = num1 + num[j];
    }
    if(+num == +num1){
        document.write(num + "是回文数" + num.length + "<br>");
    }else{
        //document.write(num + "不是回文数");
    }
}
}

 

posted @ 2017-10-12 21:09  沃泽法克  阅读(806)  评论(0编辑  收藏  举报