关于一个两位数的正整数,如果将它的个位数字与十位数字对调,则产生另一个正整数,我们把后者叫做前者的对调数。现给定一个两位的正整数,请找到另一个两位的正整数,使得这两位正整数之和等于它们各自的对调数之各。例如,12+32=23+21。编写程序,把具有这种特征的一对两位正整数都找出来的问题
public class Test
{
private static int getExchangeNumber( int iNum )
{
String sNum = String。valueOf( iNum );
return Integer。
parseInt( “” + sNum。charAt( 1 ) + sNum。charAt( 0 ) );
}
private static void getTheNumber( int iNum )
{
String sNum = String。
valueOf( iNum );
if( sNum。length() != 2 )
{
System。out。println( “错误的输入!” );
return;
}
if( sNum。charAt( 1 ) == ‘0’ || sNum。
charAt( 0 ) == sNum。charAt( 1 ) )
{
System。out。println( “没有符合条件的数!” );
return;
}
String sNewNum = “” + sNum。
charAt( 1 ) + sNum。charAt( 0 );
int iNewNum = Integer。parseInt( sNewNum );
int iSum = iNum + iNewNum;
int iCount;
if( ( (iSum) % 2 == 0 ) )
iCount = (iSum)/2;
else
iCount = (iSum)/2 + 1;
for( int i=12; i
out。println( iExNum );
if( i != iNum && i != iExNum )
System。out。println( i );
}
}
}
public static void main( String[] args )
{
if( args。
length == 0 )
{
System。out。println( “请输入一个两位的整数!” );
return;
}
else
{
try
{
int i = Integer。
parseInt( args[0] );
getTheNumber( i );
}
catch( Exception e )
{
System。out。println( “请输入一个两位的整数!” );
}
}
}
}。