Pengaturcaraan
Pengaturcaraan
1
Generasi Bahasa Pengaturcaraan
Bahasa mesin merupakan bahasa asas bagi komputer dengan perwakilan data sebagai 0
dan 1. Aturcara bahasa mesin berbeza dari sebuah komputer ke komputer yang lian, iaitu
bersandarkan kepada mesin.
Bahasa himpunan adalah bahasa aras rendah yang membenarkan seseorang pengaturcara
menggunakan ringkasan atau singkatan perkataan yang mudah diingati berbanding
nombor-nombor. Oleh kerana komputer hanya boleh melaksanakan aturara dalam bahasa
mesin, penterjemah bahasa diperlukan jika aturcara ditulis dalam bahasa lain.
Penterjemah bahasa adalah sejenis perisian sistem yang menterjemah aturcara yang
ditulis dalam bahasa generasi kedua, ketiga atau lebih tinggi ke dalam bahasa mesin.
Terdapat 3 jenis penterjemah bahasa iaitu:
a) Penghimpun
b) Pengkompil
c) Pentafsir
Bahasa peringkat tinggi atau bahasa generasi ketiga adalah bahasa seakan bahasa
Inggeris. Contohnya COBOL yang digunakan dalam aplikasi bisnes, Fortran, Basic,
Pascal, C dan Ada. Bahasa ini tidak bersandar kepada mesin, iaitu ia boleh digunakan
pada lebih daripada satu jenis komputer. Penterjemah bahasa peringkat tinggi bergantung
kepada bahasa yang digunakan samaada suatu pengkompil atau pentafsir.
b) Pentafsir - Penterjemah bahasa yang menukar setiap penyataan bahasa peringkat tinggi
ke dalam bahasa mesin dan melaksanakannya secara segera bagi setiap penyataan demi
penyataan. Tiada kod objek disimpan tidak seperti pengkompil. Contoh bahasa yang
menggunakan pentafsir adalah Basic.
2
Generasi Keempat: Bahasa peringkat Tinggi
Bahasa peringkat tertinggi atau bahasa generasi keempat dikenali juga dengan nama 4GL.
Ia lebih berorientasikan pengguna dan membenarkan pengaturcara untuk membangunkan
aturcara dengan sedikit arahan berbanding dengan bahasa generasi ketiga. 4GL juga
dipanggil bahasa tak berprosedur kerana pengaturcara boleh menulis aturcara lengkap
yang hanya perlu memberitahu komputer apa yang hendak dilakukan sahaja, dan tidak
perlu menyatakan semua prosedur bagi melakukannya.
a) Penjana laporan - Penjana laporan dipanggil juga penulis laporan. Ia adalah aturcara
bagi pengguna akhir yang digunakan untuk menghasilkan laporan.
b) Bahasa pertanyaan - Bahasa pertanyaan adalah bahasa yang mudak digunakan untuk
mendapatkan semula data daripada sistem pengurusan pangkalan data.
Bahas tabie atau bahasa genarasi kelima terdiri daripada dua jenis:
Bahasa tabie adalah sebahagian daripada bidang kepintaran buatan. Kepintaraan buatan
adalah sekumpulan teknologi yang berkaitan, yang cuba untuk membangunkan mesin
bagi menjejak kualiti seperti manusia. Contoh-contohnya pembelajaran, penaakulan,
berkomunikasi dan mendengar.
3
Jenis Bahasa Pengaturcaraan
Pengaturcaraan Linear
Kod aturcara berjujukan. Aturcara dikawal melalui lompatan dan blok aturcara akan
disalin semula untuk kegunaan yang berulang. Pengaturcaraan linear sesuai akan disalin
semula untuk kegunaan yang berulang. Pengarucaraan linear sesuai untuk aturcara
pendek dan kesemua datanya adalah sejagat. Ia sukar untuk diselenggarakan. Contoh
bahasa pengaturcaraan linear adalah versi awal BASIC.
Pengaturcaraan Prosidural
Aturcara dibahagikan kepada subrutin (subroutines). Aturcara dikawal oleh lompatan dan
dipanggil di subrutin. Subrutin adalah abstrak untuk mengelakkan perulangan.
Pengaturcaraan prosidural sesuai untuk aturcara yang bersaiz sederhana. Kesemua
datanya adalah sejagat. Ia sukar untuk diselenggarakan. Contoh bahasa pengaturcaraan
prosidural adalah FORTRAN, COBOL.
Pengaturcaraan Struktur
Aturcara dipecahkan kepada prosedur individu yang akan melaksanakan tugas yang
berlainan. Prosedur tersebut tidak digalakkan bergantungan diantara satu sama lain.
Prosedur mempunyai data setempat dan logik sendiri. Maklumat dihantar kepada
prosedur melalui parameter. Ini membolehkan skop data dikawal. Penggunaan fungsi
abstrak dan konsep pengisytiharan jenis data pengguna diperkenalkan. Ia mampu
membangun dan menyelenggara aturcara yang besar dengan pantas dan mudah. Contoh
pengaturcaraan berstruktur adalah Pascal, C.
4
diisytiharkan. Contoh bahasa pengaturcaraan berorientasikan objek adalah C++, JAVA,
SmallTalk.
5
Bahasa Pengaturcaraan Berprosedur Dan
Tidak Berprosedur
Pengaturcaraan Berprosedur
Suatu modul sepatutnya melaksanakan satu proses tunggal, tersendiri daripada aspek
logik dan mudah difahami.
Modul sepatutnya tidak bersandaran.
Modul sepatutnya agak ringkas.
Kelakuan atau ‘behaviour’ ini boleh dinyatakan dalam bentuk formula dan fungsi seperti
mana dalam bahasa pengaturcaraan LISP, atau kaitan entities seperti dalam bahasa
pengaturcaraan PROLOG.
Var
nombor1,nombor2,jwp:integer;
Begin
Clrscr;
Write('Masukkan Nombor Pertama:');
Readln(nombor1);
Write('Masukkan Nombor Kedua:'); Readln(nombor2);
MenambahNombor(nombor1,nombor2,jwp); Write(jwp); Readln; End.
6
Pengaturcaraan Tidak Berprosedur
Logik aturcara tidak berprosedur adalah tersendiri. Contoh bahasa pengaturcaraan tidak
berprosedur adalah, report generation language, functional language, logical language,
object-oriented simulation language, SQL dan lain-lain.
Berikut adalah contoh aturcara tidak berprosedur menggunakan SQL untuk membina
suatu table ‘Orang’ di dalam database.
Untuk menghapus table diatas, kod aturcara SQL nya adalah seperti berikut:
Ia memproses suatu set records serentak dan bukannya satu demi satu.
Ia mengendalikan data secara automatik.
7
Elemen-Elemen Bahasa Pengaturcaraan C++
Contoh pengisytiharan:
8
Fungsi Dan Parameter (Functions and parameters)
Layout function atau fungsi dalam aturcara C++ adalah seperti berikut:
Contoh:
::
. -> [] () x++ x--
++x --x ! *(deref) &(addr) +(unary) -(unary) new delete sizeof
/%
+-
<< >> (i/o dalam C++, bitshifts dalam C)
< <= > >=
bitwise operators: ^ ~ & |
== !=
&&
||
= += -= *= /= %=
9
Input Dan Output
Input dan output di dalam C++ memerlukan iostream.h I/O di dalam C++ menggunakan
‘cin’ dan ‘cout’ serta simbol << dan >>. Contoh:
cout << "X mempunyai nilai " << X << endl << "y mempunyai
nilai " << y << endl;
cout << "c mempunyai nilai " << c << endl << "myarray
mempunyai nilai " << myarray <<
endl;
X mempunyai nilai 0
y mempunyai nilai 3.7
c mempunyai nilai a
myarray mempunyai nilai xyz
if (<pernyataan Boolean) {
// pernyataan if dan expression jika condition di atas
benar
} else {
// pernyataan jika boolean test diatas adalah salah
}
Contoh:
if (x == 3) {
// pernyataan untuk x == 3 }
else if (x == 7) {
// pernyataan untuk x == 7 } else if (x < 0) {
// pernyataan untuk x adalah negative } else {
// pernyataan untuk selain nilai x }
10
switch (x) {
case 3: // statements for x == 3
break;
case 7: // statements for x == 7
break;
default: if (x < 0) {
// statements for x is negative
} else {
// statements for all other values
}
}
do {
// statements to be executed
} while (<Boolean expression>);
Structs
typedef struct {
<type> field1;
<type> field2;
...
<type> fieldN;
} <typename>;
11
Kelas C++(C++ Classes)
// destructor
~Myclass();
// inline functions
int returndata() { return(mydata); }
void setdata(int x) { mydata = x; }
// general functions
void dosomework();
private:
// private functions
void adjustdata() { mydata++; }
// private data
int mydata;
Myclass *classptr;
}
Myclass::~Myclass()
{
delete classptr;
}
void Myclass::dosomework()
{
classptr = new Myclass;
classptr->setdata(mydata + 1);
}
void main()
{
// isytihar pembolehubah Myclass
Myclass classvar;
12
// panggil "dosomework" untuk sesuatu pembolehubah
classvar->dosomework();
}
Copyrights
©Mohamad Azri Bin Azhar. Hakcipta Terpelihara. Tidak dibenarkan mengeluar ulang
mana-mana bahagian artikel, ilustrasi dan isi kandungan dalam apa juga bentuk dan cara
sama ada dengan cara penyampaian lisan, elektroknik, fotokopi, tulisan tangan, mekanik
atau cara lain tanpa mendapat izin betulis dari penulis. Semua hakcipta teks dan ilustrasi
adalah milik pemegang hakcipta masing-masing. Jika terdapat sebarang pelanggaran
hakcipta di dalam teks ini, ianya adalah tidak disengajakan. Jika ini berlaku sila hubungi
penulis untuk menukarnya kembali.
http://azri.free.fr/
13