从键盘输入一个十进制数,转换成二进制数后输出

battle888 2012-04-27 11:05:05
要求不用Integer,自己写,另输入一整数A,判断它是否质数。
...全文
2245 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
sdojqy1122 2012-04-28
  • 打赏
  • 举报
回复
十进制数还包括小数,不淡定了。。小数是*2.楼主应该有思路了吧?
Mourinho 2012-04-28
  • 打赏
  • 举报
回复
都是基础题,LZ应该好好思考
还是贴下代码吧。。。

import java.util.Scanner;

public class Test {
public static void main(String[] args) {
test1();
test2();
}

//二进制
static void test1(){
System.out.print("二进制 输入一个数: ");
Scanner scanner = new Scanner(System.in);
try {
int num = scanner.nextInt();
int numTemp = num;
//System.out.println(num + "的二进制数" + Integer.toBinaryString(num));
StringBuffer sBuffer = new StringBuffer();
while(numTemp != 0){
int value = numTemp % 2;
sBuffer.append(value);
numTemp /= 2;
}
System.out.println(num + "的二进制数" + sBuffer.reverse().toString());
} catch (Exception e) {
System.out.println("输入数不合法");
}

}

//质数
static void test2(){
System.out.print("质数 输入一个数: ");
Scanner scanner = new Scanner(System.in);
try {
int num = scanner.nextInt();
for(int i = 2;i < Math.sqrt(num);i++){
if(num % i == 0){
System.out.println(num + "不是质数");
return;
}
}
System.out.println(num + "是质数");
} catch (Exception e) {
System.out.println("输入数不合法");
}

}
}

sdojqy1122 2012-04-27
  • 打赏
  • 举报
回复

public static void main(String args[]){
Scanner input = new Scanner(System.in);
int inputNumber = input.nextInt();
erjinzhi(inputNumber);
}
public static String erjinzhi(int a){
boolean flag = true;
boolean isZhengshu = (a>=0?true:false);
if(!isZhengshu){
a = a&0xffff;
}
int temp = Math.abs(a);
StringBuffer sb = new StringBuffer();
while(flag){
int yushu = temp%2;
sb.append(yushu);
temp = temp/2;
if(temp == 0){
flag = false;
}
}
StringBuffer result = new StringBuffer();
for(int i=0;i<sb.length();i++){
result.append(sb.charAt(sb.length()-1-i));
}
System.out.print(result);
return result.toString();
}
ncist_jianeng 2012-04-27
  • 打赏
  • 举报
回复
十进制转换成二进制:每次除2得到的余数放到栈中,输出栈就是二进制。
求质数和ls一样
magong 2012-04-27
  • 打赏
  • 举报
回复
常规练习题,我给个思路,楼主自己试试看:
①用Scanner接收整数输入,循环div 2,每次mod 2得到的0或1值写前缀到一个字符串中,最后打印该字符串即可。
②照样用Scanner接收整数输入,用所有小于它的大于1的整数去mod它,只要有一个除尽了,则不是质数。

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧