410 likes | 635 Views
Algoritma dan Pemrograman. Modular Programming ( Bagian 1 ). Topik Bahasan. Modular Programming Fungsi (Function) Deklarasi Fungsi Memanggil Fungsi Merancang Fungsi. 1. Modular programming. Modular Programming. Modular : Tersusun dari beberapa modules
E N D
AlgoritmadanPemrograman Modular Programming (Bagian 1)
TopikBahasan • Modular Programming • Fungsi (Function) • DeklarasiFungsi • MemanggilFungsi • MerancangFungsi
Modular Programming • Modular : Tersusundaribeberapa modules • Modules : bagianpenyusun yang memilikikegunaan/fungsikhusus • Divide and Conquer
Modular Programming • Pendekatan modular banyakdigunakandalamkehidupansehari-hari • Rumah : Tembok + Lantai + Pintu + Jendela + Atap • Kepanitiaan : Ketua, Wakil, Sekretaris, Bendahara, SieAcara, SiePublikasi, dsb
Modular Programming • Komponenpada PC/Laptop jugadirancangsecara modular • Komponen : Motherboard, VGA Card, Sound Card, Memory, Processor, Harddisk, Display, dsb
Motherboard + VGA Card + Memory + Processor + Harddisk + HSF
Modular Programming • Memecahsuatumasalahbesarmenjadimasalah-masalah yang lebihkecil • Memecahtanggungjawab (memudahkanpengaturandanpencariankesalahan) • Penggunaanulang (reusable) • Bilaketergantunganantarbagiankecilakanmemudahkanpengembangandimasamendatang
Modular Programming • Memecah program menjadibagian-bagiankecil • Bagian-bagiankeciltersebut : Fungsi (Function) • Terdapatbeberapaistilah : function, procedure, subroutine
Modular Programming • Fungsi mengelompokkanberdasarkantanggungjawab/cakupanpekerjaan • PanitiaPaskah FungsiKetua + FungsiSekretaris + FungsiBendahara + dsb • Misal : SieAcaramembutuhkandana 2 jutauntukdekorasi, siapa yang perludihubungi?
Modular Programming • Fungsi Padabidangmatematika
Fungsi • Suatu program yang besardankompleksdibagimenjadibagian-bagiankecil, yaitu function/fungsi • Andamasihingatstrukturdasar program C ? Int main() { … Inisebuahfungsi }
Fungsi • println(“Hello world”); • scanf(“%d”, &input); • getch(); • Fungsiada yang memerlukan input danada yang tidakmemerlukan input • Reusable fungsidapatdigunakanulangtanpaperlumenulisdariawallagi
Fungsi : BerdasarkanAsal • Standard Library Function • Fungsibawaan C, adadi header file standard seperticonio.h, stdio.h, dsb • printf(), getch(), scanf(), gets(), dsb • Programmer Defined Function • Fungsibuatansendiri, dibuatsesuaidengankebutuhan • Fungsidapatdiletakkandi header file tambahanmaupundidalam program utama
Fungsi : BerdasarkanSifat • Fungsi yang mengembalikannilai • Fungsi yang tidakmengembalikannilai • Return Value
Return Value • Return Value adalahnilai yang dikembalikandarisuatufungsi
Fungsi : MengembalikanNilai • Fungsiinimemiliki return value • Ciri-cirinya : • Tidakada keyword void • Ada keyword return
Fungsi : TidakMengembalikanNilai • Fungsiinitidakmemiliki return value • Ciri-cirinya : • Terdapat keyword void • Tidakada keyword return
DeklarasiFungsi • Fungsi yang merupakanbagiandari Standard Library Function tidakperludideklarasikanulang • Hanyaperlu men-include headers file • Contoh : #include <stdio.h>
DeklarasiFungsi • Suatu program C minimal memiliki 1 fungsi, yaitufungsi main() • Fungsi main() inisebagaititikawaljalannya program
DeklarasiFungsi • Untukmenggunakanfungsibuatansendiri, langkahpertamaadalahmendeklarasikannya • BentukUmum :
BagianUtamaDeklarasiFungsi • Tipe Data • NamaFungsi • Parameter
1. Tipedatakembalian: float 2. NamaFungsi: rupiahkedolar 3. Parameter : rupiah, bertipe float 4. Return value : dollar, bertipefloat
PosisiPenulisanFungsi (1) Fungsi A Fungsi B Fungsi C main
PosisiPenulisanFungsi (2) prototype A Jikapenulisanfungsidibawahfungsi main(), andaperlumenuliskanfunction prototypediatasfungsi main(). prototype B prototype C main Fungsi A Fungsi B Fungsi C
Prototype Fungsi Manasajadeklarasi prototype fungsi yang benar? • intfunct(char x, char y); B. char funct(char x) C. void funct(); D. char x(); E. int char funct(double y, int d); F. lingkaranfunct(double jari);
MemanggilFungsi • Fungsidipanggildenganmenuliskannamafungsitersebut • Misal : intluaspersegi(intsisi) { return sisi * sisi; } • Memanggilnya : intluas = luaspersegi(10);
MerancangFungsi • Apakahfungsiperlu input? • Jikaperlu, adaberapa input danapatipe data masing-masing input tersebut • Apakahfungsiperlumengembalikannilai? • Jikaperlu, nilaiapa yang perludikembalikan • •Algoritma yang digunakanuntukmengolah input menjadi output
Ringkasan • Modular Programming : membagi program menjadibagian-bagian yang lebihkecil • Bagiankeciltersebut : Fungsi • Program C sebenarnyaterdiridari minimal 1 fungsi, yaitufungsi main()
Ringkasan • Fungsidapatdibuatsendirimaupunfungsibawaandari library C • Fungsiada yang mengembalikannilaidanada yang tidakmengembalikannilai • Fungsidipanggildenganmenuliskannamafungsi
MingguDepan • Test Komprehensif • Modular Programming (2) • return vs void • Parameters (function arguments) • Variabel scope • Latihansoal