进制转;进制转换换,十进制数转八进制数,输出二进制表示(负数的二进制)
程序员文章站
2022-07-15 09:29:10
...
进制转换
问题描述
编写函数将十进制整数按8进制输出,然后编写main函数验证该函数。例如输入12,则输出为:12=014,输入32,则输出32=040。
输入格式
输入一个整数。
输出格式
输出这个整数的八进制形式。
样例输入
12
样例输出
014
数据规模和约定
输入的整数n>=0.
代码
package 进制;
import java.util.Scanner;
public class 进制转换2 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc=new Scanner(System.in);
int a=sc.nextInt();
String s=Integer.toOctalString(a);//转换位8进制
//System.out.println(s);
int len=s.length();
for(int i=len;i<len+1;i++){
s='0'+s;
}
if(a==0)
System.out.println("0");
else
System.out.println(s);
}
}
输出二进制表示
问题描述
输入[-128,127]内的整数,输出其二进制表示。提示,可使用按位与&
输入格式
例:7
输出格式
例:00000111
样例输入
一个满足题目要求的输入范例。
例:
7
样例输出
与上面的样例输入对应的输出。
例:
00000111
数据规模和约定
输入数据中每一个数的范围。
例:0<n,m<100, 0<=矩阵中的每个数<=1000。
代码
package 进制;
import java.util.Scanner;
public class 输入二进制表示 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc=new Scanner(System.in);
int a=sc.nextInt();
String s=Integer.toBinaryString(a);//转换位2进制
//System.out.println(s);
int len=s.length();
for(int i=len;i<8;i++)
s='0'+s;
if(a<0)
s=s.substring(24);
System.out.println(s);
}
}
十进制数转八进制数
编写函数,其功能为把一个十进制数转换为其对应的八进制数。程序读入一个十进制数,调用该函数实现数制转换后,输出对应的八进制数。
样例输入 9274 样例输出 22072
样例输入 18 样例输出 22
代码1
package 进制;
import java.math.BigInteger;
import java.util.Scanner;
public class 十进制转八进制 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc=new Scanner(System.in);
//String s=sc.next();
//BigInteger a=new BigInteger(s);
int a=sc.nextInt();
System.out.printf("%o",a);
}
}
代码2
package 进制;
import java.util.Scanner;
public class 十进制转换为八进制1 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc=new Scanner(System.in);
int a=sc.nextInt();
System.out.println(Tento8(a));
}
public static String Tento8(int a){
String s="";
for(int i=a;i>0;i/=8){
s=i%8+s;
}
return s;
}
}
进制转换
问题描述
程序提示用户输入三个字符,每个字符取值范围是0-9,A-F。然后程序会把这三个字符转化为相应的十六进制整数,并分别以十六进制,十进制,八进制输出。
输入格式:输入只有一行,即三个字符。
输出格式:输出只有一行,包括三个整数,中间用空格隔开。
输入输出样例
样例输入
FFF
样例输出
FFF 4095 7777
代码1
package 进制;
import java.util.Scanner;
public class 进制转换 {
public static void main(String[] args){
Scanner sc=new Scanner(System.in);
String s=sc.next();
System.out.print(f1(s)+" "+f2(s)+" "+f3(s));
}
//转换为16进制
public static String f1(String s){
String ss="";
if(s.equals("000")){
ss="0";
return ss;
}
return s;
}
//转换位10进制
public static String f2(String s){
String ss="";
int temp=Integer.parseInt(s,16);
s=""+temp;
return s;
}
//16进制转换位8进制
public static String f3(String s){
String ss="";
if(s.equals("000")){
ss="0";
return ss;
}
//转化为了10进制
int temp=Integer.parseInt(s,16);
//System.out.println(temp);
ss=TenTo8(temp);
return ss;
}
public static String TenTo8(int num){
String result="";
for(int i=num;i>0;i/=8){
result=i%8+result;
}
//System.out.println(result);
return result;
}
}
代码2
package 进制;
import java.math.BigInteger;
import java.util.Scanner;
public class 进制转换1 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc=new Scanner(System.in);
String s=sc.next();
if(s.equals("000"))
s="0";
BigInteger h=new BigInteger(s,16);
System.out.printf("%s %d %o",s,h,h);
}
}
https://blog.csdn.net/u013190513/article/details/70216730
推荐阅读
-
剑指offer11:输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。(进制转换,补码反码)
-
Python 内置函数进制转换的用法(十进制转二进制、八进制、十六进制)
-
Python 内置函数进制转换的用法(十进制转二进制、八进制、十六进制)
-
java十进制转二进制(输入一个十进制数将其转换成二进制)
-
十进制转二进制数
-
C++中十进制数转二进制数的几种算法
-
Python 进制转换, 实现任意进制转换为任意进制的方法, 支持小数和负数, 二进制转十进制, 十进制转二进制, 小数进制转换, k进制转换
-
c语言十进制转二进制,八进制的最快方法
-
进制转;进制转换换,十进制数转八进制数,输出二进制表示(负数的二进制)
-
【Openjudge】十进制数字转二进制数