【问题标题】:Interval in Java with user choosing min and max valueJava中的间隔,用户选择最小值和最大值
【发布时间】:2018-09-24 22:12:19
【问题描述】:

我已经在这个问题上坐了 3 个小时,我开始感到非常沮丧。我有一些来自学校的作业,我应该解决并提交给老师/学生。我已经解决了所有问题,除了一个我无法以任何方式解决的问题。

所以,这个问题的说明如下:

该方法应询问用户选择最小和最大数字的时间间隔。该方法将写入一系列从最小值开始的数字,然后是每 7 个数字。它永远不应该写一个大于最大值的数字。 澄清(示例):

Min = 26
Max = 57

程序写道:26, 33, 40, 47, 54

这是我的代码:

String minimum, maximum;
    int mini, maxi;

        minimum = JOptionPane.showInputDialog("Insert smallest number");
        mini = Integer.parseInt(minimum);
        maximum = JOptionPane.showInputDialog("Insert biggest number");
        maxi = Integer.parseInt(maximum);
        for(int i = mini ; i <= maxi ; i++ ) {
        if(i<maxi) {
            System.out.print( mini + ", ");
        } else {
            System.out.print( mini );
        }
        mini +=7;

我知道i &lt;= maxi ; 做了什么,但我不知道用什么代替它。我试图想出一个公式来让它工作,但每次都失败了……我只学习了一个星期的 Java,所以请放轻松。我希望有一个善良的灵魂可以为我澄清这一点。当我有更多的知识时,我会回报社区。干杯。

【问题讨论】:

  • i += 7 应该替换 i++ 然后你可以打印 i 而不是 mini
  • 天哪,我为什么没想到...你真是个好人,非常感谢你不仅帮助了我,而且让我明白为什么它现在有效。我的大脑现在可以休息了,因为我再次感到平静:)))

标签: java input intervals


【解决方案1】:

一个简单的方法是将mini更改为i,除了i的分配,然后将i++更改为i +=7

for(int i = mini ; i <= maxi; i+=7) {
    if(i<maxi) {
        System.out.print(i + ", ");
    } else {
        System.out.print(i);
    }       
}

输出:

26, 33, 40, 47, 54

【讨论】:

  • 非常感谢伙计!你和迪伦帮了我。我知道有一个简单的解决方案,我的大脑只是因为几个小时的错误思考而过热。这个社区是最好的。我希望你有一个美好的夜晚(Y)
【解决方案2】:

你可以使用这个解决方案:

 for(; mini <= maxi ; mini+=7 ) {
        if(mini <maxi) {
            System.out.print( mini + ", ");
        } else {
            System.out.print( mini );
        }
}

【讨论】:

    【解决方案3】:

    真的没有必要再次检查 i 是否小于 maxi, 我想这是为了逗号,但可以简化如下。

     for(int i = mini ; i <= maxi; i+=7) {System.out.println(i); }
    

    【讨论】:

      【解决方案4】:

      您不需要更改 mini 值,保持原样并使用 i 代替 mini 进行 for 循环,应该这样做,您还想打印最后一个逗号吗?

      for(int i = mini ; i <= maxi;i=i+7) {
          if(i<maxi) {
              System.out.print( i + ", ");
          }   
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2019-02-09
        • 2014-12-01
        • 1970-01-01
        • 1970-01-01
        • 2015-02-22
        • 1970-01-01
        • 2014-02-22
        相关资源
        最近更新 更多