一个数除以2 余0 出2不然出1 ,数字10 得到的字符串为“211”

import java.util.Scanner;

public class test {
	public String s ;
//    static int add1(int n) 
//    {   
//        int s=2*n+1;
//        return s;
//    }
//    static int add2(int n) 
//    {   
//        int s=2*n+2;
//        return s;
//}
    public String Tum(int n)
    {
   
    if(n==1)
        {s=s+"1";
       return s;}
    else  if(n%2==0)
    	{s=s+"2";
    	return Tum( (n-2)/2);}
    else 
        {  s=s+"1";
    	   return Tum( (n-1)/2);
        }
    	
    }
   
    public static void main(String[] args){  
        Scanner sb = new Scanner(System.in);  
        System.out.println("输入n:"); 
          //若没有关闭Scanner对象将会出现警告 
        test L = new test();
        int n=sb.nextInt();
        String a =L.Tum(n);
        int m = a.length();
        String s="";
        int j =0;
        char t;
        for(j=m-1;j>3;j--)
    	{t=a.charAt(j);
          s=s+t;
        	}
            System.out.println(s);
       
    }        
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值