回文数判断

import java.util.Scanner; //导入Scanner类
public class PalindromicNumber {   //定义PalindromicNumber类
	static int num;               //定义一个静态整型变量num
	public static void main(String args[])//主方法
	{
		Scanner scan=new Scanner(System.in);//定义Scanner的一个对象scan
		String str;           //定义字符串str    
		char ch='y';	      //初始化字符ch	
		while(ch=='y'){       //根据用户需求判断是否进行循环
		System.out.println("Please enter a positive integer number greater than 99");//提示用户输入一个大于99的整数
		str=scan.nextLine();    //以字符串的形式读取用户输入的内容
		boolean ex=true;        //初始化布尔变量ex为true
		try {		            //异常判断
   	        num=Integer.valueOf(str);//把字符串强制转换为数字
   	        if(num<100)            //判断输入数字是否小于100
 			   throw new Exception(num+" is less than 100  ");//若小于100,则抛出异常
   	    }
		catch (Exception e){               //捕获异常
	   	    System.out.print(e.toString());   //提升造成异常的原因
	   	    System.out.println("***Illegal input***");
            ex=false;    //若出现异常,ex的值为false,后续的相关输出操作跳过
	   	}
		int size=str.length();//size为输入数字的长度
		boolean flag=true;
		for(int i=0;i<size/2;i++)//若size为奇数,最中间数字忽略  
		{
			if(str.charAt(i)!=str.charAt(size-i-1))//左边数字与与其对称的右边数字比较是否相等
				flag=false;
		}
		if(ex){                       //布尔变量ex来决定是否输出以下内容
			if(flag)
			System.out.println(str+" is a palindromic number");//该数字是回文数
		 else 
			System.out.println(str+" is not a palindromic number");//该数字不是回文数
		}
				
		System.out.println("If you want to continue test,please enter character 'y'," +   //提示用户是否再次输入
					                                       "or enter other character to exit");
			String s=scan.nextLine();//输入字符来判断是否进行测试
			ch=s.charAt(0);//将输入字符赋给ch
			
		}
		System.out.println("Exit the program");//退出程序		
	}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值