繁体   English   中英

Java:创建方法以打印1到n之间的3的所有倍数吗?

[英]Java: Create method to print all multiples of 3 between 1 and n?

因此,问题是要求创建一个方法,该方法将整数x作为参数并打印出0-> x的所有整数,该整数是3的倍数。

我可以这样打印出三除x的次数:

  public int Threes(int x){

    int i = 0;
    for(int counter = 1; counter <= x; counter++){
        if (counter % 3 ==0){
            i ++;
        }

    }
        return i;

但我不确定如何打印3的每一个倍数!?

for(int counter = 1; counter <= x; counter++){
    if (counter % 3 ==0){
        System.out.println(counter);
    }

}

更快的方法是增加3

public void Threes(int x) {
    for (int counter = 3; counter <= x; counter = counter + 3) {
        System.out.println(counter);
    }
}

该循环将直接跳到3的倍数,而不是对每个数字进行计数,而不必为每次迭代进行模检查。 因为我们知道1和2不是3的倍数,所以我们在循环开始时就跳到3。 如果输入恰好小于3,则不会打印任何内容。 另外,该函数应该为void因为您要打印而不返回任何内容。

(您的标题是1 to n ,但您的问题是0 to n ,因此,如果您实际上需要从0 to n ,则将counter的声明更改为int counter = 0;

杰森·艾勒(Jason Aller)哇,简直如此优雅。 这个数字的基础是从300减到3,再减3。

public class byThrees {

public static void main(String[] args) {
    for (int t = 100; t >= 0; t--) {
        System.out.println(t*3); 

在Java中使用For循环的最佳实践。

public class MultiplesOfThree {

    public static void main(String []args){
        for (int m = 1; m<=12; m++){
            System.out.println(m*3);
        }  
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM