admin 管理员组文章数量: 1087652
十进制转32位二进制(Java)
十进制转32位二进制(Java)
- 十进制转32位二进制(Java)
- 一、题目
- 二、代码实现
- 三、测试结果
十进制转32位二进制(Java)
一、题目
输入一个正整数N,输出一个32位的二进制数(例如输入2,输出前面30个0+10)
如下图所示
二、代码实现
text3.java
package ch03;import java.util.Scanner;
import ch03.SqStack;public class Test3 {/*** @author 春* @num ……* @text 2.输入一个正整数N,输出一个32位的二进制数(例如输入2,输出30个0+10)*/public static void main(String[] args) throws Exception {Scanner scan = new Scanner(System.in);System.out.print("输入十进制数为:");int Dec = scan.nextInt();SqStack test = new SqStack(32);test.bin(Dec);System.out.print("输出的二进制为:");test.display();}}
SqStack.java
package ch03;public class SqStack implements IStack {private Object[] stackElem;private int top;boolean b;public SqStack(int maxSize) {top = 0;stackElem = new Object[maxSize];}public void clear() {top = 0;}public boolean isEmpty() {return top == 0;}public int length() {return top;}public Object peek() {if (!isEmpty())return stackElem[top - 1];elsereturn null;}public Object pop() {if (isEmpty())return null;elsereturn stackElem[--top];}public void push(Object x) throws Exception {if (top == stackElem.length)throw new Exception("栈满");elsestackElem[top++] = x;}public void display() {if(top < 32){for(int i=1; i<= 32-top; i++){System.out.print("0");}}for (int i = top - 1; i >= 0; i--)System.out.print(stackElem[i].toString() + "");}public void bin(int x){int n = 0;while(x > 0){n = x%2;try {push(n);} catch (Exception e) {e.printStackTrace();}x = x / 2;}}}
IStack.java
package ch03;public interface IStack {public void clear();public boolean isEmpty();public int length();public Object peek();public void push(Object x) throws Exception;public Object pop();
}
三、测试结果
本文标签: 十进制转32位二进制(Java)
版权声明:本文标题:十进制转32位二进制(Java) 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/b/1688025243a170194.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论