CCongrua
سير العمل

سير العمل البرمجي · دمج التطابقات ذات المقامات الأولية فيما بينها

03
المنتج

سير العمل

ادمج حتى ثماني توافقات ببواق ضمن ±10^9 ومعاملات أولية فيما بينها من 2 إلى 10^6. اختبر البواقي السالبة والمدخل الفارغ، وارفض المكونات المنطقية أو العوامل المشتركة مع إرجاع أصغر حل غير سالب والدورة المجمعة.

01

نزّل التطبيق

اختر مجلدًا واطلب من المساعد قراءة الملفات المعنية قبل تعديلها. حدّد الهدف وحدود المهمة في المحادثة.

02

افتح مجلد المشروع

اختر نقطة اتصال متوافقة. تعتمد الأدوات المتاحة وجودة الإجابات على النموذج والخادم المستخدمين.

03

اربط النموذج واختبره

راجع التغييرات ونتائج الأوامر. شغّل فحوص المشروع قبل اعتماد النتيجة؛ الشيفرة المُولّدة ليست مختبرة تلقائيًا.

04

راجع التغييرات وشغّل الاختبارات

قارن السلوك الفعلي بالنتيجة المتوقعة. إذا فشل فحص، تحقّق من السبب قبل إجراء تغييرات إضافية.

دمج التطابقات ذات المقامات الأولية فيما بينها

سير العمل
import math

def merge_congruences(pairs):
    if type(pairs) is not list or len(pairs) > 8:
        raise ValueError("crt.input")
    answer, period = 0, 1
    for pair in pairs:
        if type(pair) not in (list, tuple) or len(pair) != 2 or any(type(x) is not int for x in pair):
            raise ValueError("crt.pair")
        residue, modulus = pair
        if abs(residue) > 10**9 or not 2 <= modulus <= 10**6 or math.gcd(period, modulus) != 1:
            raise ValueError("crt.modulus")
        step = ((residue-answer)*pow(period, -1, modulus)) % modulus
        answer += period*step
        period *= modulus
        answer %= period
    return answer, period

راجع قبل التطبيق. راجع التغييرات ونتائج الأوامر. شغّل فحوص المشروع قبل اعتماد النتيجة؛ الشيفرة المُولّدة ليست مختبرة تلقائيًا.

مساحة عمل برمجية بالذكاء الاصطناعي

تبدأ فكرتك التالية هنا.

تنزيل لنظام Windows ↗