我试图用我写的方法叫Euelr圈,该方法使用名为Turtle的类。

这是我写的:

public class turtleAa {


public static void main(String[] args) {
int number = LineInput.readInt();
euelr(number);

}

public static void euelr(int n){

    Turtle leonardo = new Turtle();
    leonardo.tailDown();
    for (int i=1; i<=n; i++){
    leonardo.moveForward(50);
    leonardo.turnRight(90);
    leonardo.moveForward(50);
    leonardo.turnLeft(135);
    leonardo.moveForward(35);
    leonardo.turnLeft(90);
    leonardo.moveForward(35);
    leonardo.turnLeft(90);
    leonardo.moveForward(70.71067812);
    leonardo.turnLeft(135);
    leonardo.moveForward(50);
    leonardo.turnLeft(135);
    leonardo.moveForward(70.71067812);
    leonardo.turnLeft(135);
    leonardo.moveForward(50);
    leonardo.turnLeft(?)

}

}}


我想绕一个完整的圆圈of Euler drawnings
这有两个主要问题:

不能低估如何用i和n正确控制角度。

乌龟莱昂纳多正在画线。

谢谢。

最佳答案

那这个呢?

leonardo.turnLeft(360/n);


当然,这仅适用于360的除数,但其中有很多(1,2,3,4,5,6,8,9,10,12,15,18,20 ...)。如果您的turnLeft方法接受非整数(即doublefloat)值,请使用

leonardo.turnLeft(360.0/n);


相反(它也将适用于7,11,...-大约。)

10-02 11:20