Go語言迴文檢查程式


在本教程中,我們將學習如何在 Go 程式語言中檢查迴文。我們將分別透過示例檢查數字和字串的迴文。

迴文是指一個單詞、數字、短語或其他符號序列,其反向讀取與正向讀取相同,例如單詞“civic”或“radar”,或數字如 22\2\22,或句子如“Mr. Owl ate my metal worm”。

示例 1:Go 語言程式程式碼,使用單個函式顯示數字是否為迴文

語法

Syntax of For loop
Initialize
for condition {
}
incrementor

初始化語句是可選的,它在 for 迴圈開始之前執行。

條件語句包含一個布林表示式,該表示式在迴圈的每次迭代開始時都會進行評估。如果條件語句的值為真,則迴圈執行。

增量語句在 for 迴圈的主體之後執行。在增量語句之後,條件語句再次進行評估,如果條件語句的值為假,則迴圈結束。

演算法

  • 步驟 1 − 匯入 fmt 包。

  • 步驟 2 − 開始函式 main ()

  • 步驟 3 − 宣告並初始化變數。

  • 步驟 4 − 使用 for 迴圈分析條件。

  • 步驟 5 − 使用 fmt.Printf () 列印結果。

示例

// GOLANG PROGRAM TO CHECK FOR PALINDROME // fmt package allows us to print anything on the screen. package main import "fmt" // start the function main () func main() { fmt.Println("Golang program to check for palindrome") // declare the variables var number,rem,temporary int var reverse int = 0 // initialize the number variable number = 45454 temporary=number // For Loop used for{ rem = number%10 reverse = reverse*10 + rem number /= 10 if(number==0){ break // Break Statement used to exit from loop } } if(temporary==reverse){ fmt.Printf("Number %d is a Palindrome",temporary) }else{ fmt.Printf("Number %d is not a Palindrome",temporary) } // print the result using fmt.Printf () function }

輸出

Golang program to check for palindrome
Number 26262 is a Palindrome

程式碼描述

  • 在上面的程式中,我們首先宣告 main 包。

  • 我們匯入了包含 fmt 包檔案的 fmt 包。

  • 現在開始 main () 函式,此函式是可執行程式的入口點。它不接受任何引數也不返回任何值。

  • 宣告四個整數變數。將 reverse 變數初始化為 0,將 number 變數初始化為您想要的值。

  • 使用 for 迴圈 − 條件在 if 語句中給出,停止執行由 break 語句說明。

  • 最後使用 fmt.Printf () 將結果列印到螢幕上,它根據格式說明符進行格式化並寫入標準輸出。

示例 2:Go 語言程式程式碼,使用兩個獨立函式檢查字串是否為數字

語法

for i, j:= range variable{
   // statement..
}

其中 I = 首個索引值,j = 最後一個索引值

i 和 j 是被稱為迭代變數的變數,並已賦值。

範圍表示式在迴圈開始之前評估一次。

演算法

  • 步驟 1 − 匯入 fmt 包。

  • 步驟 2 − 開始 main () 函式。

  • 步驟 3 − 宣告並初始化字串變數。

  • 步驟 4 − 呼叫 Palindrome () 函式。

  • 步驟 5 − 建立 Palindrome () 函式。

  • 步驟 6 − 使用 for 迴圈分析條件。

  • 步驟 7 − 使用 fmt.Printf () 列印結果。

示例

// GOLANG PROGRAM TO CHECK FOR PALINDROME // fmt package allows us to print anything on the screen. package main import "fmt" // start the function main () func main() { // declare and initialize the string str := "MADAM" fmt.Println("Golang program to check palindrome,\n Given Word =",str) // calling the function Palindrome(str) // print the result using fmt.Printf () function fmt.Printf("'%s' is palindrome\n", str) } func Palindrome(str string) bool { lastIdx := len(str) - 1 // using for loop for i := 0; i < lastIdx/2 && i < (lastIdx-i); i++ { if str[i] != str[lastIdx-i] { return false } } return true }

輸出

Golang program to check palindrome,
Given Word = MADAM
'MADAM' is palindrome

程式碼描述

  • 在上面的程式中,我們首先宣告 main 包。

  • 我們匯入了包含 fmt 包檔案的 fmt 包。

  • 現在開始 main () 函式,此函式是可執行程式的入口點。它不接受任何引數也不返回任何值。

  • 接下來,我們宣告並初始化字串變數以查詢它是否為迴文。

  • 然後我們呼叫 Palindrome() 函式(我們稍後在函式中建立),以檢查給定的字串是否為迴文。

  • 在上面的函式中,我們使用 for 迴圈來分析程式碼的條件,其中 i = 首個索引,變數 lastIdx 將是最後一個索引。我們按預期從 i=0 開始 for 迴圈,並遍歷字串。這樣做時,我們設定另一個變數 lastIdx =len(str)-1。

  • 如果字串 i 不等於字串 lastIdx – i,則返回 false,否則返回 true,表示字串是迴文。

  • 最後,使用 fmt.Printf () 函式列印結果,該函式根據格式說明符進行格式化並寫入標準輸出,說明給定的字串是否是迴文。

結論

在以上兩個示例中,我們已成功編譯並執行了 Go 語言程式程式碼以檢查迴文。

在第一個示例中,我們展示瞭如何使用單個函式來判斷給定的數字是否為迴文。

在第二個示例中,我們展示瞭如何判斷給定的字串是否為迴文。

我們在兩個示例中都使用了 for 迴圈。我們在示例 1 中使用了簡單的 for 迴圈,在示例 2 中使用了簡單的範圍 for 迴圈。

更新於:2022年11月16日

4K+ 次瀏覽

開啟您的職業生涯

透過完成課程獲得認證

開始學習
廣告
© . All rights reserved.