网站建设资讯

NEWS

网站建设资讯

java回文数字代码 回文数字的程序编码

999-10000回文数java怎么写for

for(inti=10;i

创新互联建站是一家专注于网站建设、成都做网站与策划设计,法库网站建设哪家好?创新互联建站做网站,专注于网站建设10余年,网设计领域的专业建站公司;建站业务涵盖:法库等地区。法库做网站价格咨询:18982081108

回文数"是一种数字。如:98789, 这个数字正读是98789,倒读也是98789,正读倒读一样,所以这个数字就是回文数。

定义:一个回文数,它同时还是某一个数的平方,这样的数字叫做平方回数。例如:121。 100 以上至1000以内的平方回数只有3个,分别是:121、484、676。 其中,121是11的平方。

求java大神帮忙写个代码,判断一个整数是否是回文数字,麻烦加下注释

public static void main(String[] args) {

int c = 475898574;  

String a = c+""; //将整数变成字符串

String b = new StringBuffer(a).reverse().toString();  //用reverse(),将字符串反转

if (a.equals(b)) { //对比

  System.out.println("是回文数");

}else{

  System.out.println("不是回文数");

}

}

望采纳!

java编写回文数

按照你的要求编写的,输出从0到max中用二进制表示和十进制表示都是回文数的Java程序如下:

import java.util.Scanner;

public class CCF {

public static void main(String[] args) {

Scanner sc=new Scanner(System.in);

System.out.print("请输入一个整数:"); 

int max=sc.nextInt();

for(int i=0;i=max;i++){

String num = String.valueOf(i); 

String num2=Integer.toBinaryString(i);

String reversenum=new StringBuffer(num).reverse().toString();

String reversenum2=new StringBuffer(num2).reverse().toString();

if(reversenum.equals(num)  reversenum2.equals(num2)){

System.out.println(i+"用二进制表示"+num2+"和十进制表示"+i+"都是回文数"); 

}

}

}

}

运行结果:

请输入一个整数:1000

0用二进制表示0和十进制表示0都是回文数

1用二进制表示1和十进制表示1都是回文数

3用二进制表示11和十进制表示3都是回文数

5用二进制表示101和十进制表示5都是回文数

7用二进制表示111和十进制表示7都是回文数

9用二进制表示1001和十进制表示9都是回文数

33用二进制表示100001和十进制表示33都是回文数

99用二进制表示1100011和十进制表示99都是回文数

313用二进制表示100111001和十进制表示313都是回文数

585用二进制表示1001001001和十进制表示585都是回文数

717用二进制表示1011001101和十进制表示717都是回文数

java回文数 代码修改

package JOptionPane;

import javax.swing.JOptionPane;

/**

* @author songml

*

*/

public class huiwen1 {

/**

* @param args

*/

public static void main(String[] args) {

//bFlg为true的时候,显示对话框

//bFlg为false的时候,不显示对话框,程序结束

boolean bFlg = true;

while (bFlg) {

String inputValue = JOptionPane.showInputDialog("请输入一个五位整数");

//什么都没有输入的时候的处理

if ("".equals(inputValue) ){inputValue ="0";}

//点击"取消"时候的处理

if (null == inputValue ) {bFlg = false;continue;}

//五位数判断

if (inputValue.length() !=5) {

JOptionPane.showMessageDialog(null, "请输入一个五位数");

//跳出本次(上面的那个)while,目的是不运行下面的回文数判断

continue;

}

long inputValueLong = Long.parseLong(inputValue);

long temp = inputValueLong;

long reverseLong = 0L;

//回文数判断

while (inputValueLong != 0) {

reverseLong = reverseLong * 10 + inputValueLong % 10;

inputValueLong = inputValueLong / 10;

}

if (reverseLong == temp) {

JOptionPane.showMessageDialog(null, "你输入的是回文数");

bFlg =false;

} else {

JOptionPane.showMessageDialog(null, "你输入的不是回文数");

}

}

System.exit(0);

}

}

JAVA怎么编写一个回文数代码

public static boolean isPalindrome(int x) {

if (x0) { return false; }

int len=1;

for (len=1; (x/len) = 10; len*=10 );

while (x != 0 ) {

int left = x / len;

int right = x % 10;

if(left!=right){

return false;

}

x = (x%len) / 10;

len /= 100;

}

return true;

}

【JAVA】:回文数字

import java.util.Scanner;

public class Main{

static final int start = 10001;

static final int end = 999999;

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

int t;

StringBuilder sb;

int sum;

boolean su;

while (sc.hasNextInt()) {

su = false;

t = sc.nextInt();

for (int i = start; i = end; i++) {

sum = 0;

sb = new StringBuilder(String.valueOf(i));

if (sb.toString().equals(sb.reverse().toString())) {

for (int j = 0; j  sb.length(); ++j) {

sum += sb.charAt(j) - '0';

}

if (sum == t) {

su = true;

System.out.println(i);

}

}

}

if (!su) {

System.out.println(-1);

}

}

sc.close();

}

}

如果不能AC,优化一下: 对每个i,转为(字符或整数)数组,对数组从索引0到长度的一半遍历,判断对称位置是否相同,且各位数字和是否符合要求.


当前题目:java回文数字代码 回文数字的程序编码
网站URL:http://cdweb.net/article/docgpih.html