进制的转换
插入链接与图片
链接: link.
package chater;
import java.util.Scanner;
import java.lang.*;
public class Demo2 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("请输入一个整数:");
//String a = "";//用字符串拼接
int num = input.nextInt();
int num1 = num;
//String a = "";//用字符串拼接
int []x = new int[] {0,0,0,0,0,0,0,0,0};
int []y = new int[] {0,0,0,0,0,0,0,0,0};
int []z = new int[] {0,0,0,0,0,0,0,0,0};
//String a = "";//用字符串拼接
if(num>0&&num<=127){
int i = 8;
while(i>=0&&i<9) {
x[i]=num%2;
num=num/2;
i--;
}
for(int j = 1;j<=8;j++){
System.out.print(x[j]); //
}
}else if(num<0&&num>=-128){
String s1 = Integer.toBinaryString(num);
char[] chs = s1.toCharArray();
for (int i =24; i <32; i++) {
System.out.print(chs[i]);
} // 当输入的整数为负数时,到这为输出第一个二进制
}else{
System.out.print("输入值溢出");
}
System.out.println("");
int sum = input.nextInt();
int sum1 = sum;
if(sum>0&&sum<=127){
int i = 8;
while(i>=0&&i<9) {
y[i]=sum%2;
sum=sum/2;
i--;
}
for(int j = 1;j<=8;j++){
System.out.print(y[j]); //
}
}else if(sum<0&&sum>=-128){
int temp = Math.abs(sum);
int i = 8;
while(i>=0&&i<9) {
y[i]=temp%2;
temp=temp/2;
i--;
}
for( i = 1;i<=8;i++){
if(y[i]==0) {
y[i]=1;
}else if(y[i]==1) {
y[i]=0;
}
//System.out.print(y[i]);
}
y[8]+=1;
// 当输入的整数为负数时,到这为输出第一个二进制
for( i = 8;i>=1;i--){
if(y[i]==2) {
y[i]=0;
y[i+1]+=1;
}
}
for( i = 1;i<=8;i++){
System.out.print(y[i]);
}
}else{
System.out.print("输入值溢出");
}
System.out.println("");
if((num1>0&&num1<=127)&&(sum1>0&&sum1<=127)) { ///如果输入的两个整数都是正数
for(int i = 8;i>=0;i--){
if(z[i]+ x[i]+y[i]<2) {
z[i] = x[i]+y[i];
}else if(z[i]+x[i]+y[i]==2){
z[i]=0;
x[i-1]+=1;
}
else if(z[i]+x[i]+y[i]==3) {
z[i]=1;
x[i-1]+=1;
}
}for(int i=0;i<=8;i++){
System.out.print(z[i]);
}
System.out.println("");
}else if((num1<0&&num1>=-128)&&(sum1>0&&sum1<=127)){ 如果输入的第一个是负数,第二个是正数
for(int i = 8;i>=0;i--){
if(z[i]+ x[i]+y[i]<2) {
z[i] = x[i]+y[i];
}else if(z[i]+x[i]+y[i]==2){
z[i]=0;
x[i-1]+=1;
}
else if(z[i]+x[i]+y[i]==3) {
z[i]=1;
x[i-1]+=1;
}
}for(int i=0;i<=8;i++){
System.out.print(z[i]);
}
}else if((num1<0&&num1>=-128)&&(sum1<0&&sum1>=-128)) {如果输入的第一个是负数,第二个是负数
for(int i = 8;i>=0;i--){
if(z[i]+ x[i]+y[i]<2) {
z[i] = x[i]+y[i];
}else if(z[i]+x[i]+y[i]==2){
z[i]=0;
x[i-1]+=1;
}
else if(z[i]+x[i]+y[i]==3) {
z[i]=1;
x[i-1]+=1;
}
}for(int i=0;i<=8;i++){
System.out.print(z[i]);
}
}else if((num1>0&&num1<=127)&&(sum1<0&&sum1>=-128)) {/如果输入的第一个是正数,第二个是负数
for(int i = 8;i>=0;i--){
if(z[i]+ x[i]+y[i]<2) {
z[i] = x[i]+y[i];
}else if(z[i]+x[i]+y[i]==2){
z[i]=0;
x[i-1]+=1;
}
else if(z[i]+x[i]+y[i]==3) {
z[i]=1;
x[i-1]+=1;
}
}for(int i=0;i<=8;i++){
System.out.print(z[i]);
}
}///定点小数加减/
}
}
``
## 导出与导入
### 导出
如果你想尝试使用此编辑器, 你可以在此篇文章任意编辑。当你完成了一篇文章的写作, 在上方工具栏找到 **文章导出** ,生成一个.md文件或者.html文件进行本地保存。
### 导入
如果你想加载一篇你写过的.md文件,在上方工具栏可以选择导入功能进行对应扩展名的文件导入,
继续你的创作。
[1]: http://meta.math.stackexchange.com/questions/5020/mathjax-basic-tutorial-and-quick-reference
[2]: https://mermaidjs.github.io/
[3]: https://mermaidjs.github.io/
[4]: http://adrai.github.io/flowchart.js/