PERTEMUAN XI PROSEDUR ALGORITMA & PEMROGRAMAN I TEKNIK INFORMATIKA

Slides:



Advertisements
Presentasi serupa
PROCEDURE Temu IX BANGHER.
Advertisements

- PERTEMUAN 7 – SUB PROGRAM
RECORD.
Procedure Ery Setiyawan Jullev A. Cont  Seringkali dalam membuat pembuatan program yang berukuran besar, program tersebutdipecah menjadi beberapa subprogram.
Notasi Algoritma.
Prosedur (Procedure).
Function Ery Setiyawan Jullev.
Algoritma dan Pemrograman
PROSEDUR.
Procedure , Function dan Parameter
Modul 4 Prosedur dan Fungsi.
Function User Function.
Prosedur dan Fungsi Triana Elizabeth, S.Kom.
NOTASI ALGORITMIK dan BAHASA C++
Algoritma dan Pemrograman Subrutin
Prosedur.
KELOMPOK 02 ALOGARITMA PEMOGRAMAN TAHUN AJARAN
Dasar Algoritma dan pemrograman
Prosedur Tim PHKI Modul Dasar Pemrograman Fakultas Ilmu Komputer
Kuliah 7 – Pengantar Pemrograman
Algoritma dan pemrograman (lanjutan)
Algoritma dan Pemrograman I
Algoritma dan Pemrograman STRUKTUR PEMILIHAN (SELECTION) lanjutan
ALGORITMA DAN PEMROGRAMAN Tipe Data
Prodi S1-Sistem Komputer, F Teknik Eelktro
Algoritma dan Struktur Data 1 pertemuan 9
Implementasi Algortima
Prosedur dalam C++.
Algoritma dan Pemrograman Sorting
TEL 2112 Dasar Komputer & Pemograman Prosedur
Prosedur (Procedure).
Algoritma dan Pemrograman I Dosen : Utami Dewi Widianti
MINGGU I ALGORITMA & PEMROGRAMAN II
TEL 2112 Dasar Komputer & Pemograman Pemrograman Modular
Apa itu Fungsi? Sebuah fungsi adalah modul program yang mengerjakan tugas atau aktivitas yang spesifik dan mengembalikan sebuah nilai dari tipe tertentu,
Fungsi TEE 2103 Algoritma & Pemrograman Dosen: Abdillah, MIT
Array 1.
Algoritma dan Pemrograman Subrutin
Algoritma dan Pemrograman
Algoritma dan Pemrograman STRUKTUR PEMILIHAN (SELECTION) lanjutan
TEL 2112 Dasar Komputer & Pemograman Pemrograman Modular
MATRIKS (ARRAY 2 DIMENSI)
ALGORITMA DAN PEMROGRAMAN Tipe Data
ALGORITMA DAN PEMROGRAMAN Struktur Algoritma
MATRIKS (ARRAY 2 DIMENSI)
ALGORITMA DAN PEMROGRAMAN Tipe Data
ALGORITMA DAN PEMROGRAMAN Struktur Algoritma
Algoritma dan Pemrograman Sorting
Algoritma dan Pemrograman Subrutin (Function)
CS1023 Pemrograman Komputer
Algoritma dan Pemrograman
Algoritma dan Pemrograman Subrutin
Algoritma dan Pemrograman Rekursif
TEL 2112 Dasar Komputer & Pemograman Prosedur
TPI4202 e-tp.ub.ac.id Modular Design Lecture 7.
TEL 2112 Dasar Komputer & Pemograman Fungsi
MATRIKS (ARRAY 2 DIMENSI)
TEL 2112 Dasar Komputer & Pemograman Pemrograman Modular
TEL 2112 Dasar Komputer & Pemograman Prosedur
Algoritma dan Pemrograman I
Algoritma dan Pemrograman (Pertemuan 04)
Algoritma dan Pemrograman Sorting
Review Algoritma 1 Teks Algoritma terdiri dari tiga bagian :
Algoritma Pemrograman
Algoritma dan Pemrograman STRUKTUR PEMILIHAN (SELECTION) lanjutan
NOTASI ALGORITMA dan BAHASA C++
Algoritma dan Pemrograman STRUKTUR ALGORITMA (3)
Fungsi.
PROSEDUR & FUNGSI.
Pemrograman Terstruktur
Transcript presentasi:

PERTEMUAN XI PROSEDUR ALGORITMA & PEMROGRAMAN I TEKNIK INFORMATIKA UNIVERSITAS YUDHARTA PASURUAN

Prosedur dan Struktur Prosedur Modul program yang mengerjakan tugas / aktifitas yang spesifik dan menghasilkan suatu efek netto Suatu efek netto diketahui dengan membandingkan keadaan awal dan keadaan akhir pada pelaksanaan sebuah prosedur Mendefinisikan Prosedur : Menuliskan nama prosedur Mendeklarasikan nama-nama konstanta, peubah (variabel), dan tipe (jika ada) Menjabarkan rangkaian yang dilakukan

Prosedur dan Struktur Prosedur (Lanjutan) Bagian judul (header) Terdiri atas nama prosedur dan deklarasi parameter (jika ada) Bagian deklarasi (kamus) Untuk mengumumkan nama-nama Bagian deskripsi (badan algoritma) Disebut juga badan prosedur Nama prosedur sebaiknya diawali dengan kata kerja karena prosedur berisi suatu aktifitas, misalnya HitungLuas, Tukar, CariMaks, Inisialisasi, AktifkanMenu, dan lain sebagainya

Prosedur yang baik adalah : Prosedur yang independen dari program pemanggilannya. Prosedur yang tidak menggunakan peubah-peubah global di dalam badan prosedurnya. Jika program utama perlu mengkomunikasikan nilai peubah global ke dalam prosedur, maka ada satu cara untuk melakukannya yaitu dengan menggunakan parameter

Parameter Parameter adalah : nama nama peubah yang dideklarasikan pada bagian header prosedur Parameter aktual (argument) adalah : parameter yang disertakan dalam pemanggilan prosedur Parameter formal adalah : parameter yang dideklarasikan di dalam bagian header prosedur itu sendiri

Parameter aktual dan Parameter formal Aturannya : Jumlah parameter aktual pada pemanggilan prosedur harus sama dengan jumlah parameter formal pada deklarasi prosedurnya Tiap parameter aktual harus bertipe sama dengan tipe parameter formal yang bersesuaian Tiap parameter aktual harus diekspresikan dalam cara yang taat-asas dengan parameter formal yang bersesuaian, bergantung pada jenis parameter formal

Tiga Jenis Parameter Formal Parameter masukan (input parameter) Parameter yang nilainya berlaku sebagai masukan untuk prosedur Dalam bahasa pemrograman, istilah parameter masukan ini sering dinamakan parameter nilai (value parameter atau parameter by value) Parameter keluaran (Output parameter) Parameter yang menampung keluaran yang dihasilkan oleh prosedur, parameter ini sering juga disebut parameter referensi (parameter by reference) Parameter masukan/keluaran (Input/Output Parameter) Parameter yang berfungsi sebagai masukan sekaligus keluaran bagi prosedur tersebut. Ini pun termasuk ke dalam parameter by reference

Parameter Masukan atau Keluaran ? Program dengan Prosedur atau Tanpa Prosedur ? Sangat dianjurkan menulis program yang modular. Program yang dipecah menjadi beberapa prosedur (fungsi) menunjukkan teknik pemrograman yang baik dan terstruktur Prosedur dengan Parameter atau Tanpa Parameter ? Sangat dianjurkan menuliskan prosedur dengan parameter. Parameter berfungsi sebagai media komunikasi antara modul dengan program pemanggil. Selain itu, parameter dapat mengurangi kebutuhan penggunaan peubah global Parameter Masukan atau Keluaran ? Tergantung pada kasus yang ada

Prosedur pada Algoritma Prosedur dengan Parameter Masukan Prosedur dengan Parameter Keluaran Prosedur dengan Parameter Masukan/Keluaran

Prosedur dengan parameter masukan pada Algoritma Cara memanggil (dari algoritma/program utama) Kamus : procedure namaprosedur(input namaparameter : type) Algoritma : namaprosedur(parameter_aktual) Cara mendefinisikan : Procedure namaprosedur(input namaparameter : type) {I.S. (kondisi awal) : … } {F.S. (kondisi akhir) : … } Kamus : {deklarasi/kamus lokal} Algoritma : {aksi-aksi dalam satu prosedur} EndProcedure

Prosedur dengan parameter keluaran pada Algoritma Cara memanggil (dari algoritma/program utama) Kamus : procedure namaprosedur(output namaparameter : type) Algoritma : namaprosedur(parameter_aktual) Cara mendefinisikan : Procedure namaprosedur(output namaparameter : type) {I.S. (kondisi awal) : … } {F.S. (kondisi akhir) : … } Kamus : {deklarasi/kamus lokal} Algoritma : {aksi-aksi dalam satu prosedur} EndProcedure

Prosedur dengan parameter masukan/keluaran pada Algoritma Cara memanggil (dari algoritma/program utama) Kamus : procedure namaprosedur(input/output namaparameter : type) Algoritma : namaprosedur(parameter_aktual) Cara mendefinisikan : Procedure namaprosedur(input/output namaparameter : type) {I.S. (kondisi awal) : … } {F.S. (kondisi akhir) : … } Kamus : {deklarasi/kamus lokal} Algoritma : {aksi-aksi dalam satu prosedur} EndProcedure

1. Contoh translasi prosedur dengan parameter masukan Procedure HitungLuasSegitiga(input alas, tinggi : real) {I.S. : alas dan tinggi sudah terdefinisi nilainya} {F.S. : menampilkan luas segitiga} Kamus : luas : real {luas segitiga, dalam cm2} Algoritma : luas  (alas*tinggi)/2 output(luas) EndProcedure

Algoritma utama yang memanggil prosedur HitungLuasSegitiga ALGORITMA : {Algoritma utama} Algoritma_Segitiga {Menghitung luas N buah segitiga} Kamus : i, N : integer a, t : real Procedure HitungLuasSegitiga(input alas, tinggi : real) {menghitung luas segitiga dengan rumus L = (alas*tinggi)/2} Algoritma : input (N) {tentukan banyaknya segitiga} for i  1 to N do input(a,t) HitungLuasSegitiga(a,t) Endfor

2. Contoh translasi prosedur dengan parameter keluaran Procedure HitungLuasSegitiga(input alas, tinggi : real, output luas : real) {I.S. : alas dan tinggi sudah terdefinisi nilainya} {F.S. : menampilkan luas segitiga} Kamus : {tidak ada} Algoritma : luas  (alas*tinggi)/2 EndProcedure

Algoritma utama yang memanggil prosedur HitungLuasSegitiga ALGORITMA : {Algoritma utama} Algoritma_Segitiga {Menghitung luas N buah segitiga} Kamus : i, N : integer a, t : real L : real {luas segitiga} Procedure HitungLuasSegitiga(input alas, tinggi : real, output luas :real) {menghitung luas segitiga dengan rumus L = (alas*tinggi)/2} Algoritma : input (N) {tentukan banyaknya segitiga} for i  1 to N do input(a,t) HitungLuasSegitiga(a,t,L) output(L) Endfor

3. Contoh translasi prosedur dengan parameter masukan/keluaran Procedure Tukar(input/output A, B : integer) {I.S. : A dan B sudah terdefinisi nilainya} {F.S. : A berisi nilai B, dan B berisi nilai A semula} Kamus : temp : integer {peubah bantu} Algoritma : temp  A {simpan nilai A ke dalam temp} A  B {isikan nilai B ke dalam A} B  temp {isikan nilai temp ke dalam B} EndProcedure

Algoritma utama yang memanggil prosedur Tukar ALGORITMA : {Algoritma utama} Algoritma_SelisihXY {Pprogram untuk menghitung selisih nilai X dan Y, dengan syarat nilai X ≥ Y, maka X dan Y dipertukarkan dengan memanggil prosedur Tukar} Kamus : X, Y, Z : integer Procedure Tukar(input/output A, B : integer) {mempertukarkan nilai A dan B} Algoritma : input (X, Y) {baca nilai X dan Y dahulu} {jika nilai X < Y, pertukarkan nilai X dan Y dengan memanggil prosedur Tukar} if (X < Y) then Tukar(X, Y) endif Z  X - Y {hitung selisih nilai X dan Y} Output(Z)

Tugas Buat algoritma untuk menghitung faktorial dengan menggunakan dua prosedur (prosedur memasukkan harga N dan prosedur menampilkan nilai faktorial dari N) beserta pengendaliannya (algoritma utama)