Algoritma dan Pemrograman Subrutin Tim Algoritma dan Pemrograman Universitas Komputer Indonesia
Jenis Subrutin Prosedur Fungsi
Prosedur Bentuk Umum: Procedure nama_prosedur(<daftar parameter>) {I.S. : …………………………………………...} {F.S. : ………………………………………..…} Kamus: {kamus lokal} {deklarasi variabel dan tipedatanya} Algoritma: {aksi-aksi yg terjadi pada prosedur ini} EndProcedure Parameter Formal
Parameter Formal Parameter Formal By reference (Output, Input/Output) {sebagai keluaran, atau sebagai masukkan dan kemudian dikeluarkan oleh subrutin} By value (Input) {sebagai masukan untuk subrutin}
Contoh Menjumlahkan_Angka_1_sampai_10 {I.S. : {F.S. : Kamus: Algoritma: S 0 for i 1 to 10 do S S + i endfor output(S) diberikan harga pencacah (i) = 10} menampilkan hasil penjumlahan 1+2+..+10} S, i : integer {S : hasil penjumlahan}
Contoh Prosedur Procedure Hitung_S ( Output S : integer) {I.S. : diberikan harga pencacah (i) = 10} {F.S. : menghasilkan hasil penjumlahan S= 1+2+..+10} Kamus: i : integer {pencacah} Parameter Formal Algoritma: Parameter by Reference S 0 for i 1 to 10 do S S + i endfor EndProcedure
Contoh Prosedur Procedure Tampil_S (Input S : integer) {I.S. : harga S sudah terdefinisi} {F.S. : menampilkan hasil penjumlahan S = 1+2+..+10} Kamus: Parameter Formal Algoritma: Parameter by value Output (S) EndProcedure
Pemanggilan Prosedur nama_prosedur(parameter aktual) Contoh : Tampil_S(S) Nama Prosedur Parameter Aktual
Contoh Algoritma Utama Menjumlahkan_Angka_1_sampai_10 {I.S. : {F.S. : Kamus: Procedure Hitung_S (Output S : integer) Procedure Tampil_S (Input S : integer) Algoritma: diberikan harga pencacah (i) = 10} menampilkan hasil penjumlahan 1+2+..+10} S : integer {S : hasil penjumlahan} Hitung_S(S) Tampil_S(S)
Latihan Soal Buat algoritma untuk menghitung Faktorial menggunakan beberapa subrutin:
Penyelesaian (1) Procedure IsiN (Output N : integer) {I.S. : user memasukkan harga yang difaktorialkan(N)} {F.S. : menghasilkan harga yang difaktorialkan(N)} Kamus: {Tidak Ada} Algoritma: Input (N) While (N < 0) do Output(‘Harga Yang Difaktorialkan Tidak Boleh Negatif!’) Input(N) EndWhile EndProcedure
Penyelesaian Procedure HitungFaktorial (Input N : integer, Output Faktorial : integer) {I.S. : {F.S. : Kamus: Algoritma: If (N = 0) or (N = 1) Then Faktorial 1 Else Faktorial 1 For i 2 to N do Faktorial * I EndFor EndIf EndProcedure harga yang difaktorialkan (N) sudah terdefinisi} menghasilkan Faktorial dan N’} i : integer Algoritma dan Pemrograman Program Studi Teknik Informatika
Penyelesaian (3) Procedure TampilFaktorial (Input N:integer, Output Fak:integer) {I.S. : harga yang difaktorialkan (N) sudah terdefinisi} {F.S. : menampilkan Faktorial dari N} Kamus: {Tidak Ada} Algoritma: Output (N,’! = ‘,Fak) EndProcedure
SELESAI Alhamdulillah