IT132 Dasar-Dasar Pemrograman fileMerupakan penerapan konsep modular, yaitu memecah program menjadi...

30
IT132 Dasar-Dasar Pemrograman Ramos Somya

Transcript of IT132 Dasar-Dasar Pemrograman fileMerupakan penerapan konsep modular, yaitu memecah program menjadi...

Page 1: IT132 Dasar-Dasar Pemrograman fileMerupakan penerapan konsep modular, yaitu memecah program menjadi modul-modul atau subprogram-subprogam yang lebih sederhana. Untuk hal-hal yang sering

IT132 – Dasar-Dasar Pemrograman

Ramos Somya

Page 2: IT132 Dasar-Dasar Pemrograman fileMerupakan penerapan konsep modular, yaitu memecah program menjadi modul-modul atau subprogram-subprogam yang lebih sederhana. Untuk hal-hal yang sering

Dalam program yang kompleks kode program panjang.

Sulit dalam memahami program (jalannya program).

Solusi: memecah program tersebut menjadi modul-modulsehingga lebih ringkas.

Untuk memecah program yang kompleks, kitamembutuhkan procedure dan function.

Page 3: IT132 Dasar-Dasar Pemrograman fileMerupakan penerapan konsep modular, yaitu memecah program menjadi modul-modul atau subprogram-subprogam yang lebih sederhana. Untuk hal-hal yang sering

Berdasarkan penjelasan sebelumnya, prosedur ataufungsi yaitu suatu bagian/modul program yang terpisahdari program utama, diletakkan dalam blok tersendiriyang berfungsi sebagai bagian dari program.

Page 4: IT132 Dasar-Dasar Pemrograman fileMerupakan penerapan konsep modular, yaitu memecah program menjadi modul-modul atau subprogram-subprogam yang lebih sederhana. Untuk hal-hal yang sering

Merupakan penerapan konsep modular, yaitu memecahprogram menjadi modul-modul atau subprogram-subprogam yang lebih sederhana.

Untuk hal-hal yang sering dilakukan berulang-ulang,cukup dituliskan sekali saja dalam prosedur dan dapatdipanggil atau dipergunakan sewaktu-waktu biladiperlukan.

Page 5: IT132 Dasar-Dasar Pemrograman fileMerupakan penerapan konsep modular, yaitu memecah program menjadi modul-modul atau subprogram-subprogam yang lebih sederhana. Untuk hal-hal yang sering

Terdapat pola:

Cara manual:print*; print*; print*; prints; prints; prints; print*; print*;print*; NL;prints; prints; prints; print*; print*; print*; NLprint*; print*; print*; prints; prints; prints; print*; print*;print*; NL;

Page 6: IT132 Dasar-Dasar Pemrograman fileMerupakan penerapan konsep modular, yaitu memecah program menjadi modul-modul atau subprogram-subprogam yang lebih sederhana. Untuk hal-hal yang sering

Caranya: Lihat pola yang sama.

Buat definisi:

def tigabintang()= print*; print*; print*; enddef

def tigaspasi()= prints; prints; prints; enddef

Perintah menjadi:

tigabintang();tigaspasi();tigabintang();NL;

tigaspasi();tigabintang(); NL;

tigabintang();tigaspasi();tigabintang();

Page 7: IT132 Dasar-Dasar Pemrograman fileMerupakan penerapan konsep modular, yaitu memecah program menjadi modul-modul atau subprogram-subprogam yang lebih sederhana. Untuk hal-hal yang sering

Buatlah program untuk mencetak huruf HELLO dalam posisi vertikal. Ukuran tiap huruf 5x5.(Gunakan procedure)

Page 8: IT132 Dasar-Dasar Pemrograman fileMerupakan penerapan konsep modular, yaitu memecah program menjadi modul-modul atau subprogram-subprogam yang lebih sederhana. Untuk hal-hal yang sering

def pola1() = print*;prints;prints;prints;print*;NL; enddef def pola2() = print*;print* print*;print*; print*;NL;

enddef def pola3() = print*;NL; enddef

Perintah menggunakan procedure:pola1();pola1();pola2();pola1();pola1();NL;pola2();pola3();pola2();pola3();pola2();NL;pola3();pola3();pola3();pola3();pola2();NL;pola3();pola3();pola3();pola3();pola2();NL;Pola2();pola1();pola1();pola1();pola2();NL;

Page 9: IT132 Dasar-Dasar Pemrograman fileMerupakan penerapan konsep modular, yaitu memecah program menjadi modul-modul atau subprogram-subprogam yang lebih sederhana. Untuk hal-hal yang sering

def hello() =def H() = pola1();pola1();pola2();pola1();pola1();NL; enddef

def E() = pola2();pola3();pola2();pola3();pola2();NL; enddef

def L() = pola3();pola3();pola3();pola3();pola2();NL; enddef

def O() = pola2();pola1();pola1();pola1();pola2();NL; enddef

def pola1() = print*;prints;prints;prints;print*;NL; enddef

def pola2() = print*;print* print*;print*; print*;NL; enddef

def pola3() = print*;NL; enddef

H();E();L();L();O();

enddef

Pemanggilan: hello();

Page 10: IT132 Dasar-Dasar Pemrograman fileMerupakan penerapan konsep modular, yaitu memecah program menjadi modul-modul atau subprogram-subprogam yang lebih sederhana. Untuk hal-hal yang sering

def pola3() = print*;NL; enddef Procedure di atas bila dipanggil hasilnya selalu sama, karena

tidak ada parameter. Dengan paramater memungkinkanmemberikan hasil output yang berbeda tergantungparameter yang dipassingkan.

Misal:def r3(p) = p();p();p() ; enddefdef one() = p*; enddefdef two() = NL; enddefdef three() = NL; p*;p*;p*; enddefr3(one); r3(two); r3(three)

Page 11: IT132 Dasar-Dasar Pemrograman fileMerupakan penerapan konsep modular, yaitu memecah program menjadi modul-modul atau subprogram-subprogam yang lebih sederhana. Untuk hal-hal yang sering

Merupakan sub program yang tidak mengembalikan nilaisecara langsung.

Prosedur memiliki struktur yang sama dengan strukturprogram, yaitu terdiri dari nama prosedur, deklarasi-deklarasi dan bagian deskripsi (statement atau aksi didalam prosedur).

Semua deklarasi di dalam prosedur bersifat lokal sehinggahanya bisa digunakan oleh prosedur itu saja, sedangkandeklarasi di dalam program utama bersifat globalsehingga dapat dikenali di seluruh bagian program.

Page 12: IT132 Dasar-Dasar Pemrograman fileMerupakan penerapan konsep modular, yaitu memecah program menjadi modul-modul atau subprogram-subprogam yang lebih sederhana. Untuk hal-hal yang sering

PROCEDURE mempunyai judul_prosedur sedangkanProgram utama tidak.

Untuk tanda berakhirnya Procedure diakhiri dengantanda End; sedangkan Program Utama End.

Page 13: IT132 Dasar-Dasar Pemrograman fileMerupakan penerapan konsep modular, yaitu memecah program menjadi modul-modul atau subprogram-subprogam yang lebih sederhana. Untuk hal-hal yang sering

Penggunaan prosedur selalu diawali dengan kata Procedure. Struktur umum prosedur adalah sebagai berikut :

Procedure Nama_Prosedur (param_formal1:tipe_param1, param_formal2:tipe_param2,…);{Jika prosedur tidak memiliki parameter, tanda kurung tidak disertakan}var{bagian deklarasi prosedur, sifatnya lokal}begin

statement-1;statement-2;…………Statement-n;

end;

Page 14: IT132 Dasar-Dasar Pemrograman fileMerupakan penerapan konsep modular, yaitu memecah program menjadi modul-modul atau subprogram-subprogam yang lebih sederhana. Untuk hal-hal yang sering

Struktur blok program utama beserta prosedur:

Program judul_program;var{bagian deklarasi prosedur, sifatnya global}

Procedure Nama_Prosedur; {Jika prosedur tidak memiliki parameter, tanda kurung tidak disertakan}var{bagian deklarasi prosedur, sifatnya lokal}begin

statement-1;statement-2;…………Statement-n;

end;

{program utama}begin

Nama_Prosedur;end.

Page 15: IT132 Dasar-Dasar Pemrograman fileMerupakan penerapan konsep modular, yaitu memecah program menjadi modul-modul atau subprogram-subprogam yang lebih sederhana. Untuk hal-hal yang sering

uses crt;

procedure cetakBintang;begin

writeln('****');end;

beginclrscr;cetakBintang();cetakBintang();cetakBintang();cetakBintang();readkey;

end.

Page 16: IT132 Dasar-Dasar Pemrograman fileMerupakan penerapan konsep modular, yaitu memecah program menjadi modul-modul atau subprogram-subprogam yang lebih sederhana. Untuk hal-hal yang sering

uses crt;

procedure Tanya_hitung;varX, Y : real;begin

write ('Nilai X =');readln (X) ;Y := X * X;

end;

beginTanya_hitung;writeln ('NilaiY =', Y);

end.

Page 17: IT132 Dasar-Dasar Pemrograman fileMerupakan penerapan konsep modular, yaitu memecah program menjadi modul-modul atau subprogram-subprogam yang lebih sederhana. Untuk hal-hal yang sering

Bila program dikompilasi, akan dideteksi kesalahan olehcompiler, karena variable Y yang sifatnya local diprocedure Tanya_hitung digunakan pada program utama.

Agar nilai-nilai variable dapat digunakan di modul lainnyayang membutuhkan, maka dapat dilakukan denganbeberapa cara, yaitu :- Dibuat global- Dikirimkan sebagai parameter ke modul lainnya.

Page 18: IT132 Dasar-Dasar Pemrograman fileMerupakan penerapan konsep modular, yaitu memecah program menjadi modul-modul atau subprogram-subprogam yang lebih sederhana. Untuk hal-hal yang sering

uses crt;

var

Y: real;

procedure Tanya_hitung;

var

X: real;

begin

write ('Nilai X = ');

readln (X) ;

Y := X * X;

end;

begin

clrscr;

Tanya_hitung;

writeln ('Nilai Y = ', Y: 2: 2);

readkey;

end.

Page 19: IT132 Dasar-Dasar Pemrograman fileMerupakan penerapan konsep modular, yaitu memecah program menjadi modul-modul atau subprogram-subprogam yang lebih sederhana. Untuk hal-hal yang sering

Pengertian hampir sama dengan procedure (sama-samasub program / bagian dari program).

Bedanya:- Fungsi memiliki tipe data.- Fungsi memberikan nilai balik, procedure tidak.- Harus ada NamaFungsi di dalam tubuh fungsi, karena

digunakan untuk menyimpan output.- Penulisannya menggunakan kata Function

Page 20: IT132 Dasar-Dasar Pemrograman fileMerupakan penerapan konsep modular, yaitu memecah program menjadi modul-modul atau subprogram-subprogam yang lebih sederhana. Untuk hal-hal yang sering

Function Nama_Fungsi : tipe_hasil;

var

{bagian deklarasi fungsi, sifatnya lokal}

begin

statement-1;

statement-2;

…………

Statement-n;

Nama_Fungsi:=hasil;

end;

Page 21: IT132 Dasar-Dasar Pemrograman fileMerupakan penerapan konsep modular, yaitu memecah program menjadi modul-modul atau subprogram-subprogam yang lebih sederhana. Untuk hal-hal yang sering

uses crt;

function cetakBintang:string;begin

cetakBintang:= '****';end;

beginclrscr;writeln(cetakBintang);writeln(cetakBintang);writeln(cetakBintang);writeln(cetakBintang);readkey;end.

Page 22: IT132 Dasar-Dasar Pemrograman fileMerupakan penerapan konsep modular, yaitu memecah program menjadi modul-modul atau subprogram-subprogam yang lebih sederhana. Untuk hal-hal yang sering

Suatu variable yang berfungsi sebagai penampung nilai pada procedure atau function, yang diberikan oleh pemanggil procedure atau function.

Contoh:Procedur nama_pro(parameter,parameter:tipe_data);Procedur hitung(angka1,angka2:integer);Procedur bagi(angka1:integer; angka2:real);

Page 23: IT132 Dasar-Dasar Pemrograman fileMerupakan penerapan konsep modular, yaitu memecah program menjadi modul-modul atau subprogram-subprogam yang lebih sederhana. Untuk hal-hal yang sering

Parameter yang dikirmkan dari modul utama ke modulprosedur disebut dengan parameter nyata (actualparameter) dan parameter yang ada dan dituliskan padajudul prosedur disebut dengan parameter formal (formalparameter).

Proses pengiriman data lewat parameter nyata keparameter formal disebut dengan parameter passing.

Parameter nyata dan parameter formal harus dengan tipeyang sama.

Page 24: IT132 Dasar-Dasar Pemrograman fileMerupakan penerapan konsep modular, yaitu memecah program menjadi modul-modul atau subprogram-subprogam yang lebih sederhana. Untuk hal-hal yang sering

Pass by Value Pass by Reference

Page 25: IT132 Dasar-Dasar Pemrograman fileMerupakan penerapan konsep modular, yaitu memecah program menjadi modul-modul atau subprogram-subprogam yang lebih sederhana. Untuk hal-hal yang sering

Parameter yang dikirimkan berupa nilai (value)nya saja.Jadi apabila terjadi pengubahan nilai pada prosedurataupun function tidak akan mempengaruhi nilai padavariabel yang dipassingkan, atau yang dikirimkan.

Page 26: IT132 Dasar-Dasar Pemrograman fileMerupakan penerapan konsep modular, yaitu memecah program menjadi modul-modul atau subprogram-subprogam yang lebih sederhana. Untuk hal-hal yang sering

uses crt;

var angka1,angka2,hasil : integer;

procedure dua(a,b,c : integer);

begin

c:=a+b;

writeln('Hasil = ', c);

end;

Begin

clrscr;

angka1:=10;

angka2:=5;

dua(angka1, angka2, hasil);

writeln;

writeln('angka1 = ', angka1);

writeln('angka2 = ', angka2);

writeln('hasil = ', hasil);

readln;

end.

Page 27: IT132 Dasar-Dasar Pemrograman fileMerupakan penerapan konsep modular, yaitu memecah program menjadi modul-modul atau subprogram-subprogam yang lebih sederhana. Untuk hal-hal yang sering

Parameter yang dikirimkan berupa acuan. Jadi apabilaterjadi pengubahan nilai pada prosedur ataupun functionakan mempengaruhi nilai pada variabel yangdipassingkan, atau yang dikirimkan. Kata kuncinyapemberian tambahan kata var pada pendeklarasianparameter.

Page 28: IT132 Dasar-Dasar Pemrograman fileMerupakan penerapan konsep modular, yaitu memecah program menjadi modul-modul atau subprogram-subprogam yang lebih sederhana. Untuk hal-hal yang sering

uses crt;

var angka1,angka2,hasil : integer;

procedure dua(var a,b,c : integer);

begin

c:=a+b;

writeln('Hasil = ', c);

end;

begin

clrscr;

angka1 :=10;

angka2:=5;

dua(angka1, angka2, hasil);

writeln;

writeln('angka1= ', angka1);

writeln('angka2= ', angka2);

writeln('hasil = ', hasil);

readln;

end.

Page 29: IT132 Dasar-Dasar Pemrograman fileMerupakan penerapan konsep modular, yaitu memecah program menjadi modul-modul atau subprogram-subprogam yang lebih sederhana. Untuk hal-hal yang sering

Buatlah program kalkulator untuk operasi penjumlahan,pengurangan, perkalian dan pembagian menggunakaninputan dari keyboard.

Setiap operasi HARUS menggunakan procedure ataufunction (Pakai Parameter).

Page 30: IT132 Dasar-Dasar Pemrograman fileMerupakan penerapan konsep modular, yaitu memecah program menjadi modul-modul atau subprogram-subprogam yang lebih sederhana. Untuk hal-hal yang sering