package ccPackage;
/*
* 题目很简单,完成函数reverse,要求实现把给定的一个整数取其相反数的功能,举两个例子如下: x = 123,
* return 321 x = -123, return -321
挑战规则:
1.完成功能函数即可,main函数只是方便你自行测试。
*/
public class reverseNum {
public int reverseNum(int val)
{
int signVal = 1;
int tmpVal = val;
if(val < 0)
{
tmpVal = -1 * val;
signVal = -1;
}
int valLen = 1;
int tVal = 10;
int[] valAry = new int[11];
valAry[0] = tmpVal % 10;
while(tmpVal >= tVal)
{
valAry[valLen] = tmpVal / tVal % 10;
tVal *= 10;
++valLen;
}
for(int i=valLen; i>0; i--)
{
for(int j=0; j<i-1; j++)
{
valAry[j] *= 10;
}
}
int retVal = 0;
for(int j=0; j<valLen; j++)
{
retVal += valAry[j];
}
//System.out.println(retVal);
return retVal * signVal ;
}
}
/*
* 题目很简单,完成函数reverse,要求实现把给定的一个整数取其相反数的功能,举两个例子如下: x = 123,
* return 321 x = -123, return -321
挑战规则:
1.完成功能函数即可,main函数只是方便你自行测试。
*/
public class reverseNum {
public int reverseNum(int val)
{
int signVal = 1;
int tmpVal = val;
if(val < 0)
{
tmpVal = -1 * val;
signVal = -1;
}
int valLen = 1;
int tVal = 10;
int[] valAry = new int[11];
valAry[0] = tmpVal % 10;
while(tmpVal >= tVal)
{
valAry[valLen] = tmpVal / tVal % 10;
tVal *= 10;
++valLen;
}
for(int i=valLen; i>0; i--)
{
for(int j=0; j<i-1; j++)
{
valAry[j] *= 10;
}
}
int retVal = 0;
for(int j=0; j<valLen; j++)
{
retVal += valAry[j];
}
//System.out.println(retVal);
return retVal * signVal ;
}
}