Double click select all

Kamis, 23 Februari 2012

ELEMEN BAHASA PEMROGRAMAN

ELEMEN-ELEMEN BAHASA PEMROGRAMAN

I. Elemen-Elemen Dalam Bahasa Pemrograman
Berikut adalah element-element pada bahasa pemrograman:
A. Aturan Leksikal yaitu aturan yang digunakan dalam membentuk suatu deklarasi, definisi maupun statement hingga menjadi satu program yang utuh. Aturan ini imeliputi beberapa element antara lain:
1. Token : element terkecil pada bahasa pemrograman yang memiliki arti penting bagai compiler. Yang termasuk token antara lain. Identifier, keyword, operator dan sebagainya. Token yang satu dengan yang lain dipisahkan dengan satu atau lebih spasi, tab, baris baru atau komentar
2. Komentar : teks(kumpulan karakter) yang diabaikan oleh compiler. Komentar sangat berguna untuk memberi catatan mengenai bagaian program tertentu sebagai referensi baik bagi programmer itu sendiri maupun orang lain yang membaca kode program tersebut. Pada bahasa pascal, teks yang berada diantara kurung kurawal pembuka { dan kurung kurawal tutup } akan dianggap sebagai komentar., selain itu dapat pula menggunakan tanda (* sebagai pembuka komentar, dan tanda ) sebagai penutup
Contoh pascal:
(* program mencetak hello world
Oleh: saya *)
Begin
{cetak hello World
Oleh saya
}
Writeln(‘Hello World’);
end
3. Identifier : merupakan kumpulan karakter yang digunakan sebagai penanda untuk nama variable, namatipe data, fungsi prosedur dan sebagainya. Aturan penulisan identifier pada bahasa pascal dan bahasa C dapat dikatakan serupa. Yaitu : suatu identifier harus diawali oleh karakter non angka sebagai berikut:_ abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ selanjutnya boleh menggunakan karakter angka maupun karakter non angka tersebut diatas, namun tidak boleh menggunakan karakter khusus/spesial seperti + – * / ?! {} [] dan sebagainya
Berikut adalah contoh-contoh identifier yang benar
_nama
No_telp
4. Keywords (Reserved Words) : merupakan kata-kata yang telah ada/ didefinisikan oleh bahasa pemrograman yang bersangkutan.Kata-kata tersebut telah memiliki definisi yang sudah tetap dan tidak dapat diubah. Karena telah memiliki definisi tertentu maka kata-kata ini tidak dapat digunakan sebagai identifier
Pada bahasa pascal, yang termasuk reserved word antara lain:
And array asm begin case const div do downto else end file for forward function goto if in label mod nil not of or packed program procedure record repeat set string then to type unit until uses var while with
5. Operator : digunakan untuk menyatakan suatu perhitungan/operasi. Operator yang digunakan untuk operasi yang melibatkan satu operand disebut unary operator. Jika melibatkan dua operand maka disebut binary operator, dan jika melibatkan tiga operand, operator tersebut disebut ternary operator.Didalam suatu operasi dapat terdapat banyak operator. Urutan eksekusi dari operator-operator disebut juga operator predence. Prendence yang lebih rendah akan dieksekusi belakangan, Misalnya
A = (10 + 5) * 2
a. Arithmetic Operator :o perator yang digunakan untuk melakukan operasi matematika seperti penuumlahan, pengurangan,perakalian, pembagian
b. Assignment Operator : digunakan untuk memberi nilai suatu identifier. Pada bahasa pascal, digunakan tanda titik dua dan tanda sama dengan := untuk memberi nilai pada variabel.
Contoh:
C := A + B
Tanda = memiliki fungsi yang sama dengan tanda := pada bahasa pascal
c. Bitwise dan Logical Operator : digunakan untuk melakukan operasi bit dan logika. Yang termasuk didalam operator ini antara lain:
§ Negasi à Not
Contoh A;=NOT B;
§ And.contoh A:=A and B;
§ Or.Contoh A:=B OR C;
§ shift left(<<) contoh A;=B shl C;
§ Shift Right(>>) Contoh A:=B shr C;
d. Relational Operator : digunakan untuk membandingkan nilai dua operand. Sebagai catatan, operand yang dibandingkan harus memiliki tipe data yang sama kecuali untuk bilangan bulat(bertipe integer) dan bilangan pecahan(bertipe real atau float). Yang termasuk operator relasional yaitu: penanda kesamaan (=), penanda lebih besar, penanda lebih besar atau sama dengan, penanda lebih kecil, penanda lebih kecil atau sama dengan,penanda tidaksamaan(<>)
e. Pointer Operator : digunakan untuk melakukan operasi operand yang berupa pointer. Pada bahasa pascal digunakan tanda ^ sebagai deference pointer
B. Tipe data
Pada suatu bahasa pemrograman umumnya telah menyediakan tipe-tipe data yang sederhana (simple) maupun yang terstruktur . Dan apabila kita membutuhkan tipe data yang belum tersedia kita dapat mendefinisikan sendiri tipe data baru yang disebut enumerated type.
Berikut adalah tipe data sederhana (simple) :
data1
Yang dimaksud dengan tipe data terstruktur yaitu tipe data yang dapat menampung lebih dari satu nilai, sbb:
1. Array
Yang dimaksud array yaitu tipe data berindeks yang terdiri dari satu atau lebih elemen/komponen yang memiliki tipe data yang sama.
Berikut adalah contoh penggunaan array:
{bahasa pascal}
Var Bil : array[0..3] of integer;
Begin
Bil[0]:=1;
Bil[1]:=2;
Bil[2]:=bil[0] + 2;
Bil[3]:=bil[0] + bil[2];
End;
2. Record (Pascal) atau struct (Bahasa C)
Tipe data ini digunakan untuk merepresentasikan kumpulan (set) elemen/komponen yang memiliki satu jenis atau lebih tipe data. Tiap element disebut juga field atau property atau attribute.
Beriut adalah contoh penggunaan record dan struct
{bahasa pascal} Type
Tsiswa = record
No_induk: integer;
Gender: char;
End;
Var
Saya:Tsiswa;
Teman:array[1..3] of Tsiswa;
Saya.no_induk:=10;
Saya.gender:=’L';
Teman[1],no_induk:=1;
Teman[1],gender:=’L';
Teman[2],no_induk:=2;
Teman[2],gender:=’P';
Teman[3],no_induk:=3;
Teman[3],gender:=’P';
End;
*/bahasa C*/ Struct Tsiswa{
Int no_induk;
Char gender;
};
Void main(){
Struct Tsiswa saya, teman[3];
Saya.no_induk:=10;
Saya.gender:=’L';
Teman[0],no_induk:=1;
Teman[0],gender:=’L';
Teman[1],no_induk:=2;
Teman[1],gender:=’P';
Teman[2],no_induk:=3;
Teman[2],gender:=’P';
}
Pada contoh diatas, dideklarasikan tipe data terstruktur yang diberi nama Tsiswa. Tipe data tersebut terdiri atas dua elemen yang masing-masing bertipe integer dan char
C. Expression
Expression yang paling sederhana yaitu nama variable. Expression yang lebih kompleks akan melibatkan operator-operator, maupun pemanggilan function atau procedure.
Berikut adalah contoh expression:
A à hanya berupa nama variable
10 à berupa suatu nilai
A + 3 * 2 à expression menggunakan operator
Calculate(A,B) à melakukan pemanggilan function bernama calculate
D. Statement: seperti yang telah disinggung diatas,statement merupakan bagaian program yang berisi perintah yang akan dieksekusi/dijalankan.
1. Simple Statement yaitu statement yang tidak berisi satatement lainnya, sbb:
a. Assignment Statement : yaitu statement yang digunakan untuk memberikan nilai ke suatu variable
Contoh Pascal Contoh Bahasa C
a:=10; b:=a*2;
c:=c*b;
Student[i].id:=12;
a=10; b=a*2;
c=c*b;
Student[i].id=12;
b. Statement untuk pemanggilan function atau procedure: yaitu statement yang memamnggil function atau procedure yang telah didefinisikan pada program.
Contoh pemanggilan procedure dan fungsi pada bahasa Pascal dan bahasa C (dengan asumsi procedure Calculate, Cetak, dan Fuction GetLength untuk contoh dibawah, telah didefinisikan terlebih dahulu):
Contoh Pascal Contoh Bahasa C
Calculate (a,b); B:=GetLength(student[i].Name);
Cetak (a,b);
Calculate (a,b); B=GetLength(student[i].Name);
Cetak (a,b);
c. Jump Statement : yaitu statement yang digunakan untuk melompati statemet-statement lain. Yang termasuk dalam kategori statement ini yaitu:
Fungsi Pascal Bahasa C
Melompat ke statement tertentu goto Goto
Keluar dari iterative statement Break Break
Melompat ke iterasi selanjutnya pada iterative statement Continue Continue
Keluar dari function/procedure Exit exit
2. Compound Statement
Compound statement (kumpulan statement) adalah sekumpulan statement yang terdiri dari statement-statement lain, termasuk juga iteration dan selection statement.
Pada bahasa pascal, kumpulan statement diawali oleh keywords Begin dan ditutup oleh keyword end, sedangkan pada bahasa C, kumpulan statement akan diawali dan diakhiri oleh tanda kurung kurawal{ dan }. Berikut adalah contoh compound statement:
{bahasa Pascal} If i =0 then
Begin
{compound statement starts here}
Write(‘Nilai I tidak boleh nol’);
Hasil:=-1;
{compound statement ends here}
End;
/*bahasa C*/ If (i =0)
{
//compound statement starts here}
printf(“Nilai I tidak boleh nol”);
Hasil:=-1;
//compound statement ends here
}
Selection statement melakukan pemeriksaan nilai/kondisi, yang kemudian akan memilih statement mana yang akan dieksekusi. Statement ini terdiri dari 2 jenis yaitu If..then..else statement dan case/switch statement.
3. Iteration Statement
Iteration statement digunakan untuk melakukan perulangan sekumpulan statement (compound statement).
Iteration Statement Bahasa Pascal
Repeat/do loop: Evaluasi kondisi dilakukan di bagian akhir Repeat (statement);

(statement);
Until(kondisi);
Contoh:
I:=1;
Repeat
i:i+2;
writeln(i);
until i>=10;
While do: Evaluasi kondisi dilakukan di bagian awal While(kondisi) do (statement)
Contoh:
Contoh:
I:=1;
While(i<10) do
begin
i:i+2;
writeln(i);
end;
For..loop Perulangan dengan increment nilai For counter:=lower to upper do (statement)
Atau
For counter:=upper downto lower do
(statement)
Contoh:
For i:=1 to 10 do
Writeln(i);
For i:= 1 to 10 do
begin
write();
for j:= 10 downto I do
write(j);
writeln;
end;
E. Function dan Procedure
Procedure dan Function disebut juga subroutine, merupakan blok statement yang dapat dipanggil dari lokasi yang berbeda di dalam program. Yang membedakan antara function dan procedure yaitu:
suatu function jika dijalankan/dipanggil akan mengembalikan suatu nilai.
Ketika procedure atau function dipanggil, kita dapat melewatkan suatu nilai ke dalam function atau procedure tersebut. Nilai yang dilewatkan disebut juga argument atau parameter. Ada dua cara melewatkan nilai, yaitu:
1. Passing by Value (Dilewatkan secara nilai) :jika didalam procedure atau function dilakukan perubahan nilai parameter yang dilewatkan secara nilai parameter yang dilewatkan secara nilai, maka nilai parameter yang sebenarnya tidak ikut berubah, hal ini dikarenakan parameter yang dilewatkan secara nilai akan dicopy sebagai nilai local di procedure/function yang bersangkutan
{bahasa Pascal}
Uses crt;
Procedure ubah(a:integer);
Begin
A:=10;
Writeln(‘Ubah menjadi =”,a);
End;
{main program}
Var bil: integer;
Begin
Bil:=1;
Writeln(‘Bil sebelum=’,bil);
Ubah(bil);
Writeln(‘Bila sesudah=’,bil);
End;
Hasil eksekusi kedua program diatas adalah sama, pada layar akan tampak tulisan:
Bil sebelum=1
Ubah menjadi =10
Bil sesudah=1
2. Passing by Reference : jika didalam procedure atau function dilakukan perubahan nilai parameter yang dilewatkan secara nilai reference, maka nilai parameter yang sebenarnya juga akan berubah.Contoh:
{bahasa Pascal}
Uses crt;
Procedure ubah(var a:integer);
Begin
a:=10;
writeln(‘Ubah menjadi =”,a);
End;
{main program}
Var bil: integer;
begin
bil:=1;
writeln(‘Bil sebelum=’,bil);
Ubah(bil);
writeln(‘Bil sesudah=’,bil);
End;
Jika dijalankan, maka dilayar akan tampak:
Bil sebelum=1
Ubah menjadi =10
Bil sesudah=1

Tidak ada komentar:

Posting Komentar