【发布时间】:2020-03-25 19:19:49
【问题描述】:
给定一个波的频率,确定从 0 到 7 的八度音阶和调号,其中 0 是 C,6 是 B,C# 是 7,A# 是 11。
您可以使用一系列 if 语句来解决它,但必须有更好的方法来解决它。我的项目使用的语言是 Clojure,但我猜任何解决方案都可以轻松移植到任何语言。
【问题讨论】:
-
cond不适用于这种情况? -
是的,但这与一系列 if 相同。依稀记得曾经见过一个使用 Math/log 的解决方案,但不知道在哪里。
标签: math clojure signal-processing