/*求一个数字的二进制编码:除2除余倒序相拼接*/
//算法一:利用循环去写
public void getBinary(int num){
//这个数字的商
int a = num;
//这个数字的余数
int b = 0;
String sb = "";
while(a!=0){
b =a%2;
sb = b + sb;
a = a/2;
}
System.out.println(sb);
}
//算法二:利用递归
public void getBinary1(int num){
if(num==0){
return;
}else{
getBinary1(num/2);
System.out.print(num%2);
}
}
/*实现1!+2!+3!+.....+99!*/
//利用递归写:
public double sum(int num){
if(num==0){
throw new RuntimeException("您输入的数字非法");
}
if(num==1){
return 1;
}
return mul(num)+sum(num-1);
}
public double mul(int num){
if(num==1){
return 1;
}
return num*mul(num-1);
//算法一:利用循环去写
public void getBinary(int num){
//这个数字的商
int a = num;
//这个数字的余数
int b = 0;
String sb = "";
while(a!=0){
b =a%2;
sb = b + sb;
a = a/2;
}
System.out.println(sb);
}
//算法二:利用递归
public void getBinary1(int num){
if(num==0){
return;
}else{
getBinary1(num/2);
System.out.print(num%2);
}
}
/*实现1!+2!+3!+.....+99!*/
//利用递归写:
public double sum(int num){
if(num==0){
throw new RuntimeException("您输入的数字非法");
}
if(num==1){
return 1;
}
return mul(num)+sum(num-1);
}
public double mul(int num){
if(num==1){
return 1;
}
return num*mul(num-1);
}
待续.........