Pi 输出输入 Swift
Pi Output In Swift
我正在尝试构建一个 degrees/radians 计算器。这是我的功能。
func degreesToRadians(degrees: Double) -> Double {
return degrees * (M_PI / 180)
}
func radiansToDegrees(radians: Double) -> Double {
return radians * (180 / M_PI)
}
degreesToRadians(90)
radiansToDegrees(M_PI/4)
度弧度 (90) returns 1.5707963267949
radiansToDegrees(M_PI/4) returns 45.0
我想在度数转弧度函数中实现,而不是 1.5707963267949 我希望输出为 π/2。这甚至可能吗?
谢谢。
如果您恰好想要:“π/2”,我认为使用 double 是不可能的。您可能会在 String 中得到它,但不会在数字中得到。我认为您最好的选择是采用可选的布尔值,在这种情况下,结果将作为 pi 的倍数返回。
degreesToRadians(90, resultAsMultipleOfPi:true)
如果此布尔值为真,则应返回 0.5。您可能需要进行一些四舍五入以获得四舍五入的数字。
如果仔细观察真正的 M_PI
,您会发现 math.h 中的预定义双精度值等于
#define M_PI 3.14159265358979323846264338327950288 /* pi */
如果您想要更精确,您可以声明并改用 long double 值。
要将90
度表示为π/2
,你要做的是
考虑degrees
超过180的分数(即degrees
的分子和180
的分母);
减去这个分数(即将分子和分母都除以 greatest common factor);在 90/180
的情况下,最大的公因数实际上是 90
,产生减少的分子 1
和减少的分母 2
;
结果作为分数的字符串表示形式,即类似于
"\(reducedNumerator)π/\(reducedDenominator)"
显然,如果分子或分母是 1
,那么您可以抑制字符串的那部分,但希望您能理解基本概念。
试一试。
可以直接使用M_PI常量。
如果你需要浮点格式就用这个,
let pi = Float(M_PI)
我正在尝试构建一个 degrees/radians 计算器。这是我的功能。
func degreesToRadians(degrees: Double) -> Double {
return degrees * (M_PI / 180)
}
func radiansToDegrees(radians: Double) -> Double {
return radians * (180 / M_PI)
}
degreesToRadians(90)
radiansToDegrees(M_PI/4)
度弧度 (90) returns 1.5707963267949 radiansToDegrees(M_PI/4) returns 45.0
我想在度数转弧度函数中实现,而不是 1.5707963267949 我希望输出为 π/2。这甚至可能吗?
谢谢。
如果您恰好想要:“π/2”,我认为使用 double 是不可能的。您可能会在 String 中得到它,但不会在数字中得到。我认为您最好的选择是采用可选的布尔值,在这种情况下,结果将作为 pi 的倍数返回。
degreesToRadians(90, resultAsMultipleOfPi:true)
如果此布尔值为真,则应返回 0.5。您可能需要进行一些四舍五入以获得四舍五入的数字。
如果仔细观察真正的 M_PI
,您会发现 math.h 中的预定义双精度值等于
#define M_PI 3.14159265358979323846264338327950288 /* pi */
如果您想要更精确,您可以声明并改用 long double 值。
要将90
度表示为π/2
,你要做的是
考虑
degrees
超过180的分数(即degrees
的分子和180
的分母);减去这个分数(即将分子和分母都除以 greatest common factor);在
90/180
的情况下,最大的公因数实际上是90
,产生减少的分子1
和减少的分母2
;结果作为分数的字符串表示形式,即类似于
"\(reducedNumerator)π/\(reducedDenominator)"
显然,如果分子或分母是
1
,那么您可以抑制字符串的那部分,但希望您能理解基本概念。
试一试。
可以直接使用M_PI常量。
如果你需要浮点格式就用这个,
let pi = Float(M_PI)