Java程式:求前N個奇數和偶數的和


在本文中,我們將編寫一個 Java 程式來求前 n 個奇數和偶數的和。根據一個數除以 2 是否餘 0 或 1,可以將其分為兩類。**奇數**是指不能被 2 整除的數,或者說這些數除以 2 餘 1。換句話說,可以用 **‘2n+1’** 的形式表示。偶數是指能被 2 整除的數,即這些數除以 2 餘 0。換句話說,可以用 **‘2n’** 的形式表示。

示例

Input: n = 5 
Output: Sum of first 5 Odd Numbers is: 25
Sum of first 5 Even Numbers is: 30

說明:輸入為 5,前 5 個奇數為 1, 3, 5, 7, 9,和為 1+3+5+7+9 = 25;前 5 個偶數為 2, 4, 6, 8, 10,和為 2+4+6+8+10 = 30。

Input: n = 7 
Output: Sum of first 5 Odd Numbers is: 49
Sum of first 5 Even Numbers is: 56

說明:輸入為 5,前 5 個奇數為 1, 3, 5, 7, 9, 11, 13,和為 1+3+5+7+9+11+13 = 49;前 5 個偶數為 2, 4, 6, 8, 10, 12, 14,和為 2+4+6+8+10+12+14 = 56。

我們將討論兩種不同的方法來求 n 個奇數和 n 個偶數的和。

方法一:使用 for 迴圈

在這種方法中,我們將使用 Java for 迴圈來求 n 個奇數和 n 個偶數的和。我們將遵循以下步驟:

  • 初始化一個整數 n。

  • 使用 for 迴圈,不斷新增奇數和偶數,直到條件為假,然後列印和。

for 迴圈是 Java 中的一種迭代語句,它執行程式碼直到條件失敗。

語法

以下是 for 迴圈的語法:

for (initialization; condition; updation) {
   // code 
}
  • **初始化** - 我們需要用一個值初始化迴圈,並且只執行一次。

  • **條件** - 我們需要指定一個條件,該條件指定迴圈將執行多少次。迴圈將執行直到此條件為真。

  • **更新** - 我們需要指定迴圈應該遞增的值。它更新迴圈的初始化值。

示例

在下面的示例中,我們使用 for 迴圈,它從 i = 1 迭代到 2 * n,這樣我們將以 2 為增量並新增值到 **oddSum** 變數中,得到奇數的和。現在,編寫另一個迴圈,此迴圈從 i = 2 迭代到 2*n,我們每次遞增 2 並將值新增到 **evenSum** 變數中,得到偶數的和。因此,我們最終列印 oddSum 和 evenSum。

import java.util.*;
public class Main {
   public static void main(String[] args) {
      int n = 5;
      int oddSum = 0;
      for (int i = 1; i <= 2 * n; i += 2) {
         oddSum += i;
      }
      int evenSum = 0;
      for (int i = 2; i <= 2 * n; i += 2) {
         evenSum += i;
      }
      System.out.println("Sum of first " + n + " Odd Numbers is: " + oddSum);
      System.out.println("Sum of first " + n + " Even Numbers is: " + evenSum);
   }
}

輸出

Sum of first 5 Odd Numbers is: 25
Sum of first 5 Even Numbers is: 30

時間複雜度:O(2*N) 輔助空間:O(1)

方法二:使用公式

在這種方法中,我們將使用等差數列公式來求 n 個偶數和奇數的和。

公式

Sum of first n even numbers= n * (n+1)
Sum of first n odd numbers= n*n

圖示

Let us consider n = 4;
First 4 even numbers are 2,4,6,8.
Using formula ⇒  4(4+1) = 4*5= 20
So the sum of first four even numbers is 2+4+6+8 = 20.
First 4 odd numbers are 1,3,5,7.
So sum of first four  odd numbers is  1+3+5+7=16
Using formula ⇒  4*4=16 

演算法

  • 初始化一個整數 n。

  • 用零初始化兩個變數 oddSum 和 evenSum。

  • 現在,使用公式求出 oddSum 和 evenSum。

  • 列印 oddSum 和 evenSum

示例

在下面的示例中,我們使用公式來求前 N 個奇數和偶數的和。我們定義兩個變數 oddSum 和 evenSum,並分別將值儲存到這些變數中。最後,我們列印 oddSum 和 evenSum。

import java.util.*;
public class Main {
   public static void main(String[] args) {
      int n = 5;
      int oddSum = n * n;
      int evenSum = n * (n + 1);
      System.out.println("Sum of first " + n + " Odd Numbers: " + oddSum);
      System.out.println("Sum of first " + n + " Even Numbers: " + evenSum);
   }
}

輸出

Sum of first 5 Odd Numbers: 25
Sum of first 5 Even Numbers: 30 

時間複雜度:O(1) 輔助空間:O(1)

因此,在本文中,我們討論瞭如何列印前 n 個奇數和偶數之和的不同方法。

更新於:2023年4月11日

3K+ 次瀏覽

開啟你的職業生涯

完成課程獲得認證

開始學習
廣告