Makalah Projek Dasar Pemrograman
Makalah Projek Dasar Pemrograman
Nama Kelompok :
Puji syukur kehadirat Allah SWT, Tuhan Yang Maha Esa, yang telah melimpahkan
rahmat dan hidayah-Nya sehingga penulis dapat menyelesaikan laporan Final Project mata
kuliah Dasar Pemrograman Python.
Laporan ini disusun untuk memenuhi tugas mata kuliah Pemrograman Python, yang
membahas tentang dasar-dasar pemrograman Python. Dalam laporan ini, penulis akan
membuat program kalkulator sederhana menggunakan bahasa pemrograman Python.
Program kalkulator ini dapat melakukan operasi penjumlahan, pengurangan, perkalian,
dan pembagian. Program ini juga dilengkapi dengan fitur untuk menyimpan hasil perhitungan.
Program ini dibuat menggunakan bahasa pemrograman Python. Python adalah bahasa
pemrograman yang umum digunakan untuk pengembangan perangkat lunak. Python bersifat
portable, sehingga program yang dibuat dengan Python dapat dijalankan di berbagai platform,
seperti Windows, Mac, dan Linux.
Tujuan penulisan Final Project ini dibuat sebagai salah satu syarat kelulusan Mata kuliah
Dasar Pemrograman Program studi Teknologi Informasi Sarjana Universitas Bina Sarana
Informatika. Sebagai bahan penulisan diambil berdasarkan hasil penelitian (eksperimen),
observasi, pengalaman pribadi dan beberapa sumber literatur yang mendukung penulisan ini
seperti buku, artikel, dan tutorial online. Penulis juga menggunakan beberapa library Python
yang tersedia secara gratis.. Penulis menyadari bahwa tanpa bimbingan dan dorongan dari
semua pihak, maka penulisan Skripsi ini tidak akan lancar. Oleh karena itu pada kesempatan
ini, izinkanlah penulis menyampaikan ucapan terima kasih kepada:
1. Rektor Universitas Nusa Mandiri
2. Wakil Rektor I Bidang Akademik Universitas Bina Sarana Informatika.
3. Dekan Fakultas Teknologi Informasi Universitas Bina Sarana Informatika.
4. Ketua Program Studi Informatika Universitas Bina Sarana Informatika.
5. Bapak Feri Prasetyo H, M.Kom, selaku Dosen Mata Kuliah Dasar Pemrograman.
6. Staff / Karyawan / Dosen Di Lingkungan Fakultas Teknologi Informasi Universitas Bina
Sarana Informatika.
Penulis berharap laporan ini dapat bermanfaat bagi pembaca, khususnya bagi mahasiswa yang
sedang mempelajari pemrograman Python.
Daftar Isi
Kata Pengantar .............................................................................................................................. 2
Bab 1 ............................................................................................................................................... 4
Pendahuluan .................................................................................................................................. 4
1.1. Latar Belakang .............................................................................................................................. 4
1.2. Maksud Dan Tujuan ...................................................................................................................... 4
BAB 2.............................................................................................................................................. 5
Landasan Teori .............................................................................................................................. 5
A. Pembahasaan tentang kalkulator sederhana ................................................................................... 5
2.1. Import Modul Tkinter ................................................................................................................... 5
2.2. Membuat Jendela Utama (Title)................................................................................................... 5
2.3. Variable Global Dan Fungsi ‘Show’ ............................................................................................... 6
2.4. Fungsi ‘Clear’ ................................................................................................................................ 6
2.5. Fungsi ‘Calculate’ .......................................................................................................................... 7
2.6. Label Untuk Riwayat Dan Hasil (GUI)............................................................................................ 7
2.7. Tampilan tombol-tombol kalkulator ............................................................................................. 7
2.8. Menjalankan looping utama......................................................................................................... 8
B. Flowchart .......................................................................................................................................... 9
BAB 3............................................................................................................................................ 10
Pembahasan ................................................................................................................................. 10
A. Pembahasan Program .................................................................................................................... 10
3.1. Persiapan awal ........................................................................................................................ 10
3.2. Fungsi Show ............................................................................................................................ 11
3.3. Fungsi Clear ............................................................................................................................ 12
3.4. Fungsi Calculate ...................................................................................................................... 13
3.5. Label Widget ........................................................................................................................... 14
3.6. Button Widget ........................................................................................................................ 16
Bab 4 ............................................................................................................................................. 18
Penutup ........................................................................................................................................ 18
4.1. Kesimpulan ................................................................................................................................. 18
4.2. Saran ........................................................................................................................................... 18
Daftar pustakan ........................................................................................................................... 19
Bab 1
Pendahuluan
Landasan Teori
Pernyataan ini mengimpor semua fungsi dan kelas dari modul ‘tkinter’ ke dalam program.
Ini mencakup elemen-elemen yang di perlukan untuk membuat dan menampilkan GUI
Fungsi ini digunakan untuk menampilkan angka atau operator pada layar kalkulator. Variable
‘result’ menyimpan angka, dan variable ‘history’ menyimpan Riwayat operasi.
Fungsi ini digunakan untuk menghapus hasil dan Riwayat untuk mengatur Kembali
kalkulator ke kondisi awal.
2.5. Fungsi ‘Calculate’
Fungsi ini digunakan untuk menghitung hasil dari aritmatika yang ada dalam Riwayat
menggunakan fungsi ‘eval()’
Ini adalah label yang digunakan untuk menampilkan hasil dan Riwayat pada GUI.
Fungsi ini adalah loop utama uang menjaga jendela kalkulator tertap terbuka dan
menanggapi interaksi pengguna. Program akan berjalan terus menerus hingga jendela
ditutup.
Program ini memberikan antarmuka pengguna yang sederhana untuk melakukan operasi
dasar kalkulator seperti penjumlahan, pengurangan, perkalian, dan pembagian. Fungsi
‘eval()’ digunakan untuk menghitung hasil dari aritmatika yang diberikan oleh pengguna.
B. Flowchart
BAB 3
Pembahasan
A. Pembahasan Program
1. Definisi Fungsi
Def show(value) Ini adalah fungsi dalam bahasa Python yang terkait
dengan logika tampilan kalkulator sederhana pada code kami.
2. Variabel Global:
result dan history dideklarasikan sebagai variabel global. Variabel global
dapat diakses dan dimodifikasi di seluruh program
3. Logika Perhitungan:
Fungsi ini berhubungan dengan suatu bentuk kalkulator. Jika result adalah
"0", itu berarti belum ada operasi sebelumnya dilakukan.
❖ Jika nilai value bukan operator (+, -, /, *, %), dan bukan titik desimal (.),
maka nilai history akan diupdate dan result akan diatur ke nilai value.
❖ Jika nilai value adalah titik desimal (.), maka nilai result dan history akan
diupdate dengan menambahkan titik desimal.
❖ Jika nilai value adalah operator, maka nilai result diatur menjadi string
kosong dan history akan diupdate dengan operator.
❖ Jika result tidak sama dengan "0", itu berarti operasi sebelumnya telah
dilakukan.
❖ Jika nilai value adalah titik desimal (.), maka nilai result dan history akan
diupdate dengan menambahkan titik desimal.
❖ Jika nilai value bukan titik desimal (.), maka nilai result diatur kembali ke
"0", dan history akan diupdate dengan nilai value.
4. Konfigurasi Label:
label_result dan label_history adalah elemen GUI yang akan digunakan
menjadi elemen label pada code.
label_result.config(text=result) dan label_history.config(text=history)
mengatur teks di
1. Definisi Fungsi
def clear(): Ini adalah deklarasi fungsi yang dinamai clear. Dalam Python,
fungsi didefinisikan dengan menggunakan kata kunci def, diikuti oleh nama fungsi
dan tanda kurung.
1. Definisi Fungsi
def calculate(): Fungsi ini adalah fungsi yang akan memproses value-value dan
operator yang sudah di input sebelumnya supaya dapat memunculkan hasilnya
2. Inisialisasi Variabel
label_result.config(text=final_result)
Mengonfigurasi teks pada label dengan nama label_result untuk menampilkan
hasil akhir dari evaluasi ekspresi matematika
label_history.config(text=x + "=")
Mengonfigurasi teks pada label dengan nama label_history untuk menampilkan
riwayat ekspresi matematika yang dievaluasi.
Dalam konteks pemrograman Python dan banyak framework GUI seperti Tkinter,
widget adalah elemen-elemen dasar yang digunakan untuk membangun antarmuka
pengguna (UI) grafis. Widget merepresentasikan berbagai elemen UI seperti
tombol, teks, gambar, kotak input, dan lainnya. Mereka memberikan struktur dasar
untuk membangun aplikasi GUI Widget label Digunakan untuk menampilkan teks
atau gambar di antarmuka pengguna. Biasanya, label digunakan untuk memberikan
informasi atau menunjukkan judul
1. label_history:
❖ Label: Ini adalah widget Tkinter yang digunakan untuk menampilkan teks
atau gambar.
❖ root: Ini adalah jendela utama atau frame di mana label akan ditampilkan.
❖ width: Menentukan lebar label dalam karakter.
❖ height: Menentukan tinggi label dalam karakter.
❖ text: Ini adalah teks yang akan ditampilkan di dalam label.
❖ font: Menentukan jenis font, ukuran font, dan atribut font lainnya.
❖ relief: Menentukan jenis efek garis pinggir label (contoh: solid, flat, raised,
sunken, dll.).
❖ justify: Menentukan cara teks di dalam label akan diatur (contoh: LEFT,
RIGHT, CENTER).
❖ pack(): Metode untuk menempatkan widget dalam tata letak utama. Pada
contoh ini, label_history adalah label yang digunakan untuk menampilkan
riwayat perhitungan atau operasi yang telah dilakukan.
2. label_result:
Untuk konfigurasi label result ini kurang lebih masih sama dengan label
history diatas. Label_result ini Digunakan untuk menampilkan hasil perhitungan
atau angka yang sedang dimasukkan oleh pengguna.
3. config(text="0"):
Mengatur teks awal pada label_result menjadi "0".
3.6. Button Widget
Widget Button berfungsi untuk Merepresentasikan tombol yang dapat diklik oleh
pengguna, Dapat digunakan untuk trigger suatu fungsi yang sudah di rancang.\
3. root.mainloop()
root.mainloop() adalah pernyataan yang digunakan untuk memulai siklus
utama (main loop) dalam aplikasi Tkinter di Python.
Dalam contoh ini, root.mainloop() akan menjalankan siklus utama dan
menampilkan jendela yang berisi label "Kalkulator". Program akan tetap
berjalan hingga kita menutup jendela secara manual atau program diakhiri,
Namun pada project kami ini akan berhenti Ketika di tutup/closed karena pada
project kami ini tidak terdapat sebuah fungsi yang akan mengakhiri program itu
sendiri.
Bab 4
Penutup
4.1. Kesimpulan
1. Program ini secara visual cukup memudahkan pengguna dalam hal pengoperasian.
2. Program kalkulator dapat melakukan operasi hitung penjumlahan, pengurangan
3. Program ini cukup valid terhadap perhitungan manual, sehingga dapat digunakan
sebagai alat bantu perancangan.
4. Tkinter adalah pustaka standar pada python yang digunakan untuk membuat aplikasi
berbabasi GUI
5. Program kalkulator dapat menerima masukan angka berupa bilangan bulat atau
bilangan desimal, kemudian memberikan keluaran berupa bilangan desimal dengan
baik dan memenuhi spesifikasi yang telah ditetapkan;
4.2. Saran
1) Dalam Mempelajari dan melakukan Eksplorasi harus banyak mencoba
2) Perlu ketelitian dalam melakukan coding saat penyusunan program
3) Kiranya laporan ini bisa dipergunakan dan dapat dijadikan bahan acuan dalam
penyusunan laporan-laporan selanjutnya
Daftar pustakan
Python Software Foundation Team. Python v2.7.2 Documentation 1990 – 2011. The Python
Software Foundation.
Downey, Allen, Jeffrey Elkner, dan Chris Meyers. How to Think Like a Computer Scientist :
Learning with Python. 2002. Green Tea Press : Wellesley, Massachusetts
Swaroop. A Byte of Python. 2005. IonLab : Bangalore, India
Craven, Paul Vincent. Introduction to Computer Science Using Python and Pygame. 2011.
Simpson College, Computer Science Department : Indianola, Iowa
Sianipar R.H. dan Wadi H. ,Pemrograman Python (teori dan Implementasi), Informatika,
Bandung, 2015
Abdul Kadir Ir., Dasar Pemrograman Python, Andi Offset, Yogyakarta, 2005