仅从循环 GOLANG 中获取第一个值

有谁知道为什么当我在循环内调用变量时它取第一个值?我想制作回文,但代码就是这样,有人可以解释一下。我是 GO 新手


    package main


    import "fmt"


    func main() {

        var kata, kosong, kebalikan, katanya string


    fmt.Print("Kata :")

    fmt.Scan(&kata)

    panjang := len(kata) - 1

    for i := panjang; i >= 0; i-- {

        kebalikan = kosong + fmt.Sprint(string(kata[i]))

        fmt.Print(kebalikan)

    }

    fmt.Print("\n")

    for i := 0; i <= panjang; i++ {

        katanya = kosong + fmt.Sprint(string(kata[i]))

        fmt.Print(katanya)

    }

    fmt.Println(katanya)

    fmt.Println(kebalikan)

    if fmt.Sprint(katanya) == fmt.Sprint(kebalikan) {

        fmt.Println(true)

    } else {

        fmt.Println(false)

    }


}


小怪兽爱吃肉
浏览 228回答 2
2回答

ibeautiful

你有你的大于和小于符号错误的方式。i >= 0检查 i 何时大于或等于 0,因为您将 i 设置为该字符串的长度,所以将从一开始就进行检查。

缥缈止盈

我从我自己的问题中得到了答案,我的意思是var kata, kebalikan stringfmt.Print("Kata :")fmt.Scan(&kata)panjang := len(kata) - 1for i := panjang; i >= 0; i-- {&nbsp; &nbsp; kebalikan = kebalikan + fmt.Sprint(string(kata[i]))}if fmt.Sprint(kata) == fmt.Sprint(kebalikan) {&nbsp; &nbsp; fmt.Println(true)} else {&nbsp; &nbsp; fmt.Println(false)}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go