不二如是 发表于 2017-6-5 06:08:50

算法32 ◉‿◉ 一个 5 位数,判断它是不是回文数

本帖最后由 不二如是 于 2017-6-5 06:12 编辑

http://xxx.fishc.com/forum/201705/05/225545py2j222x5z6x55n2.png

按照提示,完成代码,秀秀你的编程能力!

不许看答案,否则打屁屁



程序分析:
12321 是回文数,个位与万位相同,十位与千位相同。   
通过循环,获得每位数值即可
       

源代码:
**** Hidden Message *****




○面试题索引贴●
如果喜欢,请订阅{:10_303:} :
HTML5 - 庖丁解牛 + JavaScript - 庖丁解牛

冬雪雪冬 发表于 2017-6-10 11:23:58

python
def pal(num):
    if str(num) == ''.join(reversed(str(num))):
      return True
    return False

dsa159245 发表于 2018-5-20 04:47:11

window.onload = function(){
                                var num = prompt('请输入一个五位数');
                                var arr = [];
                                if(num >99999){
                                        document.write('你输入的不是一个五位数');
                                }else{
                                arr.push(parseInt(num % 10));
                                arr.push(parseInt(num % 100 / 10));
                                arr.push(parseInt(num % 1000 / 100));
                                arr.push(parseInt(num % 10000 / 1000));
                                arr.push(parseInt(num / 10000));
                               
                                if(arr == arr && arr == arr){
                                        document.write(num+'是一个回文数');
                                }else{
                                        document.write(num+'不是一个回文数');
                                }
                               
                               
                                }
                               
                        };

凌乱大帅比 发表于 2018-10-16 19:21:37

var hui_num = function(val2){
        var val1 = val2.toString();        //转换为字符
        var val = val1.length;                //获取长度
        var n=0,n1=0;
        if(val%2 == 0){                        //若为偶数位执行
                for(var i=0;i<=val/2;i++){
                        if(i!=val1.charAt(val1.length-1)){        //第n位和第-n位比
                                console.log('No!');
                                break;
                        }else{n+=1}
                }
        }
        if(val%2 != 0){                        //若为奇数位执行
                for(var i=0;i<=(val-1)/2;i++){
                        if(i!=val1.charAt(val1.length-1)){
                                console.log('No!');
                                break;
                        }else{n1+=1}
                }
        }
        if(n==val/2 || n1==(val-1)/2+1){console.log("Yes")}        //通过对比匹配数位的量判断回文数
}
hui_num(123)

emm...........代码有点多了,但是结构清晰:
       把奇偶数的判断分开,最后以相对应数位的数字的个数判断是否为回文数

先就这样写吧,性能优化后面在想{:10_245:}

凌乱大帅比 发表于 2018-10-16 19:23:21

冬雪雪冬 发表于 2017-6-10 11:23
python

冬梅大佬真的优秀,每次都几行就能实现{:10_297:}

爱我彡别走 发表于 2018-11-12 22:08:49

恩恩

jack6666 发表于 2022-10-23 20:01:31

<script>
      x=prompt("请输入数字:");
      let b=[];
      for (const i of x) {
            b.push(i);
      }
      b=b.reverse().join("")
      if (b===x) {
            console.log("true")
      } else {
            console.log("false")
      }
    </script>
页: [1]
查看完整版本: 算法32 ◉‿◉ 一个 5 位数,判断它是不是回文数