LAPORAN PRAKTIKUM ALGORITMA DAN PEMROGRAMAN PEMROGRAMAN MODUL 7: FUNGSI DAN PROSEDUR
DISUSUN OLEH :
Arif Sumaryanto (18107003) Dosen pengampu :
Herryawan Pujiharsono,S.T.M.Eng Tanggal Praktikum : 28 Desember 2018 Asisten Praktikum :
Andrey Samuel L.B Siahaan (16101083) PROGRAM STUDI S1 TEKNIK ELEKTRO FAKULTAS TEKNIK TELEKOMUNIKASI DAN ELEKTRO INSTITUT TEKNOLOGI TELKOM PURWOKERTO 2018
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
I. LATIHAN
Sebuah kode program untuk mencari nilai minimal dari 5 buah bilangan yang diinputkan pengguna dengan menggunakan subprogram fungsi dan prosedur adalah sebagai berikut.
Gambar 1.1 Source code Program mencari nilai minimal Lakukan analisis dengan menjawab pertanyaan berikut. •
Sebutkan variabel global yang digunakan pada kode program tersebut! Pada program diatas hanya terdapat satu variabel global saja yang terdapat pada baris ke-3, ke-3, yaitu “kecil” dengan tipe data integer .
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
•
Sebutkan variabel lokal yang digunakan pada masing-masing subprogram tersebut, termasuk pada fungsi program utama (int ( int main ())! ())! Varaibel local yang digunakan
pada subprogram fungsi “ int
Cari_Minimal ” memiliki dua variabel lokal yaitu “int “int Bil1” Bil1” dan “int “int Bil2”. Bil2”. Kemudian pada subprogram prosedur “void “ void Cetak_Minimal ( )” )” tidak memiliki variabel lokal. Pada pogram utama “int “ int main ( )” )” memiliki dua variabel lokal yaitu i dan X dengan nilai indeks 5. •
Dari kedua subprogram yang ada pada kode program di atas, manakah subprogram dengsn struktur fungsi dan subprogram dengan struktur prosedur? Berikan alasannya! Dari subprogram diatas dapat diketahui bahwa pada subprogram yang pertama merupakan subprogram fungsi. Hal itu dapat diketahui diketahui karena pada subprogram subprogram tersebut terdapat header yang yang berisi nama fungsinya, yaitu Cari_Minimal dengan tipe data integer . Selain itu juga terdapat parameter input yaitu yaitu Bil1 dan Bil2 dengan tipe data kedua parameter tersebut adalah integer . Kemudian subprogram tersebut juga memiliki badan fungsi yang digunakan untuk return atau mengembalikan nilai. Selanjutnya, pada subprogram yang kedua merupakan subprogram prosedur. Hal itu ditandai dengan void yang merupakan awalan pada subprogram prosedur. Selain itu, subprogram prosedur tersebut juga tidak memiliki deklarasi tipe data. Kemudian, pada subprogram tersebut juga tidak terdapat return return yang berfungsi mengembalikan nilai.
•
Apa yang dilakukan pada masing-masing subprogram tersebut! Pada subprogram fungsi, yang dilakukan adalah memberikan parameter serta memberi rumus fungsinya. Selain itu juga terdapat return yang digunakan untuk mengembalikan nilai fungsi itu sendiri dan ketika program utama memanggil, maka subprogram tersebut akan bekerja. Kemudian pada subprogram prosedur, yang dilakukan
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
“kecil”. Perbedaan subprogram prosedur dengan subprogram fungsi adalah tidak adanya return nilai.
Gambar 1.2 Output Program mencari nilai minimal •
Buatlah flowchart Buatlah flowchart atau atau pseudocode untuk kode program di atas! PSEUDOCODE: 1. Prosedur Procedure Minimal(input bil1:integer,bil2:integer Output cari_minimal) Kamus Kecil :integer I
:integer
X
:integer
Algoritma If bil1
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
X
:integer
ALGORITMA FOR i1 TO 5 DO Input (i) ENDFOR Kecil =x(1) FOR i1 TO 5 Kecil=cari_minimal(kecil,x(1)) ENDFOR 3. Fungsi Function Minimal Kamus Kecil :integer I
: integer
X
: integer
Algoritma Tampilkan nilai minimal x(1)
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
II.
TROUBL TROUBL E SHOOTI SHOOTI NG
Perhatikan dan cobalah kode program berikut! Terdapat dua buah subprogram dengan struktur prosedur, yaitu insialisasi dan insialisasi dan ChangeThem. ChangeThem. Kedua subprogram tersebut berfungsi untuk mengganti nilai bilangan bulat dan pecahan. Dengan memodifikasi nilai bilangan bilangan bulat dan pecahan yang terdapat dalam subprogram dan memperhatikan efek yang dihasilkan, maka solusi untuk troubleshooting dapat dapat diperoleh.
Gambar 2.1 Source Code Bilangan Pecahan dan Bulat Lakukan analisis dengan menjawab pertanyaan berikut. •
Apakah subprogram Inisialisasi subprogram Inisialisasi dan dan ChangeThem benar-benar ChangeThem benar-benar mempengaruhi nilai bilangan bulat dan pecahan? -
Jika
iya,
jelaskan
bagaimana
subprogram
tersebut
dapat
mempengaruhi nilai bilangan bulat dan pecahan pada subprogram? -
Jika tidak, bagian mana yang sebenarnya mempengaruhi nilai bilangan bulat dan pecahannya? Perbaiki subprogram tersebut agar nilai bilangan bulat dan pecahan benar-benar dipengaruhi oleh
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
•
Apakah subprogram dengan struktur prosedur pada kode program tersebut dapat diubah menjadi struktur fungsi? -
Jika dapat, tunjukkan kode subprogramnya!
-
Jika tidak dapat, berikan alasannya!
Pada kedua subprogram prosedur Inisialisasi dan ChangeThem, ChangeThem, menurut saya tidak mempengaruhi nilai akhir bilangan bulat dan bilangan pecahan. Hal ini karena pada program utama, untuk menampilkan hasil nilai bilangan bulat akhir dan nilai pecahan akhir menggunakan variabel global “bulat” dan “pecahan”. Sehingga, variabel global lah yang sebenarnya mempengaruhi nilai akhir. Dengan menghilangakan subprogram serta variabel prosedur yang ada pada pada program utama, maka nilai akhir juga bisa didapatkan. didapatkan.
Gambar 2.2 Source Code yang Code yang telah diubah
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Kemudian subprogram dengan struktur prosedur tersebut juga tidak dapat diubah menjadi subprogram dengan struktur fungsi. Hal itu karena pada struktur fuungsi, subprogram harus memiliki return yang digunakan untuk mengembalikan nilai, sedangkan pada kasus ini kedua subprogram tidak memiliki suatu rumus fungsi. Sehingga jika diubah menjadi subprogram fungsi, maka akan kesulitan untuk return. return.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
III.
TUGAS
1. Rancanglah sebuah program yang meminta input berupa jari-jari lingkaran dan kemudian menghitung luas dan keliling lingkaran a. Tanpa menggunakan struktur fungsi atau prosedur
Gambar 3.1 Source Code Menghitung Code Menghitung Luas dan Keliling Lingkaran
Gambar 3.2 Output Menghitung Menghitung Luas dan Keliling Lingkaran PSEUDOCODE : JUDUL: Menghitung Luas dan Keliling Lingkaran {
Input : phi
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
ALGORITMA: Input ( phi, phi, jari) jari) Luas ← phi*(jari*jari) Keliling ← 2*phi*jari Output (Luas, Keliling)
b. Menggunakan struktur fungsi atau prosedur: i. Yang tidak memiliki parameter input dan Output .
Gambar 3.3 Source Code Menghitung Code Menghitung Luas dan Keliling Lingkaran
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
JUDUL: Menghitung Luas dan Keliling Lingkaran { Input : jari-jari Output : luas dan keliling} KAMUS: Jari_jari = integer luas
= real
keliling = real ALGORITMA: PROCEDURE PROCEDURE Cetak_Luas_dan_Keliling( Cetak_Luas_dan_Keliling( ) {Untuk mencetak output } ALGORITMA OUTPUT (‘Keliling=’ OUTPUT (‘Keliling=’ keliling, ‘Luas= ’ luas) ENDPROCEDURE ENDPROCEDURE INPUT (jari_jari) luas3.14*jari_jari*jari_jari keliling2*3.14*jari_jari Cetak_Luas_dan_Keliling
ii. Yang memiliki parameter input dan Output
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Gambar 3.6 Output Menghitung Menghitung Luas dan Keliling Lingkaran Pseudocode: Pseudocode: JUDUL: Menghitung Luas dan Keliling Lingkaran { Input : jari-jari Output : luas dan keliling} KAMUS: Jari_jari = integer luas
= real
keliling = real ALGORITMA: PROCEDURE PROCEDURE Luas ( INPUT jari_jari: integer , OUTPUT hasil: hasil: real ) ) {Untuk menghitung luas lingkaran} ALGORITMA
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
iii. Yang memiliki parameter input saja
Gambar 3.7 Source Code Menghitung Code Menghitung Luas dan Keliling Lingkaran
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
ALGORITMA 3.14*jari_jari*jari_jari
END FUNCTION FUNCTION FUNCTION Keliling Keliling ( INPUT INPUT jari_jari: jari_jari: integer ) real {Menghitung keliling lingkaran} ALGORITMA 2*3.14*jari_jari
END FUNCTION FUNCTION INPUT (jari_jari) a=Luas b=Keliling OUTPUT (a,b) (a,b)
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
2. Rancanglah sebuah kalkulator sederhana untuk melakukan perhitungan aritmatika terhadap 2 bilangan. Gunakan fungsi atau prosedur untuk setiap operasi aritmatika pada disediakan, yaitu penjumlahan, perkalian, pembagian, pengurangan, dan pangkat. Contoh untuk tampilan dari program kalkulator adalah sebagai berikut. KALKULATOR 1. Penjumlahan 2. Perkalian 3. Pembagian 4. Pengurangan 5. Pangkat Masukkan Pilihan : 1 Bilangan pertama : 3 Bilangan kedua : 4 Hasil : 7
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Gambar3.10 Output Gambar3.10 Output Program Program Kalkulator PSEUDOCODE : JUDUL : Kalkulator Sederhana {
Input : menu, bil1, bil2, hasil Output Hasil
}