Pengelola Keuangan Pribadi
Aplikasi terminal untuk mencatat pemasukan dan pengeluaran pribadi, dengan filter kategori/tanggal, ringkasan saldo, dan laporan per kategori.
Struktur Kode #
| File | Tanggung Jawab |
|---|---|
transaction.h/.c | Model Transaction + validasi tanggal |
finance.h/.c | Koleksi transaksi, filter, summary |
storage.h/.c | Simpan/muat dari CSV |
report.h/.c | Laporan per kategori & laporan bulanan |
main.c | Menu interaktif |
tests.c | Unit test |
Build #
bash
make # Bangun aplikasi
make test # Jalankan unit test
./finance # Jalankan aplikasiFormat CSV #
csv
# id,type,amount,description,category,date
1,1,1000000.00,Gaji bulanan,Gaji,2024-03-01
2,-1,50000.00,Bensin,Transport,2024-03-02type 1 = income, -1 = expense.
Penggunaan #
Aplikasi memuat otomatis finance.csv bila ada. Setiap transaksi butuh:
- jumlah (Rp, harus positif)
- deskripsi
- kategori (bebas, contoh: Gaji, Makan, Transport, Hiburan)
- tanggal (YYYY-MM-DD)