为了账号安全,请及时绑定邮箱和手机立即绑定

我怎样才能制作一个数字金字塔循环,但相反

我怎样才能制作一个数字金字塔循环,但相反

Go
德玛西亚99 2023-07-17 16:28:24
当我尝试用 golang 逆向制作数字金字塔时遇到问题我已经可以用这段代码制作一个数字金字塔:var (        input, bil int    )    fmt.Scanln(&input)    bil = 9    for b := 1; b <= input; b++ {        for c := input; c >= b; c-- { //spasi            fmt.Print(" ")        }        for d := 1; d <= b; d++ { //bintang            fmt.Print(bil)            if bil == -1 {                bil = 9            }            bil = bil - 1        }        fmt.Println()    }输入 :5输出 :     9    87   654  3210 98765我怎样做一个像这样的反向的输入:5输出    9   78  456 012356789
查看完整描述

1 回答

?
吃鸡游戏

TA贡献1829条经验 获得超7个赞

只需更改计算当前数字的方式即可 ( fmt.Print(bil-d))


func main() {

    var (

        input, bil int

    )


    fmt.Scanln(&input)

    bil = 9

    for b := 1; b <= input; b++ {

        for c := input; c >= b; c-- {

            fmt.Print(" ")

        }


        for d := b - 1; d >= 0; d-- {

            v := bil - d

            if v < 0 {

                v = v%10 + 10

            }

            fmt.Print(v)

        }

        bil -= b

        if bil < 0 {

            bil = bil%10 + 10

        }

        fmt.Println()


    }

}

请注意,我还更改了边界条件的处理。


查看完整回答
反对 回复 2023-07-17
  • 1 回答
  • 0 关注
  • 50 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信