整数反转的程序
2011-11-09 11:12
176 查看
package com.sky.xsyu.lip;
import java.util.Scanner;
public class InverseInteger {
public void inverse(){
Scanner sc = new Scanner(System.in);
int putIn = sc.nextInt();
int length = getLength(putIn);
int size = 0;
int putOut = 0 ;
for(int i=0;i<length;i++){
int temp = (putIn/((int)Math.pow(10, length-size-1)))%10;
System.out.println("个位数"+temp);
putOut = temp*((int)Math.pow(10, size))+putOut;
size++;
}
System.out.println("最后的值:"+putOut);
}
private int getLength(int putIn){
int length = (int)Math.log10(putIn)+1;
return length;
}
public static void main(String[] args) {
new InverseInteger().inverse();
}
}
/**难点:
* 1:获得第几位的数字。
* 2:得到整数的长度。
* 3:将数据按倒序的方式去显示出来。
* 解决方法:
* (putIn/((int)Math.pow(10, length-size-1)))%10;即将整数除以10的所需位数的次幂,然后取余得到余数。
* int length = (int)Math.log10(putIn)+1;得到整数长度。
* 最后连加即可。
* 所需要的api
* static double pow(double a, double b) 返回第一个参数的第二个参数次幂的值。
* static double log10(double a) 返回 double 值的底数为 10 的对数。
* 当然也可以自己去写。
* */
import java.util.Scanner;
public class InverseInteger {
public void inverse(){
Scanner sc = new Scanner(System.in);
int putIn = sc.nextInt();
int length = getLength(putIn);
int size = 0;
int putOut = 0 ;
for(int i=0;i<length;i++){
int temp = (putIn/((int)Math.pow(10, length-size-1)))%10;
System.out.println("个位数"+temp);
putOut = temp*((int)Math.pow(10, size))+putOut;
size++;
}
System.out.println("最后的值:"+putOut);
}
private int getLength(int putIn){
int length = (int)Math.log10(putIn)+1;
return length;
}
public static void main(String[] args) {
new InverseInteger().inverse();
}
}
/**难点:
* 1:获得第几位的数字。
* 2:得到整数的长度。
* 3:将数据按倒序的方式去显示出来。
* 解决方法:
* (putIn/((int)Math.pow(10, length-size-1)))%10;即将整数除以10的所需位数的次幂,然后取余得到余数。
* int length = (int)Math.log10(putIn)+1;得到整数长度。
* 最后连加即可。
* 所需要的api
* static double pow(double a, double b) 返回第一个参数的第二个参数次幂的值。
* static double log10(double a) 返回 double 值的底数为 10 的对数。
* 当然也可以自己去写。
* */
相关文章推荐
- c程序十六进制字符串转换为整数与反转
- 【程序15】 题目:输入三个整数x,y,z,请把这三个数由小到大输出。
- 对于任意正整数都可以找出至少一串连续奇数,它们的和等于该整数的立方。以下程序验证[2,20]之间的数满足这一性质。
- 编写程序,分离出一个实数的整数部分与小数部分,要求用函数完成
- 大整数乘法的C++程序
- 用C语言编写函数实现一个整数计算机,程序接受三个参数,第一个参数为操作项,后两个参数为操作数。
- 86 怎样编写一个程序,把一个有序整数数组放到二叉树中
- 请编写一个Java程序,接收一个大于等于2的整数,实现下面功能。
- 反转整数
- 日常练习:lintcode37. 反转一个3位整数
- 编写程序数一下1到100的所有整数中出现多少次数字9
- 60}的C程序 高手帮忙写下`` 46 35 27 21 16 10 9 5 然后输出数组a。已知 int a[11]={1 使数组a仍然有序 将x插入到有序整型数组a中 由键盘输入一个整数x
- java 程序题 递归算法 判断一个整数化成二进制之后有多少个1 (两种思路)
- acm题目及我的程序(4)——正整数n的加法组合的最大乘积(修改)
- Leet Code 7 Reverse Integer - 整数反转 - Java
- 程序:输入一个四位整数,将这个数按逆向输出
- 实现一个整数计算器,程序可以接受三个参数,第一个参数“-a”选项执行加法,“-s”选项执行减法,“-m”选项执行乘法,“-d”选项执行除法,后面两个参数为操作数。 例如:输入t
- LeetCode7——Reverse Integer(将一个整数反转,注意溢出的处理)
- 写一个函数,输入一个二叉树,树中每个节点存放了一个整数值,函数返回这棵二叉树中相差最大的两个节点间的差值绝对值。请注意程序效率。
- 设计一个程序,输入3个整数,将其按从大到小的顺序输出