2. 编写一个Java应用程序,用户从键盘输入一个1~9999之间的数,程序将判断这个数是几位数,并判断这个数是否是回文数。回文数是指将该数含有的数字逆序排列后得到的数和原数相同,例如12121、32
2012-09-14 23:57
1661 查看
import javax.swing.JOptionPane;
public class TestNumber
{
public static void main(String args[])
{
loopNumber();
}
static void loopNumber(){
int number=0,d5,d4,d3,d2,d1;
String str=JOptionPane.showInputDialog("输入一个1至99999之间的数");
number=Integer.parseInt(str);
if(number>=1&&number<100000) //判断number在1至99999之间的条件
{
d5=number/10000 ; //计算number的最高位(万位)d5
d4=(number-d5*10000)/1000; //计算number的千位d4
d3=number%1000/100; //计算number的百位d3
d2=number%100/10;
d1=number%10;
if(d5!=0) //判断number是5位数的条件
{
System.out.println(number+"是5位数");
if(d5==d1&&d4==d2) //判断number是回文数的条件
{
System.out.println(number+"是回文数");
}
else
{
System.out.println(number+"不是回文数");
}
}
else if(d4!=0) //判断number是4位数的条件
{
System.out.println(number+"是4位数");
if(d4==d1&&d3==d2) //判断number是回文数的条件码
{
System.out.println(number+"是回文数");
}
else
{
System.out.println(number+"不是回文数");
}
}
else if(d3!=0) //判断number是3位数的条件
{
System.out.println(number+"是3位数");
if(d3==d1) //判断number是回文数的条件
{
System.out.println(number+"是回文数");
}
else
{
System.out.println(number+"不是回文数");
}
}
else if(d2!=0)
{
System.out.println(number+"是2位数");
if(d1==d2)
{
System.out.println(number+"是回文数");
}
else
{
System.out.println(number+"不是回文数");
}
}
else if(d1!=0)
{
System.out.println(number+"是1位数");
System.out.println(number+"是回文数");
}
}
else
{
System.out.printf("\n%d不在1至99999之间",number);
}
}
}
public class TestNumber
{
public static void main(String args[])
{
loopNumber();
}
static void loopNumber(){
int number=0,d5,d4,d3,d2,d1;
String str=JOptionPane.showInputDialog("输入一个1至99999之间的数");
number=Integer.parseInt(str);
if(number>=1&&number<100000) //判断number在1至99999之间的条件
{
d5=number/10000 ; //计算number的最高位(万位)d5
d4=(number-d5*10000)/1000; //计算number的千位d4
d3=number%1000/100; //计算number的百位d3
d2=number%100/10;
d1=number%10;
if(d5!=0) //判断number是5位数的条件
{
System.out.println(number+"是5位数");
if(d5==d1&&d4==d2) //判断number是回文数的条件
{
System.out.println(number+"是回文数");
}
else
{
System.out.println(number+"不是回文数");
}
}
else if(d4!=0) //判断number是4位数的条件
{
System.out.println(number+"是4位数");
if(d4==d1&&d3==d2) //判断number是回文数的条件码
{
System.out.println(number+"是回文数");
}
else
{
System.out.println(number+"不是回文数");
}
}
else if(d3!=0) //判断number是3位数的条件
{
System.out.println(number+"是3位数");
if(d3==d1) //判断number是回文数的条件
{
System.out.println(number+"是回文数");
}
else
{
System.out.println(number+"不是回文数");
}
}
else if(d2!=0)
{
System.out.println(number+"是2位数");
if(d1==d2)
{
System.out.println(number+"是回文数");
}
else
{
System.out.println(number+"不是回文数");
}
}
else if(d1!=0)
{
System.out.println(number+"是1位数");
System.out.println(number+"是回文数");
}
}
else
{
System.out.printf("\n%d不在1至99999之间",number);
}
}
}
相关文章推荐
- 编写一个Java应用程序。用户从键盘输入一个1—9999之间的数,程序将判断这个数是几位数,并判断这个数是否是回文数。回文数是指将该数含有的数字逆序排列后得到的数和原数相同,例如12121、3223都
- 编写一个Java应用程序。用户从键盘输入一个1—9999之间的数,程序将判断这个数是几位数, 并判断这个数是否是回文数。回文数是指将该数含有的数字逆序排列后得到的数和原数相同, 例如12121、3
- JAVA--第2周实验--用户从键盘输入一个1~9999之间的数,程序将判断这个数是几位数,并判断这个数是否是回文数
- java 编写程序实现从控制台接收一个 5 位以上的整数,使用数组来判断该数字 * 是否是回文数。(例如:789987,12344321是回文数)
- 作业 4 函数应用 编写一个程序,判断从键盘接收的数字是否为回文数字。回文数字就是顺着看和倒着看是相同的数。如121、656、2332等
- 让用户输入一个5位数(若不是5位数,则提示错误),判断它是不是回文数,输出判断结果。回文数:如12321是一个回文数,万位与个位相同,十位与千位相同。
- 编写一个JAVA应用程序,用户从键盘只能输入整数,程序输出这些整数的乘积
- 编写程序,判断用户输入的数字是否完全数.所谓“完全数”是指整数n的所有因子(不包括n)之和等于n自身。例如28的因子为1、2、4、7、14,而28=1+2+4+7+14,因此28是“完全数”。
- 第二章作业51.4(编写一个程序,判断用户输入的字符是否为数字,若是数字,则输出“a numerical charater”,否则输出“other charater”。)
- 43.编写一个程序,判断用户输入的字符是否是数字,若是数字,则输出“a numerical character”
- java编写输入一个数判断是否是回文数,所谓回文数比如121,1221,6778776
- P51 第4题 编写一个程序,判断用户输入的字符是否是数字,若是数字,则输出“a numerical character”,否则输出“other character”.
- 输入一个整数,将这个整数以字符串的形式逆序输出 程序不考虑负数的情况,若数字含有0,则逆序形式也含有0,如输入为100,则输出为001
- P51 第18题 从键盘输入一个正整数n,判断其是否同时含有奇数字和偶数字
- 判断一个数是否为回文数,给一个数求出是几位数,逆序输出这个数
- 编写程序显示由数字组成的平行四边形图案。从键盘输入一个整数(£40),则输出对应的图案。例如输入4,则输出为:
- 用户输入一个数字,判断这个数字是否是质数。
- 你可以输入一个五位以内的数字,我们将判断,该数字是几位数,并且判断其是否为回文数
- 笔试题——编写java程序:输入一个字符串,判断有几个英文字母,有几个数字,有几个其它的字符
- java应用程序中判断用户输入的一个整数是否在已知数组里。