我正在尝试编写一个程序,该程序接受2个大于0的整数值,并打印最接近15的那个值。如果它们都结束,则打印0。这是一个假定的知识问题,但是它使我非常困惑,并且我的代码看起来错误。

我已经尝试过尝试并用谷歌搜索类似的例子,但是有些例子对我来说没有意义,所以我认为最好问一下。

    public class W221 {
        public static void main(String[] args) {
            while (JPL.test()) {

  Scanner kb = new Scanner (System.in);
  int num = kb.nextInt();
  int num2 = kb.nextInt();
  int value1;
  int value2;

  if(num <= 15 || num2 <= 15){
    value1 = 15 - num;
    value2 = 15 - num2;

    if(value1>value2){
      if(value1 > 0){
        System.out.println(" " + num2);
      }
    }
    else if(value1<value2){
      if(value2 > 0){
        System.out.println(" " + num);
      }
    }
  }
  else{
    System.out.println(0);
                }
            }
        }
    }


编辑:我正在重新编写代码而不需要任何阵列,很快就会更新代码。

编辑2:以上我已更新代码

编辑3:我已经完成删除数组,并且一切都成功,除了'value1或value2'整数得到负数时。我已经仔细阅读了答复,但对如何更改代码以解决此问题感到困惑

最佳答案

将代码更改为:

if(first>second){
  return num;
}
else if(first<second){
  return num;
}

关于java - 给定2个int值,发现更接近15,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38799464/

10-11 09:31