2016-01-18 36 views
-3

我知道如何顯示奇數,但無法弄清楚如何顯示奇數的總和以便得到1 4 9 16 25 36 49 64 81 100輸出 的想法是使用Java:爲了得到1 4 9 16作爲輸出,添加奇數的最佳方法是什麼

  • 1 = 1
  • 1 + 3 = 4
  • 4 + 5 = 9

這個想法是爲了避免乘法。 (我知道這將是最簡單的解決方案)

我至今是:

public static void main(String[] args) { 

    for(int i=1; i <= 100; i++){ 

      if(i % 2 != 0){ 
        System.out.print(i + " "); 
      } 
    } 

}

回答

2

你有循環。所有你缺少的是加法:

int num = 0; 
for(int i=1; i <= 100; i++){ 
    if(i % 2 != 0) { 
     num = num + i; 
     System.out.print(num + " "); 
    } 
} 
+0

謝謝。有用 ! – Julia1677

+0

@JuliaBrosseau不客氣! – Eran

0

由於他們是正方形:兩個方塊之間的差異始終是它的基礎兩次減1:

int num = 0; 
for(int i=1; i <= 100; i++){ 
     num += i+i-1; 
     System.out.print(i + " "); 
} 
1

如果目的是爲了避免乘法,然後取而代之的是分割(或者說餘數)似乎毫無意義。

你想要的是使用+=操作:

int num = 0; 
for (int i = 1; i <= 100; i += 2) { 
    num += i; 
    System.out.print(num + " "); 
} 

輸出

1 4 9 16 25 36 49 64 81 100 121 144 169 196 225 256 289 324 361 400 441 484 529 576 625 676 729 784 841 900 961 1024 1089 1156 1225 1296 1369 1444 1521 1600 1681 1764 1849 1936 2025 2116 2209 2304 2401 2500 

注意:這僅僅是一個優化answer by Eran的版本。

相關問題