MMatrixCairn
Робоче середовище з ШІ для коду

Обмежене множення цілочисельних матриць

Перемножте прямокутні цілочисельні матриці до 64 рядків і стовпців кожна.

● ● ●MatrixCairn●
Сценарії · Обмежене множення цілочисельних матриць ×
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]
✳Перемножте прямокутні цілочисельні матриці до 64 рядків і стовпців кожна.
✓ ЗміниПеревірте перед застосуванням ↗
Ілюстрація робочого середовища
  1. Перевірте перед застосуванням

    Порівняйте фактичну поведінку з очікуваним результатом. Якщо перевірка не проходить, з’ясуйте причину перед наступними змінами.

  2. Моделі

    Налаштуйте OpenAI-сумісний або Anthropic endpoint із базовою URL-адресою та API-ключем, якщо він потрібен. Перевірте з’єднання. Локальний сервер моделі має працювати; віддалені інструменти можуть окремо передавати дані.

  3. Проєкт

    Перевірте порожній ввід та одну клітину, відхиляючи нерівні рядки, несумісні розміри й логічні клітини без зміни матриць.

Сценарії

Обмежене множення цілочисельних матриць

Сценарії ↗
Сценарії
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]
Робоче середовище з ШІ для коду

Перевірте структуру навколо обчислення разом із формулою

MatrixCairn надає середовище програмування з ШІ у Windows для роботи над кодом, що приймає структуровані числові дані. Додайте відповідні файли проєкту й опишіть дозволені форми, типи значень і результат, очікуваний кодом виклику. Попросіть модель перевірити валідацію та обчислення разом. Так легше перевірити збереження потрібної застосунку структури, навіть коли окремі обчислення виглядають розумно.

У завданні з matrix.py можна дослідити відхилення несумісних розмірів або нерівних рядків перед множенням матриць. Попросіть помічника пояснити поточні припущення та за потреби запропонувати вузьке виправлення. Використовуйте явні приклади входу й виходу, включно з порожніми формами, які дозволяє проєкт. Мета — покращити реалізацію за перевірюваними даними, а не виводити математичну правильність з охайної функції.

Після перегляду змін запустіть перевірки проєкту й підтвердьте, як неправильні дані доходять до споживача. Додайте фактично підтримувані граничні розміри, не покладаючись лише на малий успішний приклад. Модель без фільтрів можна підключити через підтримувану кінцеву точку, сумісну з OpenAI, або Anthropic, якщо вона там доступна, з обліковими даними за потреби. У MatrixCairn інструменти, місткість контексту й обмеження моделі залежать від налаштованого сервісу; середовище підтримує обговорення, а ви перевіряєте обчислення.

Питання структурованих даних для MatrixCairn

Що означає нерівний рядок у цьому завданні?

Визначте, чи застосунок відхиляє його, чи перетворює перед обчисленням. Не дозволяйте випадковому правилу ітерації вирішувати це. Попросіть помічника з’ясувати місце цієї політики й перевірити помилку, яку бачить код виклику.

Чи перевіряти лише обчислені значення комірок?

Перевірте також розміри результату й відповідність рядків та стовпців. Кілька правильних значень не доводять очікуваної подальшим кодом форми, особливо після зміни обробки порожніх даних.

Як обмеження розміру впливають на перевірку?

Укажіть підтримувані межі й перевірте місце їх забезпечення. Випробуйте допустимі граничні розміри й завеликий випадок. Межі прикладу не є гарантією швидкодії застосунку або дозволом пропускати перевірки під час виконання.

Що робити, якщо код виклику передає інший числовий тип?

Вирішіть, чи належить тип до контракту, потім явно перевірте перетворення або відхилення. Поблажлива зміна може пізніше вплинути на арифметику й серіалізацію, тому перевіряйте весь шлях, а не розширюйте допустимі значення без причини.

Завантажити для Windows ↗

MatrixCairn · Оновлено 2026-10-25