【问题标题】:Program that takes user input and lists multiples of 7 according to that number (Java)接受用户输入并根据该数字列出 7 的倍数的程序(Java)
【发布时间】:2017-05-09 10:28:56
【问题描述】:

这是我创建一个程序的代码,该程序接受用户输入并列出与该数字相关的 7 的倍数。

例如:用户输入3,我需要输出为“7,14,21”。

目前,如果我输入小于 7 的数字,程序会执行而不打印输出,但只要我输入 7 或任何大于 7 的数字,程序就会编译并打印出我需要的内容。

所以我需要解决的问题是能够输入小于 7 的数字并接收正确的输出。

提前致谢!

import java.util.Scanner;

public class MultiplesOfSeven {

  public static void main(String[] args){
    int j = 0;

    Scanner scan = new Scanner(System.in);
    int n = scan.nextInt();

    for(j = 1; j <= n; j++){
        if(j % 7 == 0){
            System.out.print(j + " ");

            for (int counter = 0 ; counter < n ; counter++) {
                System.out.print(j*(2 + counter) + " ");
            }       
        }
    }        
}

【问题讨论】:

  • 又是考试时间了……
  • 有些人不费吹灰之力想拿到大学学位的比例很低。
  • 正准备迎接一个。哈哈...@DKIT

标签: java math operators counter


【解决方案1】:

不要过度考虑这里的循环。作为替代方案,两者都意味着您可以委托% 检查,请考虑

for (j = 0; j < n; ++j){
    // output (j + 1) * 7;
}

或者,由于您必须在三个地方写7,所以不太优雅

for (j = 7; j <= n * 7; j += 7){
    // output j
}

【讨论】:

    【解决方案2】:

    当您输入低于 7 的数字时,此代码会阻止您的程序打印任何内容:

    if(j % 7 == 0){
    

    % 是模运算符。 它说:如果我数到 (j) 的数字除以 7 时没有提示,请执行括号中的操作。

    所以你要做的就是计算输入的数字(使用 for 循环)并打印当前数字乘以 7。

    【讨论】:

      【解决方案3】:

      它没有打印任何东西,因为当你输入的数字小于七且大于零时,里面的代码

      if(j%7==0)
      

      不会被执行。我觉得你的代码应该是这样的。

      for (j = 1; j <= n; j++) {
              if (j % 7 == 0) {
                  System.out.print(j + " ");
              }
              for (int counter = 0; counter < n; counter++) {
                  System.out.print(j * (2 + counter) + " ");
              }
          }
      

      【讨论】:

        【解决方案4】:
        import java.util.Scanner;
        public class MultiplesOfSeven {
            public static void main(String[] args) {
                Scanner scan = new Scanner(System.in);
                int n = scan.nextInt();
                for(int j = 1; j <= n; j++) {
                    System.out.print(7*j + " ");
                }        
            }
        }
        

        这是您问题的简单解决方案。这适用于所有情况。保持代码简单祝你好运。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2016-07-22
          • 1970-01-01
          • 2016-07-22
          • 2014-12-08
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多