我的目標是建立一個5x5的圖像網格。在下面的代碼中,row
,col
和rowcol
被創建爲精靈本地的變量,並且newcol
,newrow
和cats
是全局的。 (順便說一下,纔有可能知道哪些變量是局部的,這是全球性的?這很容易忘記或犯錯。)克隆網格
的結果只有一個5X1格,如在這裏看到。
我不清楚這些語句的執行順序。 when I start as a clone
在第二次被叫到add_cat
之前或之後被叫到嗎?我的試探性結論是事後得到調用,但克隆的全局變量似乎包含事先提供的值。
當我試圖用ask
和say
和wait
命令進行調試時,結果變化很大。在一些地方添加這樣的暫停可以完全解決問題,從而產生5x5的網格。在其他地方,他們造成了1x5的網格。
主要問題是:如何解決這個問題,使它產生一個5x5網格?
很好的解釋,直上我的設置關於Scratch如何工作的幾點意見。類似於您的遞歸解決方案在我的項目中工作。請注意,遞歸提供的不僅僅是新穎性。我的實際項目需要使用簡單的程序方法無法實現的多個分支。這可以通過使用列表作爲先進先出的堆棧來完成,但這至少與使用遞歸一樣複雜,並且不太優雅。 –