RRootEquinox
Ruang kerja kode dengan AI

Akar persamaan kuadrat stabil

Hitung akar nyata persamaan kuadrat dengan koefisien berskala dan rumus yang mengurangi pembatalan numerik.

● ● ●RootEquinox●
Alur kerja · Akar persamaan kuadrat stabil ×
from math import isfinite, sqrt, copysign
def real_roots(a, b, c):
    original = (a, b, c)
    if not all(type(v) in (int, float) and isfinite(v) for v in original) or a == 0:
        raise ValueError("finite quadratic coefficients")
    if c == 0:
        other = -b / a
        if not isfinite(other) or (b != 0 and other == 0):
            raise ValueError("unrepresentable root")
        return [0.0] if b == 0 else sorted((0.0, other))
    scale = max(map(abs, original))
    a, b, c = (v / scale for v in original)
    if any(v != 0 and s == 0 for v, s in zip(original, (a,b,c))):
        raise ValueError("coefficient underflow")
    d = b*b - 4*a*c
    if d < 0: return []
    if d == 0: roots = [-b / (2*a)]
    else:
        q = -0.5 * (b + copysign(sqrt(d), b))
        if q == 0: raise ValueError("root underflow")
        roots = sorted((q/a, c/q))
    if not all(map(isfinite, roots)) or (original[2] != 0 and 0 in roots):
        raise ValueError("unrepresentable roots")
    return roots
✳Hitung akar nyata persamaan kuadrat dengan koefisien berskala dan rumus yang mengurangi pembatalan numerik.
✓ PerubahanTinjau sebelum menerapkan ↗
Ilustrasi ruang kerja
  1. Model

    Atur endpoint kompatibel OpenAI atau Anthropic dengan URL dasar dan kunci API jika diperlukan. Uji koneksi. Server model lokal harus berjalan; alat jarak jauh dapat mengirim data secara terpisah.

  2. Proyek

    Uji akar ganda dan akar berjauhan, tolak koefisien utama nol atau hasil tak terwakili dan kembalikan tanpa akar untuk diskriminan negatif.

  3. Tinjau sebelum menerapkan

    Bandingkan perilaku sebenarnya dengan hasil yang diharapkan. Jika pemeriksaan gagal, cari penyebabnya sebelum membuat perubahan lain.

Alur kerja

Akar persamaan kuadrat stabil

Alur kerja ↗
Alur kerja
from math import isfinite, sqrt, copysign
def real_roots(a, b, c):
    original = (a, b, c)
    if not all(type(v) in (int, float) and isfinite(v) for v in original) or a == 0:
        raise ValueError("finite quadratic coefficients")
    if c == 0:
        other = -b / a
        if not isfinite(other) or (b != 0 and other == 0):
            raise ValueError("unrepresentable root")
        return [0.0] if b == 0 else sorted((0.0, other))
    scale = max(map(abs, original))
    a, b, c = (v / scale for v in original)
    if any(v != 0 and s == 0 for v, s in zip(original, (a,b,c))):
        raise ValueError("coefficient underflow")
    d = b*b - 4*a*c
    if d < 0: return []
    if d == 0: roots = [-b / (2*a)]
    else:
        q = -0.5 * (b + copysign(sqrt(d), b))
        if q == 0: raise ValueError("root underflow")
        roots = sorted((q/a, c/q))
    if not all(map(isfinite, roots)) or (original[2] != 0 and 0 in roots):
        raise ValueError("unrepresentable roots")
    return roots
Ruang kerja kode dengan AI

Tinjau perilaku numerik di luar kasus biasa

RootEquinox adalah ruang kerja pemrograman AI Windows bagi pengembang yang perlu memeriksa perilaku implementasi numerik di luar contoh yang mudah ditanganinya. Mulailah dengan berkas proyek dan jelaskan rentang masukan yang diharapkan aplikasi. Minta model terhubung memeriksa perhitungan sekaligus respons pemanggil ketika hasil tidak dapat direpresentasikan sebagaimana dimaksud.

Rutin akar persamaan kuadrat menyediakan satu tugas konkret. Koefisien dengan skala yang sangat berbeda dapat mengungkap perilaku yang luput dari contoh kecil di kelas, jadi bawa data uji yang mewakili ke percakapan sebelum meminta perubahan. Bahas akar kembar, koefisien utama yang ditolak, dan cara fungsi melaporkan hasil yang tidak didukung. Pertanyaan ini menghubungkan usulan perubahan rumus dengan kontrak perangkat lunak di sekitarnya.

Periksa kode hasil dan jalankan pemeriksaan proyek menggunakan data uji asli, termasuk pemeriksaan residual bila sesuai. Jangan menganggap angka tampilan yang masuk akal sebagai bukti cukup bahwa implementasi memenuhi batasnya. RootEquinox bekerja dengan endpoint kompatibel OpenAI atau Anthropic yang didukung, memakai kredensial bila diperlukan. Model tanpa pembatasan merupakan pilihan jika layanan yang dikonfigurasi menyediakannya, sementara alat dan batas konteks bergantung pada server. Tujuannya adalah perubahan numerik yang dapat dinilai terhadap kasus eksplisit, dengan perilaku penolakan ditinjau sama telitinya dengan keluaran berhasil.

Menilai patch numerik

Apa yang harus menyertai laporan hasil tidak akurat?

Berikan koefisien masukan, perilaku yang diharapkan, dan detail yang cukup untuk mereproduksi ketidaksesuaian. Sertakan cara pemanggil menggunakan hasil. Ini memberi asisten masalah perangkat lunak konkret, bukan ajakan mengganti rumus tanpa bukti.

Mengapa memeriksa jalur penolakan dalam kode numerik?

Pemanggil memerlukan respons yang ditentukan ketika masukan tidak valid atau hasil berguna tidak dapat direpresentasikan. Tinjau jalur tersebut bersama perhitungan agar patch tidak mengganti kegagalan jelas dengan keluaran menyesatkan atau pengecualian tak terduga.

Dapatkah pemeriksaan residual membuktikan setiap akar akurat?

Pemeriksaan itu menyumbangkan bukti tentang nilai hasil tetapi bukan pembuktian universal. Gunakan bersama kasus acuan dan pemeriksaan batas masukan, serta tinjau asumsi toleransi alih-alih menerima satu residual kecil sebagai validasi lengkap.

Haruskah saya menerima penulisan ulang yang lolos contoh biasa?

Hanya setelah memeriksa kasus sulit yang melatarbelakangi tugas. Pertahankan skala yang sangat berbeda, akar kembar, dan masukan tidak valid yang ditentukan dalam pengujian proyek. Tinjau perubahan perilaku kegagalan sebelum menerima pengganti.

Unduh untuk Windows ↗

RootEquinox · Diperbarui 2026-10-25