2016.4.12【i码邦】每日一练——回文数

编程实现:下图问题。  不限形式,不限格局,百花齐放才是编程的春天!!


tu0412.png


给定一组数字,判断有几个回文数,并且打印输出。
数字:15348,25452,7894987,121,87646,909,9113521,11111,45,13131,7887,35788753。

 
我们只直播每日一练的编程实战,动手才是王道!
每日一练直播群号:476036218
 

QQ截图20160406102536.png

 

--来自网页客户端
已邀请:

a513470086 - G i码邦(爱码邦) --没理由!

赞同来自: admin

import java.util.Scanner;
public class Test014
{
    public static void main(String[] args)
    {
        //"回文数"是一种数字.如:1112111, 这个数字正读是1112111,倒读也是1112111,正读倒读一样,所以这个数字就是回文数. 
        //15348,25452,7894987,121,87646,909,9113521,111111,45,13131,7887,35788753 判断回文数
        Scanner scanner = new Scanner (System.in);
        System.out.println("您要判断的数字是?");
        int x=0;
        x=scanner.nextInt();
        int dig[]=new int[8];
        int n=0;
        while(x!=0)
        {
            dig[n++] = x;
            x/=10;
        }
        int flag=1;
        for(int i=0;i<n/2;i++)
        {
            if(dig[i]!=dig[n-1-i])
            { flag=0;break; }
        }
        if(flag==1)
            System.out.println("Yes, this is a palindrome\n");
        else        
            System.out.println("No, this is not a palindrome\n");
    }
}
 
 

--来自网页客户端

tuogoudeyu - 此人很懒

赞同来自: admin

package ima.day0412;
public class ReverseNum {
private String str;
public boolean check(int num){
char chr1,chr2;
str = String.valueOf(num);//将int型转换为String型
for(int i= 0 ; i<str.length()/2;i++){
//循环判断前后字符是否相等
chr1 = str.charAt(i);
chr2 = str.charAt(str.length()-1-i);
if(chr1!=chr2){//若不等则返回false
return false;
}
}
return true;//若都相等则返回true
}

public static void main(String[] args) {
int [] num = {
15348,25452,7894987,121,87646,909,
9113521,11111,45,13131,7887,35788753
};
ReverseNum rn= new ReverseNum();//创建自定义类对象
for(int i=0;i<num.length;i++){
if(rn.check(num[i])){//返回true则是回文
System.out.println(num[i]+"是回文");
}
}
}
}

--来自移动客户端

裸奔代码人 -

赞同来自: admin

image.png


--来自移动客户端

afangxin

赞同来自: admin

输入的是字符串。然后利用字符串的charAr()这个方法,倒序的输出新的字符串,然后判断新旧字符串是否相等。

--来自移动客户端

azhaoyueb

赞同来自:

新手上路

--来自移动客户端

Be社团

赞同来自:

image.png


最简单的方法,可以参考哦

--来自移动客户端

Be社团

赞同来自:

附代码
public static void main(String[] args) {
String number="15348,25452,7894987,121,87646,909,9113521,11111,45,13131,7887,35788753";
String[] n=number.split(",");
for(int i=0;i<n.length;i++){
StringBuffer buf=new StringBuffer(n[i]);
if(buf.reverse().toString().equals(n[i].toString())){
System.out.println(n[i]+"是回文数");
}
}
}

--来自移动客户端

admin

赞同来自:

希望看家大家多种解决方法!!!

--来自网页客户端

tuogoudeyu - 此人很懒

赞同来自:

image.png



public class imaDay0412 {
public static void main(String[] args) {
int [] num = {
15348,25452,7894987,123,87646,99,
9113521,11111,45,13131,7887,35788753
};
String [] str = new String[num.length];
//新建字符串数组存储对应数字的字符串
StringBuilder sb;
//将字符串转换为StringBuilder对象,调用reverse方法
String temp;//保存转换后的字符串
for(int i =0 ; i<num.length;i++){
str[i]=String.valueOf(num[i]);
//将整数格式转换为字符串
sb = new StringBuilder(str[i]);
//将字符串类型转换为StringBuilder
temp=sb.reverse().toString();
//reverse()将字符串首末对应的位置的字符调换
//toString()将StringBuileder对象转为String类型
if(str[i].equals(temp)){
//System.out.println(str[i]+","+temp);
System.out.println(str[i]+"是回文");
}
}
}
}

--来自移动客户端

wjnily - 学海无涯苦作舟,书山有路勤为径

赞同来自:

image.png



public class wjnily {
public static void main(String[] args) {
String str=new String("15348,25452,7894987,121,87646,909,9113521,11111,45,13131,7887,35788753");
StringBuffer str1=new StringBuffer(str);
str1.reverse();
int count=0;
for(int i=0;i<str.length();i++){
if(str1.charAt(i)==str.charAt(i)){
System.out.println("第"+(i)+"个是回文数");
count++;
}
//System.out.println();
}
System.out.println("总共有回文数"+count+"个");
}


}

--来自移动客户端

wjnily - 学海无涯苦作舟,书山有路勤为径

赞同来自:

image.png


刚刚那个有问题

这个才正确,虽然不完美
public class wjnily {
public static void main(String[] args) {
String str=new String("15348,25452,7894987,121,87646,909,9113521,11111,45,13131,7887,35788753");
StringBuffer str1=new StringBuffer(str);
str1.reverse();
int count=0;

for(int i=0;i<str.length();i++){
if(str1.charAt(i)==str.charAt(i)){


count++;
}

}
System.out.println("总共有回文数"+count+"个");
}
}

--来自移动客户端

ziyou8513 - 在自学Java的道路上缓慢爬行ing

赞同来自:

//API方法
    /*public static void main(String[] args) {
        String[] str ={"15348","25452","7894987","121","87646","909","9113521","11111","45","13131","7887","35788753"};
        int count=0;
        for(int i=0;i<str.length;i++){
            if(str[i].equals(new StringBuffer(str[i]).reverse().toString())){
                System.out.println(str[i]+"是回文数");
                count++;
            }
        }
        System.out.println("回文数的个数是:"+count);
    }*/
    
    //notAPI方法
    public static void main(String[] args){
        String[] str1 ={"15348","25452","7894987","121","87646","909","9113521","11111","45","13131","7887","35788753"};
        String[] str2 = new String[str1.length];
        int count=0;
        //将数组中的元素依次倒序并保存到str2数组中
        for(int i=0;i<str1.length;i++){
            str2[i]="";//初始化str2中的元素
            char[] c = str1[i].toCharArray();//将字符串str1[i]转成字符数组
            for(int j=c.length-1;j>=0;j--){
                str2[i]+=c[j];//将转化后的字符数组倒序组成字符串,并赋值给str2[i]
            }
        //下面判断是否是回文数
            char[] c2 = str2[i].toCharArray();
            boolean flag=true;
            for(int k=0;k<c.length;k++){
                flag=false;
                if(c[k] == c2[k]){
                    flag=true;
                }
            }
            if(flag){
                count++;
                System.out.println(str1[i]+"是回文数");
            }
        }
        System.out.println("回文数的个数是:"+count);
    }

--来自网页客户端

microzone

赞同来自:

/**
 *判断回文数
 * @author Administrator
 *
 */
public class Palindromic {
    public void isPalindromic(int num){
    String s=String.valueOf(num);
    char front;
    char rear;
    int count=0;
    int is=0;
    int not=0;
    for(int i=0;i<s.length()/2;i++){
        front=s.charAt(i);
        rear=s.charAt(s.length()-1-i);
        if(front==rear){
            count++;
        }
    } 
    if(count==s.length()/2)
        System.out.println(num+"是回文数");
    else System.out.println(num+"不是回文数");
    }
    public static void main(String[] args) {
        Palindromic p=new Palindromic();
        p.isPalindromic(15348);
        p.isPalindromic(25452);
        p.isPalindromic(7894987);
        p.isPalindromic(121);
        p.isPalindromic(909);
        p.isPalindromic(9113521);
        p.isPalindromic(11111);
        p.isPalindromic(45);
        p.isPalindromic(13131);
        p.isPalindromic(7887);
        p.isPalindromic(35788753);
    }
}
    

--来自网页客户端

admin

赞同来自: 夜很美为谁醉

/*
 * 给定一组数字,判断有几个回文数,并且打印输出。
 * 数字:15348,25452,7894987,121,87646,909,9113521,11111,45,13131,7887,35788753。
 * */

public class Tst0412 {
    
        
    public static void main(String[] args){
        String[] huiwen= {"15348","25452","7894987","121","87646",
                "909","9113521","11111","45","13131","7887","35788753"};
        int count =0;
        for(int i=0; i<huiwen.length; i++){
            String tmp = null;
            
            tmp = ifHuiwen(huiwen[i]);
            if(tmp.equals(huiwen[i])){                
                System.out.println("回文数是"+tmp);
                count++;
            }
        }
        System.out.println("回文数量"+count);
    }

    private static String ifHuiwen(String str) {
        // TODO Auto-generated method stub
        String tmp = "";
        for(int j=str.length()-1; j>-1; j--){
            tmp = tmp+ str.charAt(j);
        }
        return tmp;
    }
}

--来自网页客户端

admin

赞同来自:

Screenshot_2016-04-13-09-47-37.png


Screenshot_2016-04-13-09-47-59.png


--来自移动客户端

afangxin

赞同来自:

符图

--来自移动客户端

afangxin

赞同来自:

IMGTMP_20160413_115749.jpg


--来自移动客户端

afangxin

赞同来自:

发现发送图片时,如果是选择本地照片时,上传不了,需要现拍的图片才可以上传成功

--来自移动客户端

飘渺雨U

赞同来自:

123.png

 

--来自网页客户端

要回复问题请先登录注册

Template error, template file not found