重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
public static boolean check(int k){
目前创新互联已为1000+的企业提供了网站建设、域名、雅安服务器托管、成都网站托管、企业网站设计、泉港网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。
String str = ""+k;
int strLen = str.length();
int point = strLen;
int oldLen = 0,newLen = 0;
char first = 'a',end = 'a';
oldLen = (strLen+1)/2;
if (str == "")
{
System.out.println("数值为空");
return false;
}
if(str.length() !=4){
System.out.println("不是四位数");
return false;
}
for (int i=0;ioldLen;i++)
{
first = str.charAt(i);
end = str.charAt(point-1);
point--;
if (first == end)
{
newLen++;
}
}
if (oldLen == newLen)
{
return true;
}else {
return false;
}
}
public static void main(String[] args) {
for(int k = 1000;k9999;k++){
boolean is = check(k);
if (is)
{
System.out.println(k+"是回文数");
}else {
// System.out.println(k+"不是回文数");
}
}
}
1001是回文数
1111是回文数
1221是回文数
1331是回文数
1441是回文数
1551是回文数
1661是回文数
1771是回文数
1881是回文数
1991是回文数
2002是回文数
2112是回文数
2222是回文数
2332是回文数
2442是回文数
2552是回文数
2662是回文数
2772是回文数
2882是回文数
2992是回文数
3003是回文数
3113是回文数
3223是回文数
3333是回文数
3443是回文数
3553是回文数
3663是回文数
3773是回文数
3883是回文数
3993是回文数
4004是回文数
4114是回文数
4224是回文数
4334是回文数
4444是回文数
4554是回文数
4664是回文数
4774是回文数
4884是回文数
4994是回文数
5005是回文数
5115是回文数
5225是回文数
5335是回文数
5445是回文数
5555是回文数
5665是回文数
5775是回文数
5885是回文数
5995是回文数
6006是回文数
6116是回文数
6226是回文数
6336是回文数
6446是回文数
6556是回文数
6666是回文数
6776是回文数
6886是回文数
6996是回文数
7007是回文数
7117是回文数
7227是回文数
7337是回文数
7447是回文数
7557是回文数
7667是回文数
7777是回文数
7887是回文数
7997是回文数
8008是回文数
8118是回文数
8228是回文数
8338是回文数
8448是回文数
8558是回文数
8668是回文数
8778是回文数
8888是回文数
8998是回文数
9009是回文数
9119是回文数
9229是回文数
9339是回文数
9449是回文数
9559是回文数
9669是回文数
9779是回文数
9889是回文数
哪不懂在问我吧
按照你的要求编写的,输出从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都是回文数
1、可以把这个5个数分解存在一个数组里面
2、通过循环判断是否相等,循序次数就是长度整除2
在设置一个状态标记,为TRUE就是回数,为false就不是,在循环中,一旦不相等就把状态标记改为false,终止循环,当循环结束时,状态标记还是为true就是回数。
import java.util.Scanner;
/*
* 第三章 java运算符
* 课后作业 判断回文数
* 5.2.1 由用户输入一个整数,判断是不是回文数(完全对称的数),如果是 打印 true, 否则打印false
* 提示:本题仅要求判断一个五位数是不是回文数
* 通过除法运算和求模运算符,可以分别求出一个五位数的每位上的值,然后进行比较。
* Palindrome 回文数
*/
public class zuoye0352 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("输入要判断是否为回文数的数值:");
int i=sc.nextInt();
String str=""+i;
if(str.length()%2==0){
System.out.println(i+"不是回文数!"+str.length()%2);
}
//判断反转后 值是否相等 从而
else if(i==fanzhuan(i)){
System.out.println(i+"是回文数~");
}
else
System.out.println(i+"不是回文数!");
}
private static int fanzhuan(int input) {
int output = 0;//
while(input0){
//output= output*10;
output=output*10+input%10;
input=input/10;
}
return output;
}
}