2015-09-08 38 views
2

這裏就是我試圖複製:施氮量正在制定

目前,我的代碼如下:

public void boxes() { 
    setLocation(20,20); 
    for(int j =0; j < 5; j = j+1) { 
    setLocation(20+50*j,20+50*j); 
     for (int i= 0; i<4; i= i+1) { 
      move(600-(50*j)); 
      turn(90); 
    } 
    } 
} 

,其結果是:

請不要寫我任何代碼,我都非常喜歡只是一個一般的解釋,我如何才能使它被繪製的盒子不會在同一點結束。我一直試圖弄清楚過去兩個小時沒有運氣,我現在擁有的是迄今爲止我所獲得的最好成績。謝謝!

這是基於http://www.greenfoot.org/scenarios/3535

+0

什麼盒子?這個擺動相關的一個還是什麼? –

+0

第一幅圖像中的正方形與正方形中心的座標相同。而且你還需要參數化廣場的寬度和高度,我想。 – Juvanis

+0

@FastSnail我是Java的新手,這只是一個關閉綠腳的項目,它有一條畫直線的烏龜。我試圖讓它在框內畫框 –

回答

2

問題是與將傳遞給move()函數值時,它應該是:

move(600-(50*j*2)); 

的原因是正方形的各邊的長度應該比前一個平方的偏移量縮短兩倍,因爲它開始更深offset單位並且更快地結束offset個單位(在這種情況下爲offset=50)。

+0

哦哇,非常感謝你的解釋!沒想到這是一個簡單的修復.. –

0

j選擇下一個正方形。 問問自己:

  • 高興知道:圖紙的終點是開始點
  • 相同,也可以由內而外(50,50)更開始。你如何從現有終點
  • 新長提請來有多少小