回答編集履歴
1
修正
answer
CHANGED
@@ -1,19 +1,13 @@
|
|
1
1
|
提示エラーが発生する直接の原因は`def execCell(A,i1):`内にて`B`が定義されていないためです。
|
2
2
|
`initdt(`において`return`文を2行書いていますが、それでは最初の`return`文しか実行されませんし、`B`はどこからも参照できません。
|
3
|
-
さらに、呼出元にて`B`を受け取っておらず、`execCell(`にも渡していないため`B`は利用できません。
|
3
|
+
さらに、呼出元にて`B`を受け取って~~おらず、`execCell(`にも渡して~~いないため`B`は利用できません。
|
4
4
|
以下のように修正が必要です。
|
5
5
|
```Python
|
6
6
|
# 略
|
7
7
|
def initdt():
|
8
|
+
# 略
|
8
9
|
return A,B # Bも返す
|
9
|
-
|
10
|
-
#セルオートマトンの実行
|
11
|
-
def execCell(A,B,i1): # Bも渡す
|
12
|
-
|
13
10
|
# 略
|
14
|
-
|
15
11
|
#実行メイン
|
16
12
|
A,B=initdt() # Bも受け取る
|
17
|
-
|
18
|
-
execCell(A,B,k) # Bも渡す ※複数場所で呼出あり
|
19
13
|
```
|