求写一个java程序...在线等
就是你输入一个2进制的数字,然后你把它转化成为普通的数字...先判断,比如你输入44,会输出错误,然后如果你输入111,就会把111转换成普通数字,,,知道你输入一个2字...
就是你输入一个2进制的数字,然后你把它转化成为普通的数字...先判断,比如你输入44,会输出错误,然后如果你输入111,就会把111转换成普通数字,,,知道你输入一个2字,就会结束...
我们老师很麻烦,他要求要用, import acm.program.*;来写,然后呢...又要用, ReadLine(), length(),和charAt())来写,,可不可以写得简单..越笨..就越真实我不是抄来的,,下面的那些..太深奥...我怕老师会看出我是抄出来的...变成这个样子就ok, 展开
我们老师很麻烦,他要求要用, import acm.program.*;来写,然后呢...又要用, ReadLine(), length(),和charAt())来写,,可不可以写得简单..越笨..就越真实我不是抄来的,,下面的那些..太深奥...我怕老师会看出我是抄出来的...变成这个样子就ok, 展开
4个回答
展开全部
import java.util.Scanner;
public class T {
public static void main(String[] args) {
while (true) {
String num = get("输入二进制数字: ");
Integer i = Integer.valueOf(num, 2);
System.out.println("输入的二进制转换成十进制为: " + i);
}
}
public static String get(String tip) {
System.out.print(tip);
Scanner sc = new Scanner(System.in);
String result = sc.nextLine();
if (result == null || result.length() == 0) {
System.out.println("输入错误");
return get(tip);
}
if ("2".equals(result)) {
System.out.println("程序结束");
System.exit(1);
}
for (int i = 0; i < result.length(); i++) {
char c = result.charAt(i);
if (c != '1' && c != '0') {
System.out.println("输入错误");
return get(tip);
}
}
return result;
}
}
public class T {
public static void main(String[] args) {
while (true) {
String num = get("输入二进制数字: ");
Integer i = Integer.valueOf(num, 2);
System.out.println("输入的二进制转换成十进制为: " + i);
}
}
public static String get(String tip) {
System.out.print(tip);
Scanner sc = new Scanner(System.in);
String result = sc.nextLine();
if (result == null || result.length() == 0) {
System.out.println("输入错误");
return get(tip);
}
if ("2".equals(result)) {
System.out.println("程序结束");
System.exit(1);
}
for (int i = 0; i < result.length(); i++) {
char c = result.charAt(i);
if (c != '1' && c != '0') {
System.out.println("输入错误");
return get(tip);
}
}
return result;
}
}
展开全部
import javax.swing.JOptionPane;
public class ryrt {
public static void main(String[] args) {
String str = JOptionPane.showInputDialog(null, "请输入一个二进制数字", "转换",
JOptionPane.QUESTION_MESSAGE);
int k = 0;
try {
k = Integer.parseInt(str);
} catch (NumberFormatException e) {
JOptionPane.showMessageDialog(null, "请输入数字", "输入错误",
JOptionPane.ERROR_MESSAGE);
}
String ans = "";
if (k != 2) {
try {
ans = Integer.valueOf(str, 2).toString();
} catch (NumberFormatException e) {
JOptionPane.showMessageDialog(null, "请输入数字", "输入错误",
JOptionPane.ERROR_MESSAGE);
}
JOptionPane.showMessageDialog(null, "结果是 "+ans, "结果",
JOptionPane.INFORMATION_MESSAGE);
}else{
}
}
}
public class ryrt {
public static void main(String[] args) {
String str = JOptionPane.showInputDialog(null, "请输入一个二进制数字", "转换",
JOptionPane.QUESTION_MESSAGE);
int k = 0;
try {
k = Integer.parseInt(str);
} catch (NumberFormatException e) {
JOptionPane.showMessageDialog(null, "请输入数字", "输入错误",
JOptionPane.ERROR_MESSAGE);
}
String ans = "";
if (k != 2) {
try {
ans = Integer.valueOf(str, 2).toString();
} catch (NumberFormatException e) {
JOptionPane.showMessageDialog(null, "请输入数字", "输入错误",
JOptionPane.ERROR_MESSAGE);
}
JOptionPane.showMessageDialog(null, "结果是 "+ans, "结果",
JOptionPane.INFORMATION_MESSAGE);
}else{
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class HelloWorld {
public static void main(String[] args) {
while (true) {
System.out.println("请输入一个有效的二进制数字,输入2数字则结束程序:");
BufferedReader stdin = new BufferedReader(new InputStreamReader(
System.in));
try {
String str = stdin.readLine();
if (!isBinary(str)) {
/*
* 如果输入的数字为2结束程序
*/
if (str.trim().equals("2"))
break;
/*
* 如果不符合二进制判断,输出错误
*/
System.out.println("你输入的不是二进制!!");
}
if (isBinary(str)) {
/*
* 如果符合二进制判断,进行运算,并打印结果
*/
System.out.println("运算结果为:" + binaryToDecimal(str));
}
} catch (IOException E) {
System.out.println("发生I/O错误!!!");
}
}
}
/*
* 将二进制转换为十进制
*/
public static int binaryToDecimal(String b) {
int d = Integer.parseInt(b, 2);
return d;
}
/*
* 判断是否为二进制
*/
public static boolean isBinary(String b) {
Pattern pattern = Pattern.compile("[0-1]*");
Matcher isBinary = pattern.matcher(b);
if (!isBinary.matches())
return false;
else
return true;
}
}
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class HelloWorld {
public static void main(String[] args) {
while (true) {
System.out.println("请输入一个有效的二进制数字,输入2数字则结束程序:");
BufferedReader stdin = new BufferedReader(new InputStreamReader(
System.in));
try {
String str = stdin.readLine();
if (!isBinary(str)) {
/*
* 如果输入的数字为2结束程序
*/
if (str.trim().equals("2"))
break;
/*
* 如果不符合二进制判断,输出错误
*/
System.out.println("你输入的不是二进制!!");
}
if (isBinary(str)) {
/*
* 如果符合二进制判断,进行运算,并打印结果
*/
System.out.println("运算结果为:" + binaryToDecimal(str));
}
} catch (IOException E) {
System.out.println("发生I/O错误!!!");
}
}
}
/*
* 将二进制转换为十进制
*/
public static int binaryToDecimal(String b) {
int d = Integer.parseInt(b, 2);
return d;
}
/*
* 判断是否为二进制
*/
public static boolean isBinary(String b) {
Pattern pattern = Pattern.compile("[0-1]*");
Matcher isBinary = pattern.matcher(b);
if (!isBinary.matches())
return false;
else
return true;
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
import java.util.*;
public class Test {
public static void main(String[] args)
{
Scanner sc=new Scanner(System.in);
while(true){
System.out.println("请输入一个二进制数,输入2退出");
String s=sc.nextLine();
if("2".equals(s)) System.exit(0);
if(s.replaceAll("[^01]","").length()<s.length())
{
System.out.println("输入的数据有误!");
}else{
System.out.println(Integer.valueOf(s,2));
}
}
}
}
public class Test {
public static void main(String[] args)
{
Scanner sc=new Scanner(System.in);
while(true){
System.out.println("请输入一个二进制数,输入2退出");
String s=sc.nextLine();
if("2".equals(s)) System.exit(0);
if(s.replaceAll("[^01]","").length()<s.length())
{
System.out.println("输入的数据有误!");
}else{
System.out.println(Integer.valueOf(s,2));
}
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询