qqbwww 发表于 2013-1-26 14:02:34

阶乘 16进制转换 输出1-9所有的排列组合

阶乘的代码
public class Factorial {public static Integer factorial(int i){if(i<0){System.out.println("输入错误");return null;}else if(i==0){return 1;}else{if(i-1 > 1){return i*factorial(i-1);}else{return i;}}}public static void main(String[] args) {for(int num=-100;num<10;num++){System.out.println(num+ "的阶乘是"+ factorial(num));}}} 
负数不知道怎么处理好
 
16进制转换为10进制整数public class Hex2Decimal {
//用Integer的方法/*public static int hex2Decimal(String str){return Integer.parseInt(str, 16);}*///用Character的方法public static int hex2Decimal(String str){int len = str.length();int sum = 0;for(int i=0;i<len;i++){char c = str.charAt(i);int n = Character.digit(c, 16);sum += n*(1<<(4*i));}return sum;}public static void main(String[] args) {String st = "aa";System.out.println(hex2Decimal(st));}} 输出1-9所有的排列组合public class Permutations {
    private int[] a = new int;       public void init(){      for(int i=1;i<=9;i++){            a=i;         }    }       private void printNumber(){      for(int j=1;j<=9;j++){            System.out.print(a+" ");      }      System.out.println();    }       public void range(int index){      if(index==9){            printNumber();      }      else{            for(int i=index;i<=9;i++){                int k = index;                swap(i,k);                range(k+1);                               swap(i,k);            }               }    }       private void swap(int i, int j){      int temp =a;      a=a;      a=temp;    }       public static void main(String[] args) {    Permutations p = new Permutations();      p.init();      p.range(1);    }}
页: [1]
查看完整版本: 阶乘 16进制转换 输出1-9所有的排列组合