Program adalah instruksi-instruksi yang dalam bentuk bahasa, kode skema, ataupun
bentuk laain, yang jika digabungkan dengan media yang bisa dibaca dengan komputer akan
dapat membuat komputer bekerja untuk melakukan fungsi-fungsi khusus, termasuk
persiapan dalam merancaang instruksi-instruksi tersebut.
(https://www.ayoksinau.com/pengertian-program-menurut-para-ahli-lengkap/)
(Binanto, 2009)
2.2 Algoritma
Tanpa kita sadari, kita sering menemukan algoritma dalam kehidupan sehari-hari.
Misalnya saat kita menumpuk kartu dan ingin mengurutkannya kembali agar terurut naik
atau turun. Atau mencari nama pejabat yang mempunyai kekayaan terbesar. Bisa juga
dalam mengurutkan nama-nama siswa berdasar jumlah nilai UN. Untuk masalah dengan
inisiasi kecil kita dapat mengurutkannya dengan cepat, namun bagaimana apabila terdapat
banyak inisiasi? Oleh karena itu, kita memerlukan prosedur atau langkah-langkah untuk
memecahkannya. Algoritma adalah urutan langkah-langkah unutk memecahkan sesuatu.
(Rinaldi Munir, 2007)
1. Peruntutan (Sequence)
Pada struktur sekuensial instruksi dikerjakan secara berurutan baris perbaris mulai
dari baris pertamahingga baris terakhir, tanpa ada loncatan atau perulangan.
Tiap instruksi dikerjakan satu per satu dan tepat sekali, tidak ada instruksi yangdiulang.
Urutan instruksi yang dilaksanakan pemroses sama dengan urutan instruksi sebagai tertulis
di dalam teks algoritma. Urutan isntruksi menunjukkan urutan logika penyelesaian masalah.
Contohnya adalah algoritma mengitung luas segitiga.
2. Pemilihan (Seleksi)
Adalah instruksi yang dipakai untuk memilih satu aksi daribeberapa kemungkinan
aksi berdasarkan suatu syarat. Ada 3 bentuk struk pemilihan yaitu
- If…..then : Suatu aksi hanya dilakukan apabila persyaratan atau kondisi tertentu
dipenuhi. Jika kondisi bernilai benar maka kerjakan aksi, jika salah,tidak ada aksi
apapun yang dikerjakan
- If….. else : Apabila syarat dipenuhi makaaksi-1 dilaksanakan bila syarattidak
dipenuhi maka aksi- 2yang dilaksanakan
- If…. Elif
- If … else bersarang
3. Perulangan
Perulangan adalah instruksi yang dapat mengulang sederetan istruksi secara berulang-
ulang sesuai persyaratan yang ditetapkan.
Ada beberapa jenis perulangan yaitu :
- For – Next : bentuk perulangan instruksi tersebut berdasarkan variable perulangan
mulai dari nilai awal hingga nilaiakhir.
- While – Do : Instruksi akan dilaksanakan berulangkali selama kondisi bernilai
TRUE , jika FALSE maka badan pengulangan tidak akan dilaksanakan yang berarti
pengulangan selesai.
- Repeat – Until : Intruksi)akan dilaksanakan berulang kali sampai kondisi bernilai
true, jika kondisi bernilai false makapengulangan masih terus dilakukan.
Secara umum, struktur teks algoritma terbagi menjadi tiga bagian, yaitu : (Liana,2017)
1. Kepala Algoritma
Header atau kepala algoritma berisi judul program dan penjelasan singkat mengenai
program tersebut. Judul algoritma tidak boleh memakai spasi, namun dapat diganti
dengan underscore (_). Judul algoritma tidak perlu spesifik.
Contoh : “Algoritma_Luas_Persegi”. {Algoritma untuk menghitung besar luas
persegi}
2. Deklarasi
Digunakan untuk mendefinisikan semua nama yang dipakai dalam algoritma beserta
propertinya. Nama bisa berupa variabel, konstanta, tipe data, prosedur, dan fungsi.
Nama-nama yang dipakai dalam algoritma harus dikenali terlebih dahulu.
Contoh :
Deklarasi :
Nama : Str
No. Telp : Int
3. Deskripsi
Berisi deskripsi langkah-langkah penyelesaian masalah dalam bentuk pernyataan.
Deskripsi ditulis urut dari atas ke bawah
Contoh :
Deskripsi
Read (S)
L ← S^2
Write (L)
2.2.3 Flowchart
Flowchart atu bisa disebut juga dengan bagan alir yaitu sebuah gambaran dalam
bentuk diagram alir dari algoritma-algoritma dalam suatu program, yang menyatakan arah
dari alur program tersebut.
(Pahlevy, 2010)
1. Simbol Arus : Simbol arus digunakan sebagai simbol penghubung. Beberapa simbol
yang termasuk ke dalam kategori ini, yaitu :
2. Simbol proses : Symbol proses digunakan untuk menyatakan simbol yang berkaitan
dengan serangkaian proses yang dilakukan. Berikut beberapa simbol yang termasuk
kedalam bagian proses, yaitu:
3. Symbol output, input : Simbol yang termasuk kedalam bagian input-output
berkaitan dengan masukan dan keluaran. Berikut beberapa simbol yang termasuk,
yaitu :
(https://www.nesabamedia.com/pengertian-flowchart/)
Saat ini, python banyak digunakan dalam berbagai macam program. Selain
kemudahaan dalam keterbacaan, bahasa program python sangat mudah unutk dipelajari.
Python emiliki bahasa yang sederhana dan hamper mendukung semua program aplikasi
yang ada. Oleh karena itu, python cukup populer
2.3.1 Python
2.3.2 IDE
Editor, untuk menuliskan kode atau fungsi-fungsi yang dapat diterjemahkan oleh
mesin komputer sebagai kode programming.
Compiler, untuk menjalankan bentuk kode program yang di tuliskan dan mengubah
dalam bentuk binary yang kemudian ditampilkan sesuai perintah-perintah kode
mesin.
Debuger, untuk mengecek dan mengetes jalannya kode program untuk
mencari/mendebug kesalahan dari program.
Frame/Views, untuk menujukan atau menampilkan hasil dari perintah-perintah kode
program yang dieksekusikan oleh Compiler dari Editor.
(https://fit.labs.telkomuniversity.ac.id/pengenalan-ide-integrated-development-
environment/)
Dalam membuat program, selalu ada seleksi untuk mengecek suatu kondisi untuk
mengarahkan program agar berjalan sesuai keinginan.
1. Perintah If
Bentuk umum perintah if :
if (kondisi) :
perintah
perintah if digunakan untuk melakukan penyeleksian jika kondisi bernilai benar, maka
progam akan mengeksekusi perintah dibawahnya.
Untuk setiap penulisan perintah if setelah penentuan kondisi maka dilanjutkan dengan
penulisan tanda titik dua ( : ). Tanda titik dua ini berarti jika kondisi bernilai benar
maka statemen-statemen setelah tanda titik dua akan di jalankan.
2. Perintah If – Else
Perintah if – else digunakan jika kondisi bernilai benar maka program akan
mengeksekusi perintah 1. Namun, jika nilai kondisi bernilai salah maka perintah 2 yang
akan dieksekusi. Bentuk umum perintah if – else :
if ( kondisi ) :
perintah 1
else :
perintah 2
3. Perintah If – Elif –Else
Perintah if – else - elif untuk kondisi dimana kondisi yang diberikan lebih dari 1 kondisi
atau memiliki beberapa kondisi. Jika kondisi pertama bernilai benar maka lakukan
seleksi kondisi ke-dua dan seterusnya.
Bentuk umum perntah if – else – elif :
if ( kondisi 1 ) :
perintah
elif ( kondisi 2 ) :
perintah
else:
perintah
4. If Bersarang
Kondisi bersarang jika terdapat 2 cabang kondisi maka di dalam salah satu cabang
kondisi tersebut dapat pula di isi suatu kondisi tertentu.
Contoh :
if x == y:
print x, y "mempunyai nilai yang sama"
else :
if x > y :
print x, "lebih besar dari", y
if x < y :
print x, "lebih kecil dari", y
2.4.2 Jenis Operator
Operator merupakan simbol-simbol untuk melakukan operasi tertentu. Ada enam jenis
operator yang digunakan dalam python, yaitu :
1. Operator aritmatika
Opeartor aritmatika termasuk dalam operator yang paling sering digunakan dalam
pemrograman. Digunakan dalam proses perhitungan matematis. Operator aritmatika
terdiri dari:
Operator Simbol
Penjumlahan +
Pengurangan -
Perkalian *
Pembagian /
Sisa Bagi %
Pemangkatan **
2. Operator assignment
operator ini digunakan untuk memberikan tugas atau memodifikasi pada variabel.
Operator Simbol
Pengisian =
Penjumlahan +=
Pengurangan -=
Perkalian *=
Pembagian /=
Sisa Bagi %=
Pemangkatan **=
3. Operator pebandingan
Operator ini digunakan untuk membandingkan dua buah nilai. Operator ini juga
dikenal dengan operator relasi dan sering digunakan untuk membuat sebuah logika
atau kondisi. Opertor ini terdiri dari:
Operator Simbol
Lebih Besar >
Lebih Kecil <
Sama Dengan ==
Tidak Sama dengan !=
Lebih Besar Sama dengan >=
4. Operator Logika
Operator logika adalah operator yang digunakan untuk membuat operasi logika, seperti
logika AND, OR, dan NOT. Operator logika terdiri dari:
5. Operator Bitwise
Operator Bitwise adalah operator untuk melakukan operasi berdasarkan bit/biner (operan
bentuk bit). Hasil operasi dari operator ini agak sulit dipahami, kalau kita belum paham
operasi bilangan biner.
Nama Simbol
AND &
OR |
XOR ^
Negasi/kebalikan ~
Left Shift <<
Right Shift >>
6. Operator String
Operator yang berfungsi untuk menyambung string satu dengan string yang lainnya.
Hanya ada operator string yaitu “+”
7. Operator keanggotaan
Terdiri dari operator ‘in’ (mencari nilai pada himpunan, jika ada maka bernilai TRUE)
dan ‘not in’ (jika tidak ada bernilai FALSE)
8. Operator identitas
Terdiri dari operator is (mengecek nilai kiri operand sm dengan kanan operand, jika
sama bernilai TRUE) dan not is (mengecek nilai kiri operand sm dengan kanan
operand, jika tidak sama bernilai FALSE)
(https://www.petanikode.com/python-operator/)
Graphical User Interface atau yang disingkat dengan GUI adalah adalah antarmuka pada
sistem operasi atau komputer yang menggunakan menu grafis agar mempermudah para
pengguna-nya untuk berinteraksi dengan komputer atau sistem operasi. komputer itu
sebuah benda mati yang terdiri dari banyak komponen yang ingin kita operasikan, dengan
adanya GUI ini kita menjadi lebih mudah mengoperasikan karena kita bisa berinteraksi
dengan memberikan inputan kepada computer maka computer akan memberikan output
nya. Jadi, GUI merupakan antarmuka pada sistem operasi komputer yang menggunakan
menu grafis. Menu grafis ini maksudnya terdapat tampilan yang lebih ditekankan untuk
membuat sistem operasi yang user-friendly agar para pengguna lebih nyaman
menggunakan komputer. Menu grafis itu ya seperti ada grafis-grafis atau gambar-gambar
dan tampilan yang tujuannya untuk memudahkan para pengguna menggunakan sistem
operasi.
GUI adalah tipe antarmuka yang digunakan oleh pengguna untuk berinteraksi dengan
sistem operasi melalui gambar-gambar grafik, ikon, menu, dan menggunakan perangkat
penunjuk ( pointing device) seperti mouse atau track ball. Elemen-elemen utama dari GUI
bisa diringkas dalam konsep WIMP ( window, icon, menu,pointing device). (Mauladi., dkk,
2016)
Secara usia, Bahasa Python yang lahir di akhir 1980, sudah cukup tua. Namun
keberadaannya baru dirasa “menggigit” ketika ada kebutuhan untuk melakukan
pemrograman secara cepat. Memang Python tidak dihadirkan untuk bersaing dengan
bahasa pemrograman lain, namun lebih kepada memberikan alternatif dalam memrogram.
Sejak kehadiran Raspberry Pi, yang mengusung Bahasa Python sebagai bahasa yang
disarankan, popularitas Python semakin melesat. Juga dukungan Google dalam
implementasi komputasi awan menggunakan rujukan Bahasa Python.
Harus diakui, satu kekurangan dari Python adalah minimnya dukungan terhadap
pengembangan program berbasis GUI, khususnya ketersediaan IDE yang mendukungnya,
yang memungkinkan kita untuk membuat tampilan program secara cepat.
Satu modul terkait dukungan terhadap GUI adalah modul Tkinter, yang secara de facto
merupakan paket GUI standard dan sudah terpaket dalam instalasi Python.
(Tjahyadi, 2015)
2.5.2 Tkinter
Tkinter (Tk Interface) merupakan salah satu pustaka GUI standar pembuatan interface pada
python. Tkinter adalah pustaka yang langsung di ’bundle’ dalam paket python itu sendiri.
Tkinter adalah pustaka grafis yang memberikan kemudahan pengguna python.Para
programer python sering membangun program yang berbasis interface. Ada banyak pilihan
pustaka untuk dipilih dan dijadikan dasar membangun program berbasis interface. Tkinter
merupakan salah satu opsi pustaka yang dapat digunakan untuk membangun interface
program. Tkinter tidak hanya dapat membangun berbagai aplikasi.
Keunggulan menggunakan Tkinter antara lain : 1. Sudah termasuk dalam paket Python
Tkinter didapatkan langsung saat menginstall python, kita tidak perlu menginstall tambahan
pustaka untuk menggunakan Tkinter.
2. Lebih stabil
Tkinter telah dikembangkan lebih lama dibanding pustaka lainnya dan masih berjalan tanpa
perubahan selama bertahun-tahun.
Tidak seperti beberapa pustaka GUI lainnya, Tkinter tidak memiliki pustaka threading
sendiri, tumpukan jaringan, atau API sistem file. Tkinter bergantung pada pustaka Python
biasa. 4. Sederhana dan mudah digunakan
Untuk menggunakan Tkinter, kita tidak perlu mempelajari ratusan kelas widget, bahasa
markup atau templating, paradigma pemrograman baru, teknologi server-klien, atau bahasa
pemrograman lain.
Dibandingkan pustaka lain, Tkinter memiliki tampilan yang sederhana sehingga relatif
kurang menarik.
Penggunaan widget di Tkinter telatif sulit dan kompleks dikarenakan diperlukan pengaturan
yang baik agar lebih terstruktur.
Penggunaan Tkinter pada Python : Untuk menggunakan Tkinter, hal yang dilakukan ialah
memanggil library yang sudah ada di dalam Python 3.x.x, untuk memanggil library Tkinter,
dengan melakukan coding.
a. Button
Button merupakan salah satu widget standar yang digunakan untuk menerapkan berbagai
macam tombol. Button bisa diisi dengan teks atau gambar dan bisa dihubungkan dengan
suatu fungsi ketika ditekan.
b. Canvas
Canvas merupakan fasilitas grafik yang tersusun untuk Tkinter. Canvas sangat berguna bila
digunakan untuk membuat grafik-grafik.
c. Checkbutton Checkbutton merupakan salah satu widget untuk dipakai untuk memilih
suatu opsi dalam suatu kasus.
d. Entry
Entry adalah salah satu widget yang digunakan untuk memasukan teks. Umumnya entry
digunakan untuk menyusun suatu form.
e. Frame
Frame digunakan untuk menjadi dasar untuk meletakan widget Tkinter lainnya.
f. Label
Label adalah salah satu widget untuk menampilkan teks atau gambar.
g. Listbox
Listbox adalah widget yang digunakan untuk menampilkan data secara list.
h. Menubar
Menubar adalah sebuah widget yang digunakan untuk memuat menu pulldown. Menu bar
bisa berisi menu-menu lainnya.
i. Message
Message adalah widget yang digunakan untuk menampilkan pesan singkat dengan
menggunakan messagebox.
j. Radiobutton
Radiobutton adalah widget yang dipakai untuk memilih suatu opsi pada suatu kasus dan
hanya bisa memilih satu pilihan saja.
k. Scale
l. Scrollbar
Scrollbar adalah widget untuk menscroll tampilan yang tidak terlihat agar bisa dilihat oleh
pengguna.
m. Text
Geometry manager diperlukan untuk mengatur tata letak dari setiap widget yang ada di
Tkinter. Pengaturan geometri di dalam Tkinter dibagi menjadi beberapa cara antara lain : a.
Grid Model geometry grid dipakai untuk membantu layout tabel dengan mengatur garis 2
dimensi. b. Pack
Model geometry pack dipakai untuk membantu layout tabel dengan mengatur tata letak
widget pada widget utama. Untuk memakai geometry manager ini menggunakan metode
Pack()
c. Place Model geometry place dipakai untuk mengatur tata letak widget pada widget utama
secara eksplisit untuk posisi yang lebih tepat. Untuk memakai geometry manager ini
menggunakan metode place()
2.6 Database
Database dapat dipakai dan dikombinasikan dengan berbagai aplikasi untuk memperoleh
data yang bisa diolah kembali.
Database adalah suatu bagian yang sangat penting dalam suatu pemrograman dikarenakan
dalam pemrograman dapat dianalogikan bahwa database adalah suatu wadah yang berisikan
inputan yang dimasukkan dimana nantinya data yang ada dalam database dapat kita edit
dan dapat kita update setiap kalinya.
Database dapat didefinisikan pula sebagai suatu kumpulan dari catatan atau potongan dari
pengetahuan. Selain itu database juga dapatdidefinisikan sebagai suatu penjelasan
terstruktur dari satu statement yang terstruktur dari suatu fakta yang tersimpan didalamnya.
Penjelasan ini juga disebut sebagai skema. Cara memodelkan skema juga ada berbagai cara
yang dapat kita sebut sebagai model database. Model umum yang digunakan baisanya adala
database relasional.
(Munir, 2015)
Keterkaitan antara kelompok data yang satu dengan yang lainnya dalam database dapat
menyebabkan terjadinya pengulangan (redundansi) data, sehingga ruang penyimpanan yang
diperlukan menjadi bertambah banyak. untuk mengefisienkan penggunaan ruang
penyimpanan data, database dapat melakukan penekanan jumlah pengulangan (redundansi)
data tersebut diantaranya dengan menerapkan seumlah pengkodean atau membuat relasi
antarkelompok data yang saling berhubungan.
3. Keakuratan (Accurancy)
Pembentukan relasi antar kelompok data, pengaturan tipe data, penentuan keunikan
data, dan sebagainya secara ketat sangat berguna untuk menekan ketidakakuratan
penyimpanan data.
4. Ketersediaan (Availability)
Sebuah database dapat memiliki data yang tersebar di banyak lokasi geografis.
Misalnya, data nasabah sebuah bank dipisah pisah dan disimpan dilokasi sesuai dengan
keberadaan nasabah. Dengan pemanfaatan teknologi jaringan komputer, data yang berada
disuatu lokasi/cabang, dapat juga diakses (menjadi tersedia/avalilable) bagi lokasi yang
lain.
5. Kelengkapan (Completeness)
Untuk suatu sistem yang besar dan serius, aspek keamanan harus diperhatikan dan
diterapkan secara ketat. Hal ini dapat dilakukan dengan penentuan siapa siapa yang boleh
menggunakan database beserta objek objek didalamnya dan menentukan jenis jenis operasi
apa saja yang boleh dilakukan.
Pemakai database seringkali tidak terbatas pada satu pemakai saja atau di satu lokasi
saja oleh satu sistem aplikasi. Misalnya data pegawai dalam database kepegawaian dapat
digunakan oleh banyak pemakai, dari sejumlah departemen dalam perusahaan atau oleh
banyak sistem (sistem penggajian, sistem akutansi, sistem inventori, dan sebagainya).
(Dikmediatech, 2019)
2.6.3 SQLite3
Integer : Tipe data ini berfungsi untuk menyimpan data positif dan negatif.
Real : Biasanya digunakan untuk menyimpan data pecahan positif dan negatif, misal 0.5.
Integer : Int, Integer, TinyInt, SmallInt, MediumInt, BeginT, Unsign Big Int, Int2, Int8
Text : Character, Varchar, Varying Character, Native Character, NVarChar, Text, Clob