Go語言程式計算小於等於N的所有奇數之和


在本教程中,我們將討論在 Go 語言程式設計中查詢小於等於 'N' 的所有奇數之和的程式。

但在編寫此程式碼之前,讓我們簡要討論一下奇數。

奇數

奇數是指不能被 2 整除的數,當一個數除以 2 時,其餘數始終為 1。檢查一個數是否為奇數的一個簡單方法是檢查其最後一位數字。如果最後一位數字是 1、3、5、7 或 9,則該數稱為奇數。

方法 1:遍歷前 n 個奇數並將其相加

示例

  • 數字 = 4

    前 4 個奇數之和 = 16

    前 4 個奇數為 - 1、3、5 和 7

    這些數字之和 = 1 + 3 + 5 + 7

    = 16

演算法

步驟 1 − 宣告一個變數 'N' 用於儲存數字。

步驟 2 − 宣告一個變數 'nextOdd' 用於儲存數字 1。

步驟 3 − 宣告一個變數 'sum' 用於儲存奇數之和,並將其初始化為 0。

步驟 4 − 建立一個從 1 開始的 for 迴圈,並執行到它小於或等於 'N'。

步驟 5 − 透過將下一個奇數加回 sum 來計算 sum,直到 for 迴圈結束。

步驟 6 − 所有奇數之間的差值為 2。因此,透過將 2 加到現有數字來計算下一個奇數。

步驟 7 − for 迴圈結束後,列印儲存在 'sum' 中的結果。

示例

package main // fmt package allows us to print formatted strings import "fmt" func main() { fmt.Println("Program to calculate the sum of all odd numbers up to N \n") // declaring variable ‘N’ for storing the number var N int = 10 // declaring variable ‘nextOdd’ for storing the next odd number var nextOdd int = 1 // declaring variable ‘sum’ for storing the sum of all odd numbers up to N var sum int = 0 for x := 1; x <= N; x++ { // calculating the I’m sum of odd numbers sum = sum + nextOdd // calculating the next odd number nextOdd = nextOdd + 2 } fmt.Println("Finding the sum of first", N, "Odd numbers") fmt.Println("Therefore, Sum of all odd numbers up to N : ", sum) }

輸出

Program to calculate the sum of all odd numbers up to N 

Finding the sum of first 10 Odd numbers
Therefore, Sum of all odd numbers up to N :  100

程式碼描述

  • var nextOdd int = 1 − 我們將在此變數中儲存下一個奇數的值。最初,我們將值 1 分配給它,因為奇數從數字 1 開始。

  • var sum int = 0 − 我們將在此變數中儲存奇數的最終和,並在開始時將其初始化為 0。

  • for x := 1; x <= N; x++ − 此 for 迴圈將用於計算奇數之和。它將從 1 開始,並執行到 'x' 的值小於或等於 'N'。

    • sum = sum + nextOdd − 在這裡,我們透過將下一個奇數加回 sum 來計算 sum,直到 for 迴圈結束。

    • nextOdd = nextOdd + 2 − 這用於計算下一個奇數。所有奇數之間的差值為 2,這就是為什麼我們新增 2 以生成下一個奇數。

  • fmt.Println("因此,小於等於 N 的奇數之和:", sum) − 列印計算出的所有奇數直到 'N' 的和。

方法 2:使用計算所有奇數之和的公式

公式

$$\mathrm{前 'n' 個奇數之和\, =\, n \ast n}$$

示例

  • 數字 = 10

    前 10 個奇數之和 = N * N

    = 10 * 10

    = 100

演算法

步驟 1 − 宣告一個變數用於儲存數字 - 'N'。

步驟 2 − 宣告一個變數用於儲存所有奇數之和 - 'sum' 並將其初始化為 0。

步驟 3 − 使用公式 N * N 計算 sum,並將其儲存在函式 calculateSumOfOddNumbers() 中的 'sum' 變數中。

步驟 4 − 列印計算出的 sum,即儲存在變數 'sum' 中的值。

示例

package main // fmt package allows us to print formatted strings import "fmt" func calculateSumOfOddNumbers(N int) int { // declaring variable ‘sum’ for storing the sum of all odd numbers var sum int = 0 // calculating the sum sum = N * N return sum } func main() { // declaring variable ‘N’ for storing the number var N int = 10 var sum int fmt.Println("Program to calculate the sum of all odd numbers up to N \n") // calling function calculateSumOfOddNumbers() for // calculating the sum of all odd numbers sum = calculateSumOfOddNumbers(N) // printing the results fmt.Println("Finding the sum of first", N,"Odd numbers") fmt.Println("Therefore, Sum of all odd numbers up to N : ", sum) }

輸出

Program to calculate the sum of all odd numbers up to N 

Finding the sum of first 10 Odd numbers
Therefore, Sum of all odd numbers up to N :  100

程式碼描述

  • calculateSumOfOddNumbers(N int) int − 這是我們計算奇數之和的函式。該函式具有資料型別為 int 的變數 'N' 作為引數,並且還具有資料型別為 int 的返回值。

  • sum = N * N − 我們正在使用此公式 - N * N 查詢奇數之和。

  • return sum − 用於返回計算出的所有奇數之和。

  • sum = calculateSumOfOddNumbers(N) − 我們正在呼叫函式 calculateSumOfOddNumbers() 並將計算出的值儲存在 'sum' 變數中。

  • fmt.Println("因此,奇數之和:", sum) − 列印計算出的所有奇數之和。

結論

這都是關於使用兩種方法計算小於等於 N 的奇數之和。就時間複雜度和模組化而言,第二種方法更好。您可以使用這些教程進一步探索 Go 語言程式設計。

更新於: 2022年11月21日

430 次檢視

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告