Stáhněte aplikaci
Vyberte složku a před úpravou nechte asistenta přečíst příslušné soubory. Určete cíl i hranice úkolu.
Vynásobte obdélníkové celočíselné matice s nejvýše 64 řádky a sloupci každá. Ověřte prázdné vstupy a jednu buňku a odmítněte nerovné řádky, neslučitelné rozměry a booleovské buňky bez změny matic.
Vyberte složku a před úpravou nechte asistenta přečíst příslušné soubory. Určete cíl i hranice úkolu.
Zvolte kompatibilní endpoint. Dostupné nástroje a kvalita odpovědí závisí na nastaveném modelu a serveru.
Kontrolujte změny a výstupy příkazů. Před přijetím výsledku spusťte kontroly projektu; vytvořený kód není automaticky otestovaný.
Porovnejte skutečné chování s očekávaným výsledkem. Pokud kontrola selže, před dalšími změnami zjistěte příčinu.
def matrix_product(left, right):
left, right = [tuple(r) for r in left], [tuple(r) for r in right]
widths = []
for matrix in (left, right):
width = len(matrix[0]) if matrix else 0
if len(matrix) > 64 or width > 64 or any(len(r) != width for r in matrix):
raise ValueError("matrix.shape")
if any(type(v) is not int for r in matrix for v in r):
raise ValueError("cell.integer")
widths.append(width)
if widths[0] != len(right):
raise ValueError("matrix.incompatible")
return [[sum(row[k] * right[k][j] for k in range(widths[0]))
for j in range(widths[1])] for row in left]Před použitím zkontrolujte. Kontrolujte změny a výstupy příkazů. Před přijetím výsledku spusťte kontroly projektu; vytvořený kód není automaticky otestovaný.