Skip to content

Conversation

yusuf601
Copy link
Contributor

Deskripsi (Description)

Menambahkan materi Regresi Kuadratik (Quadratic Regression) dalam file quadratic_regression.c.

Perubahan yang Diberikan

  1. Menambahkan fungsi quadratic_regression()

    • Mengimplementasikan regresi kuadratik menggunakan metode least squares untuk model:
      $$y = a + b \cdot x + c \cdot x^2$$
    • Menghitung parameter model:
      • a (intercept / konstanta)
      • b (koefisien linear)
      • c (koefisien kuadratik)
    • Menyusun dan menyelesaikan sistem persamaan normal (normal equations) berbasis metode eliminasi Gauss (3x3).
    • Menampilkan persamaan kuadratik hasil regresi dengan format yang informatif dan rapi.
    • Dilengkapi validasi untuk menghindari pembagian nol dan sistem tak memiliki solusi.
  2. Menambahkan fungsi-fungsi pembantu (helper):

    • sum_x() dan sum_y() untuk menjumlahkan elemen array X dan Y.
    • sum_x_squared(), sum_x_cubed(), sum_x_quartic() untuk menghitung total dari (x^2), (x^3), dan (x^4).
    • sum_xy() dan sum_x_squared_y() untuk menghitung jumlah hasil kali (x \cdot y) dan (x^2 \cdot y).
    • solve_linear_system() untuk menyelesaikan sistem persamaan linear 3x3 dengan metode eliminasi Gauss.
    • Seluruh fungsi disertai dokumentasi dengan format Doxygen untuk kemudahan pemeliharaan dan pembacaan kode.

Catatan Tambahan

  • Implementasi ini ditujukan untuk data berjumlah cukup kecil/moderat agar efisien tanpa menggunakan library eksternal.
  • Ideal untuk pemrosesan dataset regresi polinomial orde 2 dengan input berbasis array.

Checklist:

Umum:
  • [ x] Saya menambah algoritma terbaru.
Contributor Requirements (Syarat Kontributor) dan Lain-Lain:
  • [x ] Saya sudah membaca (I have read) CONTRIBUTING dan sudah menyetujui semua syarat.
  • [ x] Saya telah menambahkan komentar kode yang memberikan penjelasan maksud dari kode yang saya buat.
  • [ x] Saya menggunakan bahasa Indonesia untuk memberikan penjelasan dari kode yang saya buat.

Environment

Saya menggunakan (I'm using):

  • OS = Linux
  • g++ = 11.4.0

Link Issues

Issues : #

@yusuf601 yusuf601 requested a review from slowy07 as a code owner July 22, 2025 09:28
Copy link
Member

@slowy07 slowy07 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, terima kasih atas kontribusinya @yusuf601

@slowy07 slowy07 added the ready-to-merge ready to merge label Jul 30, 2025
@slowy07 slowy07 merged commit 4ad4400 into bellshade:main Jul 30, 2025
5 of 6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ready-to-merge ready to merge
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants