Java 提示用户重新输入整数,直到输入二进制数
我对JAVA(顺便说一句,计算机编程)是新手。以下程序检查输入是否为二进制。它应该提示用户重新输入整数,直到输入二进制数。但这个项目却恰恰相反。 它要求我在输入为二进制时重新输入整数,当输入非二进制时程序终止。 我需要一个认真的帮助Java 提示用户重新输入整数,直到输入二进制数,java,loops,Java,Loops,我对JAVA(顺便说一句,计算机编程)是新手。以下程序检查输入是否为二进制。它应该提示用户重新输入整数,直到输入二进制数。但这个项目却恰恰相反。 它要求我在输入为二进制时重新输入整数,当输入非二进制时程序终止。 我需要一个认真的帮助 更改代码 由此 if (notBinaryDigit > 0) { System.out.println(value + " is a not a Binary Number."); break; } else {
更改代码 由此
if (notBinaryDigit > 0) {
System.out.println(value + " is a not a Binary Number.");
break;
} else {
System.out.println(value + " is a Binary Number.");
}
对此
if (notBinaryDigit > 0) {
System.out.println(value + " is a not a Binary Number.");
notBinaryDigit--;
} if(binaryDigit >0 {
System.out.println(value + " is a Binary Number.");
binaryDigit--;
break;
}
它将询问值并判断它是否是二进制的,如果它是二进制的,它将终止更改代码 由此
if (notBinaryDigit > 0) {
System.out.println(value + " is a not a Binary Number.");
break;
} else {
System.out.println(value + " is a Binary Number.");
}
对此
if (notBinaryDigit > 0) {
System.out.println(value + " is a not a Binary Number.");
notBinaryDigit--;
} if(binaryDigit >0 {
System.out.println(value + " is a Binary Number.");
binaryDigit--;
break;
}
它将询问值并告诉是否是二进制的,如果是二进制的,它将终止。 您可以像这样删除Scanner类来运行程序并检查逻辑 公开课考试{
public static void main(String []args){
int value, userValue=34;
int binaryDigit = 0, notBinaryDigit = 0;
value = userValue;
while (userValue > 0) {
if ((userValue % 10 == 0) || (userValue % 10 == 1)) {
binaryDigit++;
} else {
notBinaryDigit++;
}
userValue = userValue / 10;
}
if (notBinaryDigit > 0) {
System.out.println(value + " is a not a Binary Number.");
} else {
System.out.println(value + " is a Binary Number.");
}
}
}由于扫描仪类别的原因,出现错误。 您可以像这样删除Scanner类来运行程序并检查逻辑 公开课考试{
public static void main(String []args){
int value, userValue=34;
int binaryDigit = 0, notBinaryDigit = 0;
value = userValue;
while (userValue > 0) {
if ((userValue % 10 == 0) || (userValue % 10 == 1)) {
binaryDigit++;
} else {
notBinaryDigit++;
}
userValue = userValue / 10;
}
if (notBinaryDigit > 0) {
System.out.println(value + " is a not a Binary Number.");
} else {
System.out.println(value + " is a Binary Number.");
}
}
}答案可能太晚了。但是,如果使用该方法,代码可以简化很多
import java.util.Scanner;
public class MainClass {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
while (true) {
System.out.println("Please enter positive integers: ");
int userValue = scan.nextInt();
if (isBinary(userValue)) {
System.out.println(userValue + " is a Binary Number.");
break;
} else {
System.out.println(userValue + " is a not Binary Number.");
}
}
}
public static boolean isBinary(int input) {
while (input > 0) {
if ((input % 10 != 0) && (input % 10 != 1)) {
return false;
}
input = input / 10;
}
return true;
}
}
答案可能太晚了。但是,如果使用该方法,代码可以简化很多
import java.util.Scanner;
public class MainClass {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
while (true) {
System.out.println("Please enter positive integers: ");
int userValue = scan.nextInt();
if (isBinary(userValue)) {
System.out.println(userValue + " is a Binary Number.");
break;
} else {
System.out.println(userValue + " is a not Binary Number.");
}
}
}
public static boolean isBinary(int input) {
while (input > 0) {
if ((input % 10 != 0) && (input % 10 != 1)) {
return false;
}
input = input / 10;
}
return true;
}
}
if(!((用户值%10==0)| |(用户值%10==1))<代码>否定你的语句。你已经通过IDE调试器中的代码了吗?这是开始的地方。如果你不知道如何使用调试器,现在就花时间开始学习。如果你要做任何编码,这是一个必需的技能。我不知道你打算用二进制值来做什么,但是你应该考虑这个bin。进制数可以从一个或多个零开始。如果将值存储在<代码> INT/COD>中,将删除前导零点。还考虑当用户输入一个非常大的二进制数时发生的情况,当解析为<代码> int >代码>超过最大值时,<代码> int /代码>可以表示。也可以考虑您没有处理SCE。nario,用户输入文本而不是数字。最后,一般来说,您应该通过创建简单易懂的小方法将逻辑分解为单元,这将简化代码。if(!((userValue%10==0)|(userValue%10==1))<代码>否定你的语句。你已经通过IDE调试器中的代码了吗?这是开始的地方。如果你不知道如何使用调试器,现在就花时间开始学习。如果你要做任何编码,这是一个必需的技能。我不知道你打算用二进制值来做什么,但是你应该考虑这个bin。进制数可以从一个或多个零开始。如果将值存储在<代码> INT/COD>中,将删除前导零点。还考虑当用户输入一个非常大的二进制数时发生的情况,当解析为<代码> int >代码>超过最大值时,<代码> int /代码>可以表示。也可以考虑您没有处理SCE。nario,用户输入文本而不是数字。最后,一般来说,您应该通过创建简单易懂的小方法将逻辑分解为多个单元,这将简化代码。由于Scanner类没有错误,您必须导入它firstBrother,我已经导入了它,但由于ide配置的原因,需要一段时间。首先,检查e真正的问题,然后做你想做的事。ide配置导致你的计算机出现问题,与上面的问题无关。由于扫描仪类的原因没有错误,你必须导入它firstBrother,我已经导入了它,但有一段时间由于ide配置的缘故。首先,检查真正的问题是什么,然后做你想做的事。ide config导致您的计算机出现问题,与上述问题无关。谢谢您的帮助!谢谢您的帮助!谢谢您的回答。谢谢您的回答。