当前位置: 首页 > 知识库问答 >
问题:

java循环中的逻辑运算符

孙修贤
2023-03-14

编写一个程序,不断提示用户从键盘输入整数。当输入的整数为-5或0或大于8时,程序终止。在循环控制条件中使用逻辑和。仔细测试您的程序,以确保满足所有循环终止条件。

import java.util.Scanner;

公开课{

public static void main(String[] args) {
    // TODO Auto-generated method stub
    Scanner input = new Scanner (System.in);
    int num;

    System.out.print("Enter n (-5 or 0 to stop):");
    do {
        num = input.nextInt();

        if ((num!=-5) && (num!=0) && (num>8)){
            System.out.println("Integers: "+num);
        }
    }while ((num!=-5) && (num!=0) && (num>8)); {
        System.out.println("Integers:" +num);
    }


}

}

从这个开始,但没能完成。帮助。

共有3个答案

常乐
2023-03-14

在if语句中,表示输入的数字是否不为-5、不为0或大于8。

这是您的错误:

更改num

工作代码:

import java.util.Scanner;
public class ques 
{

    public static void main(String[] args) 
    {
        // TODO Auto-generated method stub
        Scanner input = new Scanner (System.in);
        int num;

        System.out.print("Enter n (-5 or 0 to stop):");
        do 
        {
            num = input.nextInt();

            if ((num!=-5) && (num!=0) && (num<=8))
            {
                System.out.println("Integers: "+num);
            }
        }while ((num!=-5) && (num!=0) && (num<=8)); 
        {
            System.out.println("Integers:" +num);
        }
    }
}

薄龙光
2023-03-14

循环应继续,直到满足以下条件之一:

  • num==-5

这相当于在以下情况下继续:

  • num!=-5

如您所见,您编写的条件中的最后一个表达式是错误的,应该是num

哈泰
2023-03-14

如果您不希望扫描仪出现问题,则必须添加input.nextLine(),而不在input.nextInt()之后存储值

import java.util.Scanner;
    public class ques {

public static void main(String[] args) {
    // TODO Auto-generated method stub
    Scanner input = new Scanner (System.in);
    int num;

    System.out.print("Enter n (-5 or 0 to stop):");
    do {
        num = input.nextInt();
        input.nextLine();

        if ((num!=-5) && (num!=0) && (num>8)){
            System.out.println("Integers: "+num);
        }
    }while ((num!=-5) && (num!=0) && (num<=8)); {
        System.out.println("Integers:" +num);
    }  
}
}

如果您想知道为什么必须输入input.nextLine(),您可以看到我几个月前发布的答案:为什么扫描仪输入不工作?

另外,在while条件下,必须输入num

期待对你有所帮助!

 类似资料:
  • 我已经有一段时间没有编程了,我正在努力回到事情的转折点,这就是我已经走了多远。我的问题是,我如何循环第二个问题,这样,如果回答不是肯定的,它会再次问这个问题。我曾尝试在if语句周围放置一个循环,但每当我尝试从用户那里获得另一个响应时,它告诉我无法使用变量response来执行此操作。我觉得这是一个简单的修复,因为我理解循环,但我有一个困难的时候围绕着这个具体的问题我的头,提前谢谢你。

  • 问题内容: 运算符和有什么不一样?和运算符|| ?? 而且&和&& ??有什么区别? 谢谢… 问题答案: 主要区别在于,在表达式中,如果为false,则不会进行计算,而在两者中,无论如何都将进行计算。可以说是“ 短路 ”评估。 同样,对于:如果为true,则不会进行评估,而对于两者而言,则无论如何都将被评估。

  • 我从我的教科书上复制了一个简单的“计算器”示例,它接受2个值和一个运算符。但是,它不会检查输入的表达式是否有效。代码应该提示用户,直到输入正确的表达式。 我应该如何根据自己的风格来修正它?有什么更好的方法?

  • 逻辑运算符把各个运算的关系表达式连接起来组成一个复杂的逻辑表达式,以判断程序中的表达式是否成立,判断的结果是 true 或 false。 逻辑运算符是对布尔型变量进行运算,其结果也是布尔型,具体如表 1 所示。 表 1 逻辑运算符的用法、含义及实例 运算符 用法 含义 说明 实例 结果 && a&&b 短路与 ab 全为 true 时,计算结果为 true,否则为 false。 2>1&&3<4

  • and, or, not 其中,and 和 or 与 C 语言区别特别大。 在这里,请先记住,在 Lua 中,只有 false 和 nil 才计算为 false,其它任何数据都计算为 true,0 也是 true! and 和 or 的运算结果不是 true 和 false,而是和它的两个操作数相关。 a and b: 如果 a 为 false,则返回 a;否则返回 b a or b: 如果 a

  • 2.2.1关系表达式 a) 关系运算符 关系运算符就是关系比较符。Fortran中有六个关系运算符: 关系运算符 英语含义 所代表的数学符号 .GT. .GE. .LT. .LE. .EQ. .NE. > >= < <= == /= Greater Than Greater than or Equal to Less Than Less than or Equal to EQual to Not