【问题标题】:adding a control structure添加控制结构
【发布时间】:2016-08-21 20:42:14
【问题描述】:

下面的代码将十进制数转换为八进制数。我需要的是让它能够在输入无效时显示这些消息并重复输入过程直到输入有效输入

"输入一个十进制数:-1

输入不应有任何负号!

输入一个十进制数:-a

输入不应有任何负号!

输入不应包含字母!

输入一个十进制数:-1.1

输入不能有小数点!

输入不应有任何负号!

输入一个十进制数:-1.a

输入不能有小数点!

输入不应有任何负号!

输入不应包含字母!

输入一个十进制数:十进制 15 15 = 八进制 17"

导入 java.util.Scanner;

公开课苹果

{

public static void main(String args[])
{
    Scanner sc = new Scanner( System.in );

    System.out.print("Enter a decimal number: ");
    int num =sc.nextInt();


    int rem;
    String str="";

    int num1 = num;
    while(num>0)
    { 
        rem=num%8;
        num=num/8;

        str =rem+str;
    }
    System.out.println("decimal " + num1 + " = octal " + str);
}

}

提前致谢。

【问题讨论】:

    标签: java structure controls


    【解决方案1】:
        boolean continueEntering = true;
        while(continueEntering)
        { 
            int num =sc.nextInt();
            if(your condition failed){
             //print whatever you want
             continueEntering = true; //didnt got the out put so asking again  
            }else{
               //input is valid no need to ask data again
              continueEntering = false; 
            }
    
        }
    

    您需要在 while 循环中传递一个布尔值。如果用户输入了无效的输入,您可以将布尔值设为真,以便您可以再次询问输入。但是,当用户输入有效输入时,我已经停止了程序。您可以通过反转布尔值来更改它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-12-09
      • 1970-01-01
      相关资源
      最近更新 更多