为了账号安全,请及时绑定邮箱和手机立即绑定

如何在任何数字之间找到偶数和奇数?

如何在任何数字之间找到偶数和奇数?

泛舟湖上清波郎朗 2021-07-12 16:13:46
我正在制作一个程序作为我在 java 中学习的培训,它可以查看用户输入的任何数字之间的偶数和奇数,如果我在开始时输入偶数,它会显示消息的问题你没有输入偶数如果用户在开始时输入了一个奇数,我只是希望他首先查看此消息public static void main(String[] args) {  isevennumber(1, 5);}public static void isevennumber(int startwith, int endwith) {    for (int i = startwith; i <= endwith; i++) {        if (i % 2 == 0) {            System.out.println("you have entered an even number which is " + i);        } else  {            System.out.println("you haven't entered an even number");        }    }}输出是you haven't entered an even numberyou have entered an even number which is 2you haven't entered an even numberyou have entered an even number which is 4you haven't entered an even number抱歉有任何错误,这是我在这里的第一篇文章
查看完整描述

3 回答

?
四季花海

TA贡献1811条经验 获得超5个赞

只需再添加一个if以检查这是否是第一次迭代:


public static void isevennumber(int startwith, int endwith) {

    for (int i = startwith; i <= endwith; i++) {

        if (i % 2 == 0)

            System.out.println("you have entered an even number which is " + i);

        else if (i == startwith)

            System.out.println("you haven't entered an even number");

    }

}


查看完整回答
反对 回复 2021-07-23
?
隔江千里

TA贡献1906条经验 获得超10个赞

这里的问题是,每次在循环中数字不是奇数时,它都会打印出您没有输入偶数。


你可以这样试试:


  public static void main(String[] args) {

    isevennumber(1, 5);

  }


  public static void isevennumber(int startwith, int endwith) {

      List<Integer> evenNumbers = new ArrayList();

      for (int i = startwith; i <= endwith; i++) {

          if (i % 2 == 0) {

              evenNumbers.add(i);

          }

      }


      if (evenNumbers.isEmpty()) {

          System.out.println("you haven't entered an even number");

          return;

      }

      System.out.println("you have entered the following even numbers " + evenNumbers);

  }

这将打印出:


 you have entered the following even numbers [2, 4]


查看完整回答
反对 回复 2021-07-23
?
BIG阳

TA贡献1859条经验 获得超6个赞

您错过了一个步骤,这里的问题是每次循环中数字不是奇数时,它都会打印您没有输入偶数。


以下是适合您的正确解决方案。


    public static void isevennumber(int startwith, int endwith) {

        for (int i = startwith; i <= endwith; i++) 

        {

            if (i % 2 == 0)

            {

            System.out.println("you have entered an even number which is " + i);

            }            

            else if (i == startwith)

            {

                System.out.println("you haven't entered an even number");

            }

        }

    }


查看完整回答
反对 回复 2021-07-23
  • 3 回答
  • 0 关注
  • 160 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信