Ich lerne die Io-Sprache und würde gerne wissen, wie man mehrere Matrizen mithilfe von Listen zusammenstellt.Wie multipliziert man zwei Matrizen mit einer Liste von Listen in der Io-Sprache?
Hier ist mein Code so weit:
mA := List clone
mA := list(list(1, 2, 3), list(4, 5, 6), list(7, 8, 9))
mB := List clone
mB := list(list(1, 2, 3), list(4, 5, 6), list(7, 8, 9))
mC := List clone
mC := list(list(0, 0, 0), list(0, 0, 0), list(0, 0, 0))
i := 0
j := 0
k := 0
for(i, 0, mA size,
for(j, 0, mB size (at(0)),
for(k, 0, mB size,
mC atPut(mC at(i) at(j), mC at(i) at(j) + mA at(i) at(k) * mB at(k) at(j))
)
)
)
Wenn ich diesen Code ausführen durch sagt es ein Fehler ist, sagen: „nil‚*‘nicht reagiert“. Wo ich also tatsächlich innerhalb der verschachtelten for-Schleifen multipliziere, geht es in die Liste außerhalb der Grenzen. Zumindest ist es das, was ich denke, es ist daher der Fehler. Ich bin mir nicht sicher, wofür ich die for-Schleifen noch ändern soll. Ich habe sie sogar auf 2 und 3 geändert, da dies die Größe der Matrixlisten ist, die ich testen möchte, aber den gleichen Fehler bekommen habe.