2014-01-28 94 views
0

所以問題是要求創建一個方法,它將一個整數x作爲參數,並打印出0-> x的所有整數爲3的整數。Java:創建方法在1和n之間打印所有3的倍數?

我可以打印出的次數,像這樣除以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每個多!?

+0

如果(計數%3 == 0){ 我++ ;的System.out.println(計數器); } – WeMakeSoftware

+0

該程序不打印三次除以'x'的次數。相反,它會返回少於'x' FYI的'3'的倍數 – apnorton

回答

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

} 
3

一個更快的方法是通過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需要,然後更改聲明counterint counter = 0;

相關問題