460 likes | 1.18k Vues
Prosedur dan Fungsi. Pengantar. Pada dasarnya bahasa C++ tidak mengenal istilah prosedur , C ++ hanya mengenal fungsi , prosedur dalam C++ dianggap sebagai fungsi yang tidak mengembalikan nilai ,
E N D
Pengantar • Padadasarnyabahasa C++ tidakmengenalistilahprosedur, • C++ hanyamengenalfungsi, prosedurdalam C++ dianggapsebagaifungsi yang tidakmengembalikannilai, • sehinggadalampendeklarasianprosedurcukupdituliskandengan kata kunci void dandiikutidengannamaprosedur.
Definisi FUNGSI dan Procedure • Fungsidan procedure merupakansejumlahbarispernyataan/ instruksi yang dikemas di dalamsuatunama (identifier). • PerbedaanantaraFungsidan Procedure : Procedure berisikan proses tertentu yang tidakakanmengembalikannilaikemodulutama. Fungsimengembalikannilaikemodulutama yang memanggilnya. • Keuntunganpembuatanfungsidan Procedure : • Menghindaripenulisankode program yang samaberulang kali. • Kemudahanmenulisdanmenemukankesalaham (debug) program.
DefinisiProsedur • Prosedur URUS PASPOR • Isi formulirpermintaanpaspordenganLampiranfotocopy KTP, KartuKeluargadan Pas Foto. • Serahkanformulir yang sudahdiisibesertabiayapembuatanpaspor. • Wawancaradenganpetugasimigrasi • Terimapaspor
DefinisiProsedur • Prosedur URUS VISA • Isi formulirpermohonan visa denganlampiranfotocopy KTP, paspor, pas foto, tiketpesawatterbang. • Serahkanformulir yang diisibesertabiayapengurusan visa. • Terima Visa.
DefinisiProsedur • Prosedur BERANGKAT DARI BANDARA • Datangkebandarasatu jam sebelumkeberangkatan. • Jikasudahdisuruhnaikkepesawat, tunjukkantiket, paspor, dan visa andakepetugas. • Naikkepesawat. • SelamatJalan.
DefinisiProsedur AlgoritmaPergi_Ke_Luar_Negeri DESKRIPSI : • URUS PASPOR. • URUS VISA. • BERANGKAT DARI BANDARA. /* Didalamsetiapproseduradasekumpulaninstruksi yang harusdilaksanakansatupersatuoleh orang yang akanberangkatkeluarnegeri. */
Flowchart Prosedur Prosedur URUS VISA Prosedur URUS PASPOR
Cara MendefinisikanProsedur procedureNama_Procedure { SpesifikasiProsedur, Berisipenjelasantentangapa yang dilakukanolehprosedurini } { K. Awal : keadaansebelumprosedurdilaksanakan } { K. Akhir : keadaansetelahprosedurdilaksanakan} DEKLARASI { semuanama yang dipakaidalamprosedurdanhanyaberlakulokal di dalamprosedurdidefinisikandisini } DESKRIPSI : { badanprosedur, berisikumpulaninstruksi }
ContohProsedur : procedureCetak_Halo { Mencetak String ‘Halo, dunia!’ kepirantikeluaran } { K. Awal : sembarang } { K. Akhir : string ‘Halo, dunia!’ tercetak} DEKLARASI { tidakada } DESKRIPSI : write (‘Halo, dunia!’)
ContohProsedur : procedureHitung_Luas_Segitiga { MenghitungLuasSegitigadenganrumus L = ½ x a x t } { K. Awal : sembarang } { K. Akhir : L berisiLuasSegitiga. Nilai L dicetakkePirantiKeluaran } DEKLARASI a, t, L : real DESKRIPSI : read(a, t) L a * t * 0.5 write (L)
PemanggilanProsedur : Algoritma Halo { Program utamauntukmencetak String ‘Halo, dunia!’ } DEKLARASI procedureCetak_Halo { MencetakString ‘Halo, dunia!’ kepirantikeluaran } DESKRIPSI : Cetak_Halo { MemanggilProsedurCetak_Halo }
PemanggilanProsedur : AlgoritmaLuas_Segitiga { Program utamauntukmencetak String ‘Halo, dunia!’ } DEKLARASI procedureHitung_Luas_Segitiga { MenghitungLuasSegitigadenganrumus L = ½ x a x t } DESKRIPSI : Hitung_Luas_Segitiga { MemanggilProsedurHitung_Luas_Segitiga }
LATIHAN • BuatlahPseudocodeProsedureuntukmenghitungnilai rata – rata N buahbilanganbulat yang diinputkan. Nilai rata – rata dariseluruhbilangandicetak.
LATIHAN • BuatlahPseudocodeProsedureuntukmenghitungLuasPersegiPanjang, KelilingPersegiPanjang. SesuaidengantampilanBerikut :
Nama Global danNamaLokal • Nama Global Di deklarasikanberlakusecara global (dapatdigunakan di seluruhbagian program) • NamaLokal Konstanta, variabeldanlain - lain yang dideklarasikandi dalamprosedurtersebut. #include <iostream> #include <conio.h> using namespace std; intnilai = 60; void ContohGlobalLokal(); void main() { ContohGlobalLokal(); _getch(); } void ContohGlobalLokal() { • cout<<nilai; • intangka = 10; • cout<<angka; }
Sintax prototype procedure : void namaProcedure(); Sintaxprocedure (mendefinisikanprocedure) : void namaProcedure() { [Blok pernyataan] } Contoh : void garis(); Procedure
Menggunakan Procedure • Cara 1 : prototype procedure void main() { memanggil procedure _getch(); } definisi procedure • Cara 2 : definisi procedure void main() { memanggil procedure _getch(); }
Contoh Cara 1 #include <iostream> #include <conio.h> using namespace std; void garis(); void main() { garis(); garis(); cout<<"IniContohPenggunaan Procedure Dengan Cara 1 "<<endl; garis(); garis(); _getch(); } void garis() { cout<<"------------------------------------------"; cout<<endl; }
Contoh Cara 2 #include <iostream> #include <conio.h> using namespace std; void garis() { cout<<"------------------------------------------"; cout<<endl; } void main() { garis(); garis(); cout<<"IniContohPenggunaan Procedure Dengan Cara 2"<<endl; garis(); garis(); _getch(); }