精华内容
下载资源
问答
  • 十进制转进制例题

    千次阅读 2019-11-25 18:24:28
    //将String str转换为10进制数 System.out.println(a); System.out.println(a.toString(2)); //System.out.print(a.toString(2)); // 输出a的二进制 /* Integer num= in.nextInt(); String result = Integer....
    package com.ethjava;
    
    import java.util.*;
    import java.math.BigInteger;
    
    public class jinzhixianli {
        public static void main(String[] args) {
            Scanner in = new Scanner(System.in);
            while (in.hasNext()) {
                //
               String str = in.nextLine();
    
               BigInteger a = new BigInteger(str, 10);//将String str转换为10进制数
               System.out.println(a);
               System.out.println(a.toString(2));
               //System.out.print(a.toString(2)); // 输出a的二进制
                /*
                Integer num= in.nextInt();
                String result = Integer.toBinaryString(num);
                System.out.println(result);
                */
            }
    
        }
    }


    输入:8

    输出
    8
    1000

     

     

    展开全文
  • 试题 算法训练 十进制八进制数

    千次阅读 2020-04-18 23:34:53
     编写函数把一个十进制数输出其对应的八进制数。 样例输入 9274 样例输出 22072 资源限制 时间限制:1.0s 内存限制:512.0MB 思路: 使用一个字符串存储每位八进制数,使用一个while循环分别求出每位对应的八进制数...

    题目描述
      编写函数把一个十进制数输出其对应的八进制数。
    样例输入
    9274
    样例输出
    22072
    资源限制
    时间限制:1.0s 内存限制:512.0MB

    思路
    使用一个字符串存储每位八进制数,使用一个while循环分别求出每位对应的八进制数

    代码块

    import java.util.Scanner;
    public class Main {
    	public static void main(String[] args) {
    		Scanner sc = new Scanner(System.in);
    		
    		int n = sc.nextInt();
    		
    		String res = "";
    		while(n != 0){
    			int t = n % 8;
    			res = t+res;
    			n /= 8;
    		}
    		
    		System.out.println(res);
    	}
    }
    

    评测结果
    在这里插入图片描述

    展开全文
  • 十进制转R进制 十进制转二进制 十进制整数二进制 十进制整数转换成二进制采用“除2倒取余”,十进制小数转换成二进制小数采用“乘2取整”。 例题: 135D = __ B 解析:如下图所示,将135除以2,得余数,直到...

    1.十进制转R进制

    1.1 十进制转二进制

    十进制整数转二进制

    十进制整数转换成二进制采用“除2倒取余”,十进制小数转换成二进制小数采用“乘2取整”。

    例题: 135D = ______ B

    **解析:**如下图所示,将135除以2,得余数,直到不能整除,然后再将余数从下至上倒取。得到结果:1000 0111B.
    这里写图片描述

    图1.十进制整数转二进制

    十进制小数转二进制

    十进制小数转换成二进制小数采用 “乘2取整,顺序排列” 法。

    具体做法是:

    用2乘十进制小数,可以得到积,将积的整数部分取出,再用2乘余下的小数 部分,又得到一个积,再将积的整数部分取出,如此进行,直到积中的小数部分为零,或者达到所要求的精度为止。

    然后把取出的整数部分按顺序排列起来,先取的整数作为二进制小数的高位有效位,后取的整数作为低位有效位。

    例题: 0.68D = ______ B(精确到小数点后5位)

    **解析:**如下图所示,0.68乘以2,取整,然后再将小数乘以2,取整,直到达到题目要求精度。得到结果:0.10101B.

    在这里插入图片描述

    图2.十进制小数转二进制

    1.2 十进制转八进制

    思路和十进制转二进制一样,参考如下例题:

    例题: 10.68D = ______ Q(精确到小数点后3位)

    **解析:**如下图所示,整数部分除以8取余数,直到无法整除。小数部分0.68乘以8,取整,然后再将小数乘以8,取整,直到达到题目要求精度。得到结果:12.534Q.

    这里写图片描述

    图3.十进制转八进制

    1.3 十进制转十六进制

    思路和十进制转二进制一样,参考如下例题:

    例题: 25.68D = ______ H(精确到小数点后3位)

    **解析:**如下图所示,整数部分除以16取余数,直到无法整除。小数部分0.68乘以16,取整,然后再将小数乘以16,取整,直到达到题目要求精度。得到结果:19.ae1H.

    这里写图片描述

    图4.十进制转十六进制
    # 2.R进制转十进制 ## 2.1 二进制转十进制 **方法为:**把二进制数按权展开、相加即得十进制数。(具体用法如下图)

    例题: 1001 0110B = ______ D

    **解析:**如下图所示。得到结果:150D.

    这里写图片描述

    图5.二进制转十进制

    2.2 八进制转十进制

    八进制转十进制的方法和二进制转十进制一样。

    例题: 26Q = ______ D

    **解析:**如下图所示。得到结果:22D.

    这里写图片描述

    图6.八进制转十进制

    2.3 十六进制转十进制

    例题: 23daH = ______ D

    **解析:**如下图所示。得到结果:9178D.

    这里写图片描述

    图7.十六进制转十进制

    3.二进制转八进制

    二进制转换成八进制的方法是,取三合一法,即从二进制的小数点为分界点,向左(或向右)每三位取成一位。

    例题: 1010 0100B = ____Q

    **解析:**计算过程如下图所示。得到结果:244Q.

    这里写图片描述

    图8.二进制转八进制

    4.二进制转十六进制

    二进制转换成八进制的方法是,取四合一法,即从二进制的小数点为分界点,向左(或向右)每四位取成一位。

    例题: 1010 0100B = ____H

    **解析:**计算过程如下图所示。得到结果:a4H.

    这里写图片描述

    图9.二进制转十六进制

    5.工欲善其事,必先利其器

    下面的表格是8位二进制所对应的十进制数值,对进制转换以及类似题目的理解非常有用:

    11111111B
    1286432168421D

    注:B:二进制
           D:十进制


    例题: 135D = ______ B

    **解析:**有了上面二进制对应十进制数值的表格,我们就可以将题目给的十进制135拆分为:128+7,再从表格中找到对应的数值,拼凑即可得到答案。
    135D = 128D + 7D = 1000 0111B

    展开全文
  • 也就是说按普通的思路来做,先十进制再转换成八进制会报错, 但是这里直接采取格式话输出是成功的,可能是系统的Bug. 题目要求: 资源限制 时间限制:1.0s 内存限制:512.0MB 问题描述  给定n个十六进制正整数,...
  • 蓝桥杯 基础练习(十) 十进制转十六进制 C语言

    千次阅读 多人点赞 2019-01-19 12:03:09
    十进制转十六进制 C语言 问题描述  十六进制数是在程序设计时经常要使用到的一种整数的表示方式。它有0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F共16个符号,分别表示十进制数的0至15。十六进制的计数方法是满16进1,所以...

    十进制转十六进制 C语言

    问题描述
      十六进制数是在程序设计时经常要使用到的一种整数的表示方式。它有0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F共16个符号,分别表示十进制数的0至15。十六进制的计数方法是满16进1,所以十进制数16在十六进制中是10,而十进制的17在十六进制中是11,以此类推,十进制的30在十六进制中是1E。
      给出一个非负整数,将它表示成十六进制的形式。

    输入格式
      输入包含一个非负整数a,表示要转换的数。0<=a<=2147483647

    输出格式
      输出这个整数的16进制表示

    样例输入
    30

    样例输出
    1E

    这是一道进制转换题,蓝桥杯有三道进制转换的题目,笔者本来想将三道写到一篇文章中供读者作比较的,但是…笔者学艺不精,在十六进制转十进制的题目中遇到了问题,想了一整夜都没解决,所以还是先发第一题的,等笔者解决了问题在下一篇文章中讨论。

    enmmm,时间隔太久,不知道从什么地方说起,先贴代码吧:

    #include <stdio.h>
    
    char getnum(int a)
    {
    	switch(a) //进制转换
    	{
    		case 0: return '0';break;
    		case 1: return '1';break;
    		case 2: return '2';break;
    		case 3: return '3';break;
    		case 4: return '4';break;
    		case 5: return '5';break;
    		case 6: return '6';break;
    		case 7: return '7';break;
    		case 8: return '8';break;
    		case 9: return '9';break;
    		case 10: return 'A';break;
    		case 11: return 'B';break;
    		case 12: return 'C';break;
    		case 13: return 'D';break;
    		case 14: return 'E';break;
    		case 15: return 'F';break;
    		
    	}
    } 
    
    int main() {
    	int a[128];  //存放除以16后得到的各个余数
    	int n,i=0;
    	scanf("%d",&n);
    	
    	if(n==0)
    	{
    		printf("0");
    	}  //0不能作被除数,所以如果输入0,则直接输出0
    	
    	else
    	{
    		while(n)
    		{
    			a[i++]=n%16;  
    			n/=16;
    		}
    		
    		for(i-=1;i>=0;i--) //i-=1,指向最后一位,倒序输出,这个解释有点麻烦,自己理解吧
    		{
    			putchar(getnum(a[i]));
    		}  
    	}
    	return 0;
    }
    

    首先解释一下,笔者的思路很简单,就是先将输入的十进制数n除以16得到商和余数,余数直接放入申请好的数组中,如果商大于等于16,那么就循环上面这个操作。
    这样我们会得到一串数组,数组中的每一位余数代表这个数n所对应的十六进制数的每一位的数值(十进制)。

    然后将这些数值用switch函数转化成十六进制数就得到了我们想要的结果。

    嗯,可能读者会看不懂,毕竟笔者的表达能力真的不行,看不懂的就直接看代码吧,实在抱歉。

    需要注意的点代码中都有标出,好了,笔者继续去肝下一题了T-T

    展开全文
  • 进制转换练习题

    2015-11-29 17:26:34
    进制转换练习题
  • 试题 基础练习 十进制转十六进制 资源限制 时间限制:1.0s 内存限制:512.0MB 问题描述  十六进制数是在程序设计时经常要使用到的一种整数的表示方式。它有0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F共16个符号,分别表示...
  • 以下程序的输出结果是 main(){ int a=20; printf("%d,%o,%x\n",a,a,a);...1.题目给出了 a=20这个十进制现在我们需要用十进制转八进制,这里我们采用的就是直接除8取余的方法 2.同理对于10进制16进制我们也是...
  • //题目:八进制转换为十进制 #include<stdio.h> #include<math.h> int main() { int i=0,n,tmp,sum=0; scanf("%d",&n); while(n) { tmp=n%10; n=n/10; sum+=tmp*pow(8,i); i++;...
  • 试题 基础练习 十六进制转十进制

    千次阅读 2020-04-17 20:56:42
     从键盘输入一个不超过8位的正的十六进制数字符串,将它转换为正的十进制数后输出。  注:十六进制数中的10~15分别用大写的英文字母A、B、C、D、E、F表示。 样例输入 FFFF 样例输出 65535 资源限制 时间限制:1.0s...
  • #define _CRT_SECURE_NO_WARNINGS #include <... 题目:八进制转换为十进制 八进制456 =》 十进制 302 302 = 6*pow(8,0)+5*pow(8,1)+4*pow(8,2) */ int main07() { int n; scanf_s("%d", .
  • 题目数据会很大 Accept Code #include <stdio.h> #include <string.h> char str[60000000]; char a[60000000]; int htoi(char s[]) { long long len,t,sum=0,i; len=strlen(s);... ...
  • BASIC-10、十进制转十六进制 思路如下: 其实这根本就不算一个题,你可以直接提交一个六行代码 #include<stdio.h> int main() { int n; scanf("%d",&n); printf("%X\n", n); return 0; } 正统...
  • 十进制小数或带小数的十进制转二进制: 十进制小数转换成二进制小数采用&amp;amp;amp;amp;amp;quot;乘2取整,顺序排列&amp;amp;amp;amp;amp;quot;法。具体做法是:用2乘十进制小数,可以得到积,将积的...
  • 公式 数值*(进制**(位数-1))+...+...
  • R进制转十进制

    千次阅读 2021-02-20 06:24:54
    R进制转十进制使用按权展开法,其具体操作方式为:将R进制的的每一位数值用R^k形式表示,即幂的底数是R,指数为k,k与该位和小数点之间的位置有关系。 当该位位于小数点左边,k值是该位和小数点之间数码的个数,而...
  • 二进制转十进制 转化详解

    千次阅读 多人点赞 2019-07-23 10:29:33
    二进制如何转十进制十进制如何二进制 十进制转二进制 成二进制主要有以下几种:正整数二进制,负整数二进制,小数二进制; 1、 正整数成二进制。要点一定一定要记住哈:除二取余,然后倒序排列,高位...
  • python 十进制转十六进制(蓝桥杯)

    千次阅读 2020-02-26 13:53:55
    0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F共16个符号,分别表示十进制数的0至15。 十六进制的计数方法是满16进1,所以十进制数16在十六进制中是10,而十进制 的17在十六进制中是11,以此类推,十进制的30在十六进制中是1E。 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 7,338
精华内容 2,935
关键字:

十进制转8进制例题