نزّل التطبيق
اختر مجلدًا واطلب من المساعد قراءة الملفات المعنية قبل تعديلها. حدّد الهدف وحدود المهمة في المحادثة.
أعد معاملات det(xI−A) بترتيب تنازلي لمصفوفة مربعة صحيحة من الرتبة صفر إلى ستة بعناصر لا تتجاوز 1000 بالقيمة المطلقة. اختبر المصفوفة الفارغة والقيم الذاتية المتكررة وارفض الصفوف غير المنتظمة والعناصر المنطقية دون تقريب الجذور.
اختر مجلدًا واطلب من المساعد قراءة الملفات المعنية قبل تعديلها. حدّد الهدف وحدود المهمة في المحادثة.
اختر نقطة اتصال متوافقة. تعتمد الأدوات المتاحة وجودة الإجابات على النموذج والخادم المستخدمين.
راجع التغييرات ونتائج الأوامر. شغّل فحوص المشروع قبل اعتماد النتيجة؛ الشيفرة المُولّدة ليست مختبرة تلقائيًا.
قارن السلوك الفعلي بالنتيجة المتوقعة. إذا فشل فحص، تحقّق من السبب قبل إجراء تغييرات إضافية.
def characteristic_polynomial(matrix):
if type(matrix) not in (list, tuple) or len(matrix) > 6:
raise ValueError("charpoly.size")
n = len(matrix)
if any(type(row) not in (list, tuple) or len(row) != n or any(type(v) is not int or abs(v) > 1000 for v in row) for row in matrix):
raise ValueError("charpoly.entry")
block = [[int(i == j) for j in range(n)] for i in range(n)]
coefficients = [1]
for degree in range(1, n+1):
product = [[sum(matrix[i][k]*block[k][j] for k in range(n)) for j in range(n)] for i in range(n)]
trace = sum(product[i][i] for i in range(n))
coefficient = -trace // degree
coefficients.append(coefficient)
block = [[product[i][j] + (coefficient if i == j else 0) for j in range(n)] for i in range(n)]
return coefficientsراجع قبل التطبيق. راجع التغييرات ونتائج الأوامر. شغّل فحوص المشروع قبل اعتماد النتيجة؛ الشيفرة المُولّدة ليست مختبرة تلقائيًا.