Monday, 23 November 2015
Tuesday, 29 September 2015
Saturday, 29 August 2015
Algoritma Pemrograman
Pengertian Tipe Data, variabel, dan Konstanta
Variabel, konstanta dan tipe data merupakan tiga hal yang
akan selalu kita jumpai ketika kita membuat program. Bahasa pemrograman apapun
dari yang paling sederhana sampai yang paling kompleks, mengharuskan kita untuk
mengerti ketiga hal tersebut.
Tipe Data
Adalah
adalah jenis data yang dapat diolah oleh komputer untuk
memenuhi kebutuhan dalam pemrograman komputer. Setiap variabel
atau konstanta yang ada dalam kode program, sebaiknya kita tentukan dengan
pasti tipe datanya. Ketepatan pemilihan tipe data pada variabel atau
konstanta akan sangat menentukan pemakaian sumberdaya komputer (terutama memori
komputer). Salah satu tugas penting seorang programmer adalah memilih tipe data
yang sesuai untuk menghasilkan program yang efisien dan berkinerja tinggi
Konstanta
Adalah variabel yang nilai datanya bersifat tetap dan tidak bisa diubah. Jadi
konstanta adalah juga variabel bedanya adalah pada nilai yang disimpannya. Jika
nilai datanya sepanjang program berjalan tidak berubah-ubah, Maka sebuah
varibel lebih baik diperlakukan sebagai konstanta. Pada sebuah kode program, biasanya nilai data dari konstanta diberikan
langsung dibagian deklarasi konstanta. Sedangkan untuk variabel biasanya hanya
ditentukan nama variabel dan tipe datanya tanpa isian nilai data. Aturanpena maan variabel juga berlaku untuk penamaan konstanta.
Demikian juga aturan penetapan tipe
data.
Variabel
adalah tempat dimana kita dapat mengisi atau mengosongkan
nilainya dan memanggil kembali apabila dibutuhkan.
Pada sebagian
besar bahasa pemrograman, variabel harus dideklarasikan lebih dulu untuk
mempermudah compiler bekerja. Apabila variabel tidak dideklarasikan maka setiap
kali compiler bertemu dengan variabel baru pada kode program akan terjadi waktu
tunda karena compiler harus membuat variabel baru. Hal ini memperlambat proses
kerja compiler. Bahkan pada beberapa bahasa pemrograman, compiler
akan menolak untuk melanjutkan proses kompilasi. Pemberian nama variabel harus
mengikuti aturan yang ditetapkan oleh bahasa pemrograman yang kita gunakan.
Namun secara umum ada aturan yang berlaku untuk hampir semua bahasa
pemrograman.
Aturan-aturan
tersebut yaitu:
Ø Nama variabel
harus diawali dengan huruf.
Ø Tidak boleh menggunakan spasi pada satu nama variabel. Spasi bisa diganti
dengan karakter underscore (_).
Ø Nama variabel tidak boleh mengandung karakter-karakter khusus, seperti :
.,+, -, *, /, <, >, &, (, ) dan lain-lain.
Ø Nama variabel tidak boleh menggunakan kata-kata kunci d bahasa Pemrograman.
Contoh penamaan
variabel.
Penamaan yang benar
|
Penamaan yang salah
|
Keterangan
|
namasiswa
XY12
harga_total
JenisMotor
|
nama siswa
12XY
harga.total
Jenis Motor
|
(salah karena menggunakan spasi)
(salah karena dimulai dengan angka)
(salah karena menggunakan karakter)
(salah karena menggunakan
spasi)
|
Tipe Data
Tipe data adalah jenis data yang dapat diolah oleh komputer untuk memenuhi kebutuhan
dalam pemrograman komputer. Setiap variabel atau konstanta yang ada dalam kode program, sebaiknya
kita tentukan dengan pasti tipe datanya. Ketepatan pemilihan tipe data
pada variabel atau konstanta akan sangat menentukan pemakaian sumberdaya
komputer (terutama memori komputer). Salah satu tugas penting seorang programmer adalah
memilih tipe data yang sesuai untuk menghasilkan program yang efisien dan
berkinerja tinggi. Ada banyak tipe data yang tersedia tergantung jenis bahasa
pemrograman yang dipakai.
Namun secara umum dapat dikelompokkan seperti pada
Gambar 5.2.
Gambar 5.2. Pengelompokkan tipe data
Keterangan :
-
Tipe data
primitive adalah tipe data dasar yang tersedia secara langsung pada suatu
bahasa pemrograman.
-
Sedangkan tipe
data composite adalah tipe data bentukan yang terdiri dari dua atau lebih tipe
data primitive.
Tipe Data primitive terdiri dari beberapa tipe data:
1.
Tipe data numeric
Tipe data numeric
digunakan pada variabel atau konstanta untuk menyimpan nilai dalam bentuk
bilangan atau angka. Semua bahasa pemrograman menyediakan tipe data numeric,
hanya erbeda dalam jenis numeric yang
diakomodasi. Jenis yang termasuk dalam tipe data numeric antara lain integer
(bilanganbulat), dan float (bilangan pecahan). Selain jenis, dalam bahasa
pemrograman juga diterapkan presisi angka yang digunakan, misalnya tipe data Single
adalah tipe data untuk bilangan pecahan dengan presisi yang terbatas, sedangkan
tipe data Double adalah tipe data untuk bilangan pecahan dengan presisi yang
lebih akurat.
2.
Character
Bersama
dengan tipe data numeric, character merupakan tipe data yang paling banyak
digunakan. Tipe data character kadang disebut sebagai char atau string. Tipe
data string hanya dapat digunakan menyimpan teks atau apapun sepanjang berada
dalam tanda petik dua (“…”) atau petik tunggal (‘…’).
3.
Boolean
Tipe
data Boolean digunakan untuk menyimpan nilai True/False (Benar/Salah). Pada sebagian besar bahasa pemrograman nilai selain 0 menunjukkan True dan
0 melambangkan False. Tipe data ini banyak digunakan untuk pengambilan keputusan pada struktur
percabangan dengan IF … THEN atau IF … THEN … ELSE
Array
Array atau sering disebut sebagai larik adalah tipe data yang sudah terstruktur dengan baik, meskipun masih
sederhana. Array mampu menyimpan sejumlah data dengan tipe yang sama (homogen)
dalam sebuah variabel. Setiap lokasi data array diberi nomor indeks yang
berfungsi sebagai alamat dari data tersebut. Penjelasan tentang array akan
disampaikan lebih detil pada bagian lain dari bab ini.
Record atau Struct
Seperti halnya Array, Record atau Struct adalah termasuk tipe data
komposit. Record dikenal dalam bahasa Pascal/Delphi sedangkan Struct dikenal
dalam bahasa C++. Berbeda dengan array, tipe data record mampu menampung banyak
data dengan tipe data berbeda-beda (heterogen). Sebagai ilustrasi array mampu
menampung banyak data namun dengan satu tipe data yang sama, misalnya integer
saja. Sedangkan dalam record, kita bisa menggunakan untuk menampung banyak data
dengan tipe data yang berbeda, satu
bagian integer, satu bagian lagi character, dan bagian lainnya Boolean.
Biasanya record digunakan untuk menampung data suatu obyek. Misalnya,
siswa memiliki nama, alamat, usia, tempat lahir, dan tanggal lahir. Nama akan
akan menggunakan tipe data string, alamat bertipe data string, usia bertipe
data single (numeric), tempat lahir bertipe data string dan tanggal lahir
bertipe data date.
Berikut ini contoh pendeklarasian record dalam Delphi.
Contoh 5.5. Deklarasi tipe data record
pada Delphi.
Type
TRecord_Siswa = Record
Nama_Siswa :
String[30]
Alamat :
String[50]
Usia : Real
EndRecord
Image
Ket :
Image atau gambar atau citra merupakan
tipe data grafik. Misalnya grafik
perkembangan jumlah siswa SMK, foto keluarga kita, video perjalanan dan
lain-lain. Pada bahasa-bahasa pemrograman modern
terutama yang berbasis visual tipe data ini telah didukung dengan sangat baik.
Date Time
Nilai data untuk tanggal (Date) dan waktu (Time) secara internal
disimpan dalam format yang pesifik.
Variabel atau konstanta yang dideklarasikan dengan tipe data Date dapat
digunakan untuk menyimpan baik tanggal maupun jam. Tipe data ini masuk dalam
kelompok tipe data composite karena merupakan bentukan dari beberapa tipe data.
Berikut ini contoh tipe data dalam Visual Basic.
Dim
WaktuLahir As Date
WaktuLahir
= “01/01/1997”
WaktuLahir
= “13:03:05 AM”
WaktuLahir
= “02/23/1998 13:13:40 AM”
WaktuLahir
= #02/23/1998 13:13:40 AM#
Tipe data lain
Subrange
Tipe data subrange merupakan tipe data bilangan yang mempunyai jangkauan
nilai tertentu sesuai dengan yang ditetapkan programmer. Biasanya tipe data ini mempunyai nilai batas
minimum dan nilai batas maksimum. Tipe data ini didukung dengan sangat baik
dalam Delphi. Berikut ini contoh deklarasi tipe data subrange dalam Delphi.
Contoh 5.7.
Deklarasi tipe data subrange pada Delphi.
Type
BatasIndeks = 1..20
RentangTahun = 1950..2030
Var
Indeks : BatasIndeks
Tahun : RentangTahun
Enumerasi
Tipe data ini merupakan tipe data yang mempunyai elemen-elemen yang
harus disebut satu persatu dan bernilai konstanta integer sesuai dengan
urutannya. Nilai konstanta
integer elemen ini diwakili oleh suatu nama variable yang ditulis di dalam
kurung. Tipe data ini juga dijumpai pada Delphi
dan bahasa pemrograman deklaratif seperti SQL.
Berikut ini contoh deklarasi tipe data enumerasi dalam Delphi.
Contoh 5.8. Penggunaan tipe data enumerasi.
Type Hari_dlm_Minggu = (Nol, Senin, Selasa,
Rabu,Kamis, Jumat, Sabtu, Minggu)
Nama_Bulan = (Nol, Januari, Pebruari, Maret, April, Mei, Juni, Juli,
Agustus,
September, Oktober, Nopember, Desember)
Var No_Hari : Hari_dlm_MingguNo_Bulan : Nama_Bulan
Pada contoh di atas tipe data Hari_dlm_Minggu termasuk enumerasi dengan
rentang nilai Nol, Senin sampai dengan Minggu dan nilai data dari 0, 1, sampai
dengan 7. Sedangkan tipe data Nama_Bulan termasuk enumerasi dengan rentang
nilai Nol, Januari sampai dengan Desember
dan nilai data dari 0, 1, sampai dengan
12
Object
Tipe data object digunakan untuk menyimpan nilai yang berhubungan dengan
obyek-obyek yang disediakan oleh Visual Basic, Delphi
dan dan bahasa pemrograman lain yang berbasis GUI. Sebagai contoh, apabila kita
mempunyai form yang memiliki control Command button yang kita beri nama
Command1, kita dapat mendeklarasikan variabel sebagai berikut :
Contoh 5.9. Penggunaan tipe data object.
Dim A As CommandButton
Set A = Command1
A.Caption = “HEY!!!”
A.FontBold = True
Pada contoh ini variabel A dideklarasikan bertipe data Object yaitu
CommandButton. Kemudian kita set variabel A dengan control Command button yang
ada pada form (Command1). Dengan cara ini kita dapat mengakses seluruh
property, method dan event obyek Command1 dengan menggunakan variabel A.
Variant
Tipe data hanya ada di Visual Basic. Tipe ini adalah tipe data yang
paling fleksibel di antara tipe data yang lain, karena dapat mengakomodasi
semua tipe data yang lain seperti telah dijelaskan.
Contoh-contoh
program di dalam menggunakan variabel, konstanta.
a.
Mencari Luas
segitiga
Perhatikan algoritma sederhana berikut
Mulai
Baca data
alas dan tinggi.
Luas adalah
alas kali tinggi kali 0.5
Tampilkan
Luas
Stop
Keterangan :
Algoritma di atas adalah algoritma yang
sangat sederhana, hanya ada lima langkah. Pada algoritma ini tidak dijumpai
perulangan ataupun pemilihan. Semua langkah dilakukan hanya satu kali. Sekilas
algoritma di atas benar, namun apabila dicermati maka algoritma ini mengandung
kesalahan yang mendasar, yaitu tidak ada pembatasan pada nilai data untuk alas
dan tinggi. Bagaimana jika nilai data alas atau tinggi adalah bilangan 0 atau
bilangan negatif ? Tentunya hasil yang keluar menjadi tidak sesuai dengan yang diharapkan.
Dalam kasus seperti ini kita perlu menambahkan langkah untuk memastikan nilai
alas dan tinggi memenuhi syarat, misalnya dengan melakukan pengecekan pada
input yang masuk. Apabila input nilai alas dan tinggi kurang dari 0 maka
program tidak akan dijalankan. Sehingga algoritma di atas dapat dirubah menjadi
seperti contoh berikut.
Hasil perbaikan algoritma perhitungan
luas segitiga
Start
Baca data
alas dan tinggi.
Periksa data
alas dan tinggi, jika nilai data alas dan tinggi lebih besar dari nol maka
lanjutkan ke langkah ke 4 jika tidak maka stop
Luas adalah
alas kali tinggi kali 0.5
Tampilkan
Luas
Stop
Keterangan :
Dari penjelasan di atas dapat diambil
kesimpulan pokok tentang algoritma. Pertama, algoritma harus benar.
Kedua algoritma harus berhenti, dan setelah berhenti, algoritma
memberikan hasil yang benar
b.
Program sederhana
dalam Pseudocode
Pseudocode
Pseudocode mirip dengan SE. Karena kemiripan ini kadang-kadang SE
dan Pseudocode dianggap sama. Pseudo berarti imitasi atau tiruan atau
menyerupai, sedangkan code menunjuk pada kode program. Sehingga pseudocode adalah kode yang mirip dengan instruksi
kode program sebenarnya. Pseudocode didasarkan pada bahasa pemrograman yang
sesungguhnya seperti BASIC, FORTRAN atau PASCAL. Pseudocode yang berbasis
bahasa PASCAL merupakan pseudocode yang sering digunakan. Kadang-kadang orang
menyebut pseudocode sebagai PASCAL-LIKE algoritma.
Contoh Program sederhana dengan pseudocde
1. Start
2. READ alas, tinggi
3. Luas = 0.5 * alas * tinggi
4. PRINT Luas
5.
Stop
Keterangan:
Pada Contoh tampak bahwa algoritma sudah sangat mirip dengan
bahasa BASIC. Pernyataan seperti READ dan PRINT merupakan keyword yang ada pada
bahasa BASIC yang masing-masing menggantikan
kata “baca data” dan “tampilkan”. Dengan menggunakan pseudocode seperti di atas maka proses penterjemahan dari algoritma
ke kode program menjadi lebih mudah.
Flowchart
1. Flowchart adalah bagan-bagan yang mempunyai
arus menggambarkan langkah-langkah penyelesaian suatu masalah
2. Merupakan cara penyajian dari suatu algoritma
3. Ada 2 macam flowchart:
·
System flowchart:
Urutan proses dalam system dengan menunjukkan alat media input, output serta
jenis penyimpanan dalam proses pengolahan data.
·
Program flowchart:
Urutan instruksi yang digambarkan dengan symbol tertentu untuk memecahkan
masalah dalam suatu program.
Contoh program Flowchart
Simbol-simbol Flowchart
1. Flow Direction Symbols (simbol penghubung
alur)
2. Processing Symbols (simbol proses)
3. Input-Output Symbols (simbol input-output)
Tabel Simbol-simbol Flowchart
Pembuatan Flowchart
1. Tidak ada kaidah yang baku
2. Flowchart = gambaran hasil analisa suatu
masalah
3. Flowchart dapat bervariasi antara satu
pemrograman dengan pemrograman lainnya.
4. Secara garis besar ada 3 bagian utama:
·
Input
·
Proses
·
Output
5. Hindari pengulangan yang tidak perlu dan
logika yang berbelit sehingga jalannya proses menjadi singkat
6. Jalannnya proses digambarkan dari atas ke
bawah dan diberikan tanda panah untuk memperjelas.
7. Sebuah Flowchart diawali dari satu titik
START dan diakhiri dengan End.
Subscribe to:
Comments (Atom)