ALGORITMA PEMROGAMAN DASAR
Perangko dari Rusia pada gaambar disamping ini bergambar pria dengan nama Muhammad Ibn Musa Al-Khawarizmi. Bagi kalian yang sedang berkecimpung dalam dunia komputer maka seharusnya mengetahui siapa itu Al - Khawarizmi. Dia adalah seorang ilmuwan islam yang karya - karyanya dalam bidang matematika, astronomi, astrologi dan geografi banyak menjadi dasar perkembangan ilmu modern. Dan dari namanya istilah yang akan kita pelajari dalam bab ini muncul. Dan Al-Khawarizmi kemudian berubah menjadi algorithm dalam Bahasa Inggris dan diterjemahkan menjadi Algoritma dalam Bahasa Indonesia.
Standar kompetensi algoritma pemrogaman dasar terdiri atas empat kompetensi dasar. Dalam penyajian dalam buku ini,setiap kompetensi dasar memuat uraian materi dan latihan. Ringkasan diletakkan disetiap akhir bab. Kompetensi dasar pada bab ini adalah menjelaskan sekitar 2.500 variabel, konstanta dan tipe data, membuat algoritma/logika alur pemrogaman, menerapkan pengelolaan array dan pengoperasian file. Sebelum mepeljari kompetensi ini ingatlah kembali sistem operasi. Prinsip pemecahan masalah, dan materi - materi pendukung dari mata pelajarn matematika.
Tujuan dari mempelajari materi ini, pembaca diharapkan mampu :
- Menjelaskan variabel, konstanta dan tipe data;
- Membuat algoritma/logika alur pemrogaman;
- Menerapkan pengelolaan array;
- Mengoperasikan file.
VARIABEL, KONSTANTA DAN TIPE DATA
Variabel, konstanta dan tipe data merupakan tiga hal yang akan selalu kita jumpai ketika kita membuat program. Bahasa pemrogaman apapun dari yang paling sederhana sampai yang paling kompleks, mengahrskan kita untuk mengerti ketiga hal tersebut.
VARIABEL
Variabel adalah empat dimana kita dapat mengisi atau mengosongkan nilainya dan memanggil kembali apabila dibutuhkan. Setiap variabel akan mempunyai nama (identifier) dan nilai. Perhatikan contoh berikut :
Username = “Fadli”
Nama = “Al-Khawarismi”
harga = 2500
HargaTotal = 34000
Pada contoh diatas, username, Nama, harga dan HargaTotal adalah nama dari variabel sedangan “Nizar” , “Al-Khawarizmi” , 2500 dan 34000 adalah nilai dari masing - masing variabel. Nilai - nilai ini akan tersimpan di dalam nama variabel masing - masing sepanjang tidak kita rubah.
Pada sebagian besar bahasa pemrogaman, variabel harus dideklarasikan lebih du untuk mempermudah compilar bekerja. Apabila variabel tidak dideklarasikan maka setiap kali compilar bertemu dengan variabel baru pada kode program akan terjadi waktu tunda karena compilar tersebut membuat variabel baru. Hal ini memperlambat proses kerja compilar. Bahkan pada beberapa bahasa pemrogaman, compilar akan menolak untuk melanjutkan proses kompilasi. Pemberian nama variabel harus mengitkuti aturan yang ditetapkan oleh bahasa pemrogaman yang kita gunakan. Namun secara umum ada aturan yang berlkau untuk hempir semua bahasa pemrogaman. Aturan - aturan tersebut yaitu :
u Nama variabel harus diawali dengan huruf;
u Tidak boleh menggunakan spasi pada satu nama variabel. Spasi bisa diganti dengan karakter underscore (_);
u Nama variabel tidak boleh mengandung karakter - karakter khusus, seperti : .,+,-,*,/,<,>,&,(,) dan lain 0 lain.
u Nama variabel tidak boleh menggunakan kata - kata knci di bahasa pemrogaman.
Penamaan yang benar
|
Penamaan yang salah
|
Namasiswa
XY12
Harga_total
JenisMotor
alamatrumah
|
Nama siswa (salah karena menggunakan spasi)
12X (salah karena diawali dengan angka)
Harga.total (salah karena menggunakan karakter)
Jenis Motor (salah karena mengunakan spasi)
For (salah karena menggunakan kata kunci bahasa pemrogaman)
|
KONSTANTA
Konstanta adalah variabe yang nilai datanya bersifat tetap dan tidak bisa diubah.jadi konstanta adlaah juga sebagai variabel bedanya adalah pada nilai yang disimpannya. Jika nilai datanya sepanjang program berjalan tidak berubah, maka sebuah variabel lebih baik diperlakukan ebagai konstanta. Pada sebuah kode program, biasanya nilai data dari sebuah konstanta diberikan langsung dibagian deklarasi konstanta. Sedangkan untuk variabel biasanya hanya ditentukan nama variabel dan tipe datanya tanpa isia nilai data. Aturan penamaan variabel juga berlak untuk penamaan konstanta demikian juga aturan penetapan tipe data.
Sebagai contoh, jika kta membuat program perhitungan matematik yang menggunakan nilai pi (3.15159) yang mungkin akan muncul dibanyak tempat pada kode program, kita dapat membuat pi sebagai konstanta. Penggunaan konstana pi akan lebih memudahkan penulisan kode program dibanding harus mengetikkan nilai 3.14159 berulang - ulang.
TIPE DATA
Tipe data adalah jenis data yang dapat diolah oleh komputer untuk memenuhi kebutuhan dalam pemrogaman 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 komuter). salah satu tugas penting seorang progammer adlaah memilih tipe data yang sesuai untuk menghasilkan program yang efisien dan berkinerja tinggi.
Ada banyak tipe data yang tersedia tergantung jenis bahasa emrogaman yang dipakai. Namun secara umum dapat dikelompokkan seperti gambar berikut :
l Tipe Data Primitive
tipe data primitive adalah tipe data daasr yang tersedia secara langsung pada suatu bahasa pemrogaman. Sedangkan tipe data composite adalah tipe data bentukan yang terdiri dari dua atau lebih tipe data primitive.
l Tipe Data Numeric
Tipe data nummeric digunakan pada variabe atau konstanta untuk menyimpan nilai dalam bentuk bilangan atau angka. Semua bahasa pemrogaman menyediakan tipe data numeric, hanya berbeda dalam jenis numeric yang diakomodasi.
Jenis yang termasuk dalam tipe data numeric antara lain integer (bilangan bulat), dan float (bilangan pecahan). selain jenis, dalam bahas pemrogaman juga diterapkan presisi angka yang digunakan, misalnya tpe data single adalah tipe data untuk bilangan pacahan sengan presisi yang terbatas, sedangkan tipe data double adlaah tipe data untuk bilangan pecahan dengan presisi yang lebih akurat. Pada bab - bab berikut yan gmembahas aplikasi bahas pemrogaman bagian ini akan diuraikan lebih lanjut.
Menentukan tipe data numeric untuk suatu variabel/ konsanta harus sangat berhati - hati. Manual dan petunjuk pada masing - masing bahas pemrogaman pada bagian tipe data harus diperhatikan dengan seksma. Perhatikan contoh berikut :
KODE PROGRAM A
|
HASIL EKSEKUSI PROGRAM A
|
#include <iostream>
using namespace std;
int main () {
int x, z;
float y,
x = 12;
y = 2.15;
z = x * y;
Cout <<”X = “ << x << endl;
Cout <<”Y = “ << y << endl;
Cout <<”Z = “ << z << endl;
Return 0. }
|
X = 12
Y = 2.15
Z = 25
|
KODE PROGRAM B
|
HASIL EKSEKUSI PROGRAM B
|
#include <iostream>
using namespace std;
int main () {
int x;
float y, z;
x = 12.8;
y = 2.15;
z = x * y;
Cout <<”X = “ << x << endl;
Cout <<”Y = “ << y << endl;
Cout <<”Z = “ << z << endl;
Return 0. }
|
X = 12
Y = 2.15
Z = 25.8
|
KODE PROGRAM C
|
HASIL EKSEKUSI PROGRAM C
|
#include <iostream>
using namespace std;
int main () {
int x;
float y, z;
x = 12;
y = 2.15;
z = x * y;
Cout <<”X = “ << x << endl;
Cout <<”Y = “ << y << endl;
Cout <<”Z = “ << z << endl;
Return 0. }
|
X = 12
Y = 2.15
Z = 25.8
|
Ketiga kode program diatas (A, B dan C) dituis dengan bahasa C++. sekilas sama nammun berbeda pada penggunaan tipe data dan pengisian nilai.
Pada kode program S, variabel x dan z kita deklarasikan bertipe data int (Integer = bilangan bulat) dan y bertipe data float (pecahan). hasil eksekusi program A menunjukkan hasil yang tidak kita inginkan. Nilai z dideklarasikan bertipe data int maka hasilnya menjadi 25. dari ketiga kode program diatas yang paling benar adalah kode program C. mengapa kode program B Salah ? cobalah cermati bagian kode yang dicetak tebal kemudian tentukan dimana terjaid kesalahan.
l Character
Bersama dengan tipe data numeric, character merupakan tipe data yang paling banyak digunakan. Tie data character sering juga disebut sebagai char atau string. Tipe data string hanya dapat digunakan menyimpan teks atau sepanjang berada dalam tanda petik dua (“...”) atau petik tunggal (‘...’). perhatikan contoh berikut :
KODE PROGRAM
|
HASIL EKSEKUSI PROGRAM
|
#include <iostream>
using namespace std;
int main () {
int x;
x = 5;
char huruf = ‘A’;
Char*kata = ‘Java’;
Cout <<”X = “ << x << endl;
Cout <<”Isi variable huruf = “ << huruf << endl;
Cout <<”Isi variable kata = “ << kata << endl;
Return 0. }
|
X = 5
Isi variable huruf = A
Isi variable kata = Java
|
Pada contoh ini kita mendeklarasikan variabele x sebagai int (integer), sedangkan variabl huruf dan kata bertiper data char (character). perhatikan hasil eksekusi kode program diatas.
l Boolean
Tipe data Boolean digunakan untuk menyimpan nilai Tru/False (benar/Salah). pada sebagian besar bahasa pemrogaman nilai selain 0 menunjukkan True dan 0 melambangkan False. Tipe data ini banyak digunakan untuk mengambil kepututsan pada struktut percabangan dengan IF ... THEN ... atau IF ... THEN ... ELSE.
l Array
Array atau sering disebut sebagai larik adalah tipe yang sudah terstruktur dengan baik, meskipun masih sederhana. Aray mampu menyimpan sejumlah data dengan tipe yang sama (homogen) dalam sebuah variabel. Setiap lokasi data array diberi nomor indeks yang berfungsi sebagai alamat data tersebut. Penjelasan tentang array akan disampaikan lebih detil pada bagian lain dari bab ini.
l Record atau Stuct
Seperti halnya Array, Record atau Struct termasuk tipe data komposit. Record dikenal dalam bahasa Pascal/Delphi sedangkan Struct dikenal dalam bahas C++. berbeda dengan Array, tipe data record mampu menampung banyak data dengan tipe berbeda - beda (keterogen). sebagai ilustrasi array mampu menampung banyak data namun dengan satu tipe data yag sama, misalnya integr saja. Sedangkan dalam record, satu bagian integer, satu bagian lagi character, dan bagian lainnya Boolean. Biasanya record digunakan untuk menampung data subatu obyek. Misalnya, siswa memiliki nama, alamat, usia, tempat lahir, dan tanggal lahir. Nama akan menggunakan tipe data string, alamat bertipe data string, usia bertipe data single (numeric), tempat lahir bertipe data String dan tanggal lahir bertipe data base. Berikut ini contoh pendekarasian record dalam Delphi.
Contoh Deklarasi Tipe Data Record
| ||
Type TRecord_Siswa = Record
Nama_Siswa
Alamat
Usia
EndRecord
|
:
:
:
|
String (30)
String (50)
Real
|
l Image
Image atau gambar atau citra merupakan tipe data grafik. Misalnya grafik oerkembangan jumlah siswa SMK, foto keluarga kita, video perjalanan dan lain - lain. Pada bahasa - bahasa pemrogaman modern terutama yang berbasis visual tiep data ini telah didukung dengan sangat baik.
l Date Time
Nilai data untuk tanggal (Date) dan waktu (Time) secara internal disimpan daln format yang spesifik. Variable atau konstanta yang dideklarasikan dengan tipe data Date dapat digunakanuntuk 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.
Contoh Penggunaan Tipe Data Data Time pada visual Basic
| ||
Dim WaktuLahir As Date
| ||
WaktuLahir
WaktuLahir
WaktuLahir
WaktuLahir
|
:
:
:
:
|
“01/01/1997”
“13:03:05 AM”
“02/23/1998 13:13:40 AM”
#02/23/1998 13:13:40 AM#
|
l Tipe Data Lain
Ø Subrange
Tipe data subrange merupakan tipe data bilangan yang mempunya ijangkauan nilau tertentu dengan yang ditetapkan programmer. Biasanya tipe data ini mempunyai nilai batas minimum dan nilai matas maksimum. Tipr data ini didukung dengan sangat baik dalam Delphi. Berikut contoh deklarasi tiper data subrange dalam Delphi.
Contoh Penggunaan Tipe Data Subrange pada Delphi
| ||
Type
| ||
BatasIndeks
RentangTahun
|
:
:
|
1..2
1950..2030
|
Var
| ||
Indeks
Tahun
|
:
:
|
BatasIndeks
RentangTahun
|
Ø Enumerasi
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 pemrogaman deklaratif seperti SQL. Berikut ini contoh deklarasi tipe data enumerasi dalam Delphi.
Contoh Penggunaan Tipe Data Enumerasi
| ||
Type
| ||
Hari_dlm_minggu = (Nol, Senin, Selasa, Rabu, Kamis, Jumat, Sabtu, Minggu)
Nama_Bulan - (Nol, Januari, februari, aret, April, Mei, Juni, Juli, Agustus, September, Oktober, November, Desember)
| ||
Var
| ||
No_Hari
No_Bulan
|
:
:
|
Hari_dlm_minggu
Nama_Bulan
|
Ø Object
Tipe data object digunakan untuk menyimpan nilai berhubungan dengan obyek - obyek yang disediakan oleh visual basic, Delphi dan dan bahasa pemrogaman lain yang berbasis GUI. Sebagai contoh, apabila kita mempunyai form yang memiliki cntrol Command Button yang kita beri nama Command1, kita dapat mendeklarasikan variabel sebagai berikut :
Contoh Penggunaan Tipe Data Daate Time Visual Basic
|
Dim WaktuLahir As CommandButton
Set A = Command1
A. Caption = “Hey!!!”
B. 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 objek Command1 dengan menggunakan variabel A.
Ø Variant
Tipe data hanya ada di Visual Basic. Tipe ini adalah tipe data yang paling fleksibel diantara tipe data yang lain, karena dapat mengakomodasi semua tipe data yang lain seperti telah dijelaskan.
EmoticonEmoticon