क्या किसी को पता है कि जब मैं लूप के अंदर वेरिएबल को कॉल करता हूं तो उसने पहला मूल्य क्यों लिया? मैं पैलिंड्रोम बनाना चाहता हूं लेकिन कोड इस तरह है, क्या कोई मुझे समझा सकता है। मैं 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)
    }

}
go
-2
newbie1123 3 जून 2020, 01:01

2 जवाब

आपके पास प्रतीकों से अधिक और गलत तरीके से कम है। i >= 0 जांचता है कि कब मैं 0 से बड़ा या उसके बराबर हूं, जो कि यह शुरुआत से होगा क्योंकि आप i को उस स्ट्रिंग की लंबाई पर सेट कर रहे हैं।

0
Sam Smith 3 जून 2020, 01:09
क्या आप मुझे उदाहरण दे सकते हैं सर
 – 
newbie1123
3 जून 2020, 01:11

मेरे पास मेरे अपने प्रश्न का उत्तर है, यहाँ मेरा मतलब है

var kata, kebalikan string

fmt.Print("Kata :")
fmt.Scan(&kata)
panjang := len(kata) - 1
for i := panjang; i >= 0; i-- {
    kebalikan = kebalikan + fmt.Sprint(string(kata[i]))
}
if fmt.Sprint(kata) == fmt.Sprint(kebalikan) {
    fmt.Println(true)
} else {
    fmt.Println(false)
}
0
newbie1123 3 जून 2020, 01:26