4 条题解

  • 2
    @ 2022-7-12 19:05:25

    yyyyy

    #include<bits/stdc++.h>
    using namespace std;
    int main() 
    {
    	int a[10000],i=0,sum=0,m=0,k,j,n[101],d=16;
    	string p,x;
    	cin>>p;
    	k=p.length();
    	for(int j=k-1;j>=0;j--)
    	{	
    		sum+=(p[j]-'0')*pow(2,m);
    		m++;
    	}//2转10
    //	cout<<sum;
    	do{
            n[++i]=sum%d;
            sum/=d;
            if(n[i]>9)x[i-1]=(char)(n[i]+55);
            else x[i-1]=(char)(n[i]+'0');
        }while(sum!=0);//10转16,格式参考10转2   每次模16后除16 最后记得转换字符
        for(j=i;j>=1;j--)cout<<x[j-1];//倒序输出
    }
    
    • 1
      @ 2022-7-12 16:06:37
      using namespace std;
      const int R=99999;
      int a[R],p[R],x[R],y[R];
      int main(){
      	char n;
      	int sum=0,c=0,h,f,l,v=0;
      	while(cin>>n){
      		h=n;
      		f=h-'0';
      		sum++;
      		a[sum]=f; 
      	}
      	for(int i=sum;i>=1;i--){
      		x[sum-i]=a[i];
      	}
      	int b=0;
      	for(int k=0;k<=sum-1;k++){
      		b+=x[k]*pow(2,c);
      		c++;
      	}
          while(b>0){
          	v++;
          	p[v]=b%16;
          	b=b/16;
      	} 
      	for(int e=v;e>=1;e--){
      		y[v-e]=p[e];
      	}
      	for(int u=0;u<=v;++u){
      		if(y[u]<10&&y[u]!=0){
      			cout<<y[u];
      		}
      		else if(y[u]>=10){
      			int o=y[u]+55;
      			char s=o;
      			cout<<s;
      		}
      	}
      	return 0;
      }
      
      • 1
        @ 2022-7-12 15:37:46
        using namespace std;
        int main(){
        	string a,b="0123456789ABCDEF",c;int len,m,s=0,out=0,i=0;
        	cin>>a;
        	len=a.length();
        	for(m=0;m<len;m++){
        		if(a[m]=='1'){
        			s+=pow(2,len-m-1);
        		}
        	}		//先转十进制
        	while(s>0){
        		if(s%16==10){
        			c[i]='A';
        		}
        		else if(s%16==11){
        			c[i]='B';
        		}
        		else if(s%16==12){
        			c[i]='C';
        		}
        		else if(s%16==13){
        			c[i]='D';
        		}
        		else if(s%16==14){
        			c[i]='E';
        		}
        		else if(s%16==15){
        			c[i]='F';
        		}
        		else{
        			c[i]=s%16+'0';
        		}
        		s/=16;
        		i++;
        	}
        	for(i=i-1;i>=0;i--){
        		cout<<c[i];
        	}
        	return 0;
        }
        
      • 0
        @ 2022-7-12 20:59:33

        #include<bits/stdc++.h>

        using namespace std;

        int main(){

        string s;

        for(int i;i<=length()-1;i++)

        ** **char b=s[i];
        
          ** **if(i=0&&b<8)
        
          ** **{
        
                 ** **if(i=0)
        

        {

        ** **i++;
        
                 ** **      ** **if(b=’1’)
        
                 ** **             ** **cout<<01;
        
          ** **             ** **if(b=’2’)
        
                        ** **cout<<10;
        
                 ** **if(b=’3’)
        
                        ** **cout<<11;
        
                 ** **if(b=’4’)
        
                        ** **cout<<100;
        
                 ** **if(b=’5’)
        
                        ** **cout<<101;
        
                 ** **if(b=‘6’)
        
                        ** **cout<<110;
        
                 ** **if(b=’7’)
        
                        ** **cout<<111;
        
          ** **cif(b=’8’)
        
                        ** **cout<<1000;
        
                 ** **if(b=’9’)
        
                        ** **cout<<1001;
        
                 ** **if(b=’A’)
        
                        ** **cout<<1010;
        
                 ** **if(b=’B’)
        
                        ** **cout<<1011;
        
                 ** **if(b=’C’)
        
                        ** **cout<<1110;
        
                 ** **if(b=’D’)
        
                        ** **cout<<1111;
        
                 ** **if(b=’E’)
        
                        ** **cout<<10000;
        
                 ** **if(b=’F’)
        
                        ** **cout<<10001;
        
          ** **      ** **}
        
                 ** **else
        
                 ** **{
        
                        ** **if(b=’1’)
        
                 ** **             ** **cout<<0001;
        
          ** **             ** **if(b=’2’)
        
                        ** **cout<<0010;
        
                 ** **if(b=’3’)
        
                        ** **cout<<0011;
        
                 ** **if(b=’4’)
        
                        ** **cout<<0100;
        
                 ** **if(b=’5’)
        
                        ** **cout<<0101;
        
                 ** **if(b=‘6’)
        
                        ** **cout<<0110;
        
                 ** **if(b=’7’)
        
                        ** **cout<<0111;
        
                 ** **if(b=’8’)
        
                        ** **cout<<1000;
        
                 ** **if(b=’9’)
        
                        ** **cout<<1001;
        
                 ** **if(b=’A’)
        
                        ** **cout<<1010;
        
                 ** **if(b=’B’)
        
                        ** **cout<<1011;
        
                 ** **if(b=’C’)
        
                        ** **cout<<1110;
        
                 ** **if(b=’D’)
        
                        ** **cout<<1111;
        
                 ** **if(b=’E’)
        
                        ** **cout<<10000;
        
                 ** **if(b=’F’)
        
                        ** **cout<<10001;
        

        } ** **

        return 0;

        }

        • 1

        进制转换(二进制转十六进制)

        信息

        ID
        749
        时间
        1000ms
        内存
        256MiB
        难度
        6
        标签
        (无)
        递交数
        947
        已通过
        322
        上传者