我正在学习Clojure,并使用Quil。我想知道如何将for循环转换为Clojure:
以下是我在Java或类似语言中的实现方式:
for ( int i = 0; i < numSides; i++ ) {
float posX = cos( theta * i );
float posY = sin( theta * i );
ellipse( posX, posY, polySize, polySize );
}
我的Clojure尝试:
(let [theta (/ PI num-sides)
angle (range 0 num-sides)
pos-x (cos (* theta angle))
pos-y (sin (* theta angle))]
(dorun (map #(ellipse % % % %) pos-x pos-y poly-size poly-size)))