gpt4 book ai didi

if-statement - 换行打印执行流程

转载 作者:数据小太阳 更新时间:2023-10-29 03:03:19 26 4
gpt4 key购买 nike

package main

import (
"fmt"
"math"
)

func pow(x, n, lim float64) float64 {
if v := math.Pow(x, n); v < lim {
return v
} else {
fmt.Printf("%g >= %g\n", v, lim)
}
// can't use v here, though
return lim
}

func main() {
fmt.Println(
pow(3, 2, 10),
pow(3, 3, 20),
)
}

这段代码来自《围棋之旅》

期望:

9   
10
27 >= 20
20

输出:

27 >= 20    
9 20

这个我不太懂。帮帮我!

最佳答案

Println 函数将在一行中输出两个 pow 函数,然后在从 Println 函数返回后添加 \n

package main

import (
"fmt"
"math"
)

func pow(x, n, lim float64) float64 {
if v := math.Pow(x, n); v < lim {
return v
}else {
fmt.Printf("%g >= %g\n", v, lim)
}
// can't use v here, though
return lim
}

func main() {
fmt.Println(pow(3, 2, 10))
fmt.Println(pow(3, 3, 20))
}

Playground

10 是 first if case 永远不会打印的限制。

9
10
27 >= 20
20

因为pow函数是在函数之前返回的。

关于if-statement - 换行打印执行流程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49801922/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com