鱼C论坛

 找回密码
 立即注册
查看: 2769|回复: 7

[每日一练] 算法32 ◉‿◉ 一个 5 位数,判断它是不是回文数

[复制链接]
发表于 2017-6-5 06:08:50 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

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

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


                               
登录/注册后可看大图


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

不许看答案,否则打屁屁





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


源代码:
游客,如果您要查看本帖隐藏内容请回复

6月-05-2017 06-12-16.gif






如果喜欢,请订阅
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-6-10 11:23:58 | 显示全部楼层
python
  1. def pal(num):
  2.     if str(num) == ''.join(reversed(str(num))):
  3.         return True
  4.     return False
复制代码

点评

我很赞同!: 5.0
我很赞同!: 5
  发表于 2017-6-10 11:37
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-5-20 04:47:11 | 显示全部楼层
  1. window.onload = function(){
  2.                                 var num = prompt('请输入一个五位数');
  3.                                 var arr = [];
  4.                                 if(num >99999){
  5.                                         document.write('你输入的不是一个五位数');
  6.                                 }else{
  7.                                 arr.push(parseInt(num % 10));
  8.                                 arr.push(parseInt(num % 100 / 10));
  9.                                 arr.push(parseInt(num % 1000 / 100));
  10.                                 arr.push(parseInt(num % 10000 / 1000));
  11.                                 arr.push(parseInt(num / 10000));
  12.                                
  13.                                 if(arr[0] == arr[4] && arr[1] == arr[3]){
  14.                                         document.write(num+'是一个回文数');
  15.                                 }else{
  16.                                         document.write(num+'不是一个回文数');
  17.                                 }
  18.                                
  19.                                
  20.                                 }
  21.                                
  22.                         };
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-10-16 19:21:37 | 显示全部楼层
  1. var hui_num = function(val2){
  2.         var val1 = val2.toString();        //转换为字符
  3.         var val = val1.length;                //获取长度
  4.         var n=0,n1=0;
  5.         if(val%2 == 0){                        //若为偶数位执行
  6.                 for(var i=0;i<=val/2;i++){
  7.                         if(i!=val1.charAt(val1.length-1)){        //第n位和第-n位比
  8.                                 console.log('No!');
  9.                                 break;
  10.                         }else{n+=1}
  11.                 }
  12.         }
  13.         if(val%2 != 0){                        //若为奇数位执行
  14.                 for(var i=0;i<=(val-1)/2;i++){
  15.                         if(i!=val1.charAt(val1.length-1)){
  16.                                 console.log('No!');
  17.                                 break;
  18.                         }else{n1+=1}
  19.                 }
  20.         }
  21.         if(n==val/2 || n1==(val-1)/2+1){console.log("Yes")}        //通过对比匹配数位的量判断回文数
  22. }
  23. hui_num(123)
复制代码


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

先就这样写吧,性能优化后面在想
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-10-16 19:23:21 | 显示全部楼层

冬梅大佬真的优秀,每次都几行就能实现
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-11-12 22:08:49 | 显示全部楼层
恩恩
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 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>
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-26 14:24

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表