# Kalkulator Interaktif SMP · Lanjutan · sesi 33–48 ## Menjalankan di VS Code Buka folder hasil ekstraksi, pilih Python: Select Interpreter. Jalankan `python app.py` dari terminal terintegrasi. Demo sintetis otomatis: `python demo.py`. Aplikasi memakai Tkinter; uji python -m tkinter terlebih dahulu. Contoh diuji dengan CPython 3.12.14. ## Cakupan Aplikasi satu jendela yang menghitung dua angka melalui input, tombol, dan label hasil. Ini contoh minimum untuk dikembangkan melalui tugas, bukan produk siap produksi atau jaminan seluruh rubrik sudah selesai. Demo memiliki assertion kasus inti; tambahkan regresi sesuai sesi sebelum menganggap fitur lengkap. Data sintetis saja. Simpan-muat interaktif memakai folder di samping app.py; lakukan latihan pada salinan folder. Demo otomatis memakai memori atau folder sementara dan tidak mengganti data kerja. ## Urutan tugas - Sesi 33: Audit fungsi hitung. Buat fungsi tambah yang menerima dua angka - Sesi 34: Uji ketersediaan Tkinter. Jalankan python -m tkinter dan catat hasil perangkat - Sesi 35: Tk dan mainloop(). Buka satu jendela kosong lalu tutup melalui tombol sistem - Sesi 36: Label dan grid(). Susun label input serta hasil dalam grid - Sesi 37: Entry dan nilai teks. Baca dua Entry melalui callback sederhana - Sesi 38: Button dan callback. Hubungkan command tanpa memanggil handler saat dibuat - Sesi 39: Fungsi dan tampilan. Panggil fungsi tambah dari handler - Sesi 40: Pilihan operasi. Tambahkan kurang, kali, dan bagi - Sesi 41: Konversi float. Tangani input angka desimal dengan ValueError - Sesi 42: Pembagian nol. Periksa pembagi sebelum operasi - Sesi 43: Pesan dan state hasil. Kosongkan hasil lama saat input tidak valid - Sesi 44: Tombol reset. Kosongkan Entry serta label - Sesi 45: Event loop responsif. Uji klik berulang tanpa input() atau while panjang - Sesi 46: Assert fungsi hitung. Periksa empat operasi dan pembagian nol - Sesi 47: Uji pengguna satu jendela. Minta teman mencoba angka dan reset - Sesi 48: Presentasi: Kalkulator Interaktif. Demonstrasikan input salah dan perubahan brief Penguji meminta angka desimal serta klik reset di tengah penggunaan; aplikasi harus tetap memberi hasil dan state yang benar. Kerjakan perubahan di Visual Studio Code (VS Code); serahkan sumber .py dan folder proyek, README, data sintetis, serta tabel hasil uji, dan catatan uji. ## Kriteria proyek - Satu jendela tampil dan tata letaknya terbaca - Satu klik memanggil satu callback dan hasil benar - Input salah serta pembagian nol memberi pesan - Reset mengosongkan input dan aplikasi tetap responsif Bekal: Dapat membaca input, memakai kondisi dan loop, menulis fungsi berparameter dengan return, mengolah list/dictionary, serta menyimpan dan memuat JSON. Audit dua sesi awal memberi penguatan terarah. Pengujian: catat input, harapan, aktual, revisi, dan bantuan. Uji pengguna serta tempo kelas tetap dilakukan mentor. Untuk project CSV jalankan python app.py input.csv laporan-baru.csv; ekspor menolak tujuan yang sudah ada.