PPivotQuartz
Сценарії

Сценарії роботи з кодом · Точні розв’язки лінійних систем

03
Продукт

Сценарії

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

01

Завантажте застосунок

Виберіть папку й попросіть помічника прочитати потрібні файли перед редагуванням. Визначте мету та межі завдання.

02

Відкрийте папку проєкту

Оберіть сумісний endpoint. Доступність інструментів і якість відповідей залежать від налаштованої моделі та сервера.

03

Підключіть і перевірте модель

Переглядайте зміни й результати команд. Перед прийняттям результату виконайте перевірки проєкту; створений код не тестується автоматично.

04

Перегляньте зміни та запустіть тести

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

Точні розв’язки лінійних систем

Сценарії
from fractions import Fraction

def solve_linear(matrix, rhs):
    matrix, rhs = [tuple(row) for row in matrix], tuple(rhs)
    n = len(matrix)
    if not 1 <= n <= 8 or len(rhs) != n or any(len(row) != n for row in matrix):
        raise ValueError("system.shape")
    if any(type(v) is not int or abs(v) > 1000000 for row in matrix for v in row) or any(type(v) is not int or abs(v) > 1000000 for v in rhs):
        raise ValueError("coefficient.range")
    a = [[Fraction(v) for v in row] + [Fraction(rhs[i])] for i, row in enumerate(matrix)]
    for col in range(n):
        pivot = next((r for r in range(col, n) if a[r][col]), None)
        if pivot is None:
            raise ValueError("system.singular")
        a[col], a[pivot] = a[pivot], a[col]
        scale = a[col][col]
        a[col] = [v / scale for v in a[col]]
        for r in range(n):
            if r != col:
                factor = a[r][col]
                a[r] = [x - factor * y for x, y in zip(a[r], a[col])]
    return [row[-1] for row in a]

Перевірте перед застосуванням. Переглядайте зміни й результати команд. Перед прийняттям результату виконайте перевірки проєкту; створений код не тестується автоматично.

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

Тут починається ваша наступна ідея.

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