Anda di halaman 1dari 8

ACC 29/06/22

LAPORAN PRAKTIKUM
ALGORITMA DAN PEMROGRAMAN

MODUL 5
SUBPROGRAM (PROSEDUR DAN FUNGSI)

Oleh:
Fena Nur Mustika (21101032)
S1 TT-09-B

PROGRAM STUDI S1 TEKNIK TELEKOMUNIKASI


FAKULTAS TEKNIK TELEKOMUNIKASI DAN ELEKTRO
INSTITUT TEKNOLOGI TELKOM PURWOKERTO
2022
HASIL DATA DAN ANALISIS
A. Praktikum Percobaan 1

Gambar 5.1 Source Code Percobaan 1

Gambar 5.2 Output Percobaan 1


Analisis dan Pembahasan:
Pada praktikum percobaan yang pertama praktikan diminta untuk melengkapi badan
subprogram fungsi dalam sebuah program yang sudah tersedia. Ketika memasukkan nilai
x1 dan x2 program akan memangkatkan masing masing variabel dan kemudian
menjumlahkannya. Dalam implementasinya fungsi dan prosedur hampir sama, boleh
memiliki variabel dan parameter. Hanya saja memiliki sedikit perbedaan pada fungsi yang
dapat mengembalikan nilai serta harus mengembalikan nilai sedangkan prosedur
sebaliknya.
Dapat dilihat pada gambar 5.1 source code percobaan 1 bahwa parameter input pada
subprogram yang dibuat kemudian dipanggil pada kode program int x1 dan int x2 yang
berupa bilangan bulat, karena menggunakan tipe data integer dimana fungsinya adalah
sebagai tempan penyimpanan bilangan bulat. Kemudian maksud dari rumus
(x1*x1)+(x2*x2) program ini bertujuan untuk menghitung akar kuadrat pada bilangan
yang akan dimasukan sehingga dapat menghasilkan perpangkatan kemudian
menjumlahkannya. Dapat dilihat pada gambar 5.2 output percobaan 1 pada program ketika
bilangan pertama 6 kemudian bilangan kedua 8 akan menghasilkan 100. Maksudnya
adalah 6*6= 36 kemudian 8*8 = 64 dan dijumlahkan 36+64=100.
B. Praktikum Percobaan 2

Gambar 5.3 Source Code Percobaan 2

Gambar 5.4 Output Percobaan 2


Analisis dan Pembahasan:
Pada praktikum percobaan yang kedua praktikan diminta untuk melengkapi program
menggunakan subprogram prosedur yang sesuai. Parameter input pada subprogram diatas
terdapat pada baris 4 yaitu int angkatan, int Jumlah_SKS. Sedangkan rumus yang digunakan
pada program ini terdapat pada baris 19 dimana biaya SKS akan berbeda-beda tiap
angkatannya. Praktikum percobaan kedua ini menggunakan percabangan if – else if - else if.
Dimana pada percabangan ini jika kondisi satu dapat di jalankan maka kondisi kedua dan
ketiga tidak di jalankan dan langsung pada instruksi lanjutan dari kondisi pertama.
Dapat di lihat pada gambar 5.4 yaitu kondisi keberapakah angkatan yang mau
membayar spp. Jika kondisi 1 yaitu >=2016 dengan instruksi biaya dan memasukkan banyak
jumlah sks begitupun seterusnya. Dapat dilihat pada output percobaan kedua pada baris
pertama 2019, baris kedua 20 dan baris ketiga 2000000. Maksudnya adalah ketika praktikan
memasukkan kondisi 2019 maka kondisi yang di panggil adalah angkatan >=2016 dimana
dengan biaya 100.000 dan memasukkan jumlah SKS nya adalah 20, maka biaya SPP yang
dikeluarkan sebesar Rp.2.000.000,- Karena pada rumus biaya SPP=Biaya SKS*jumlah
SKS, maka 100.000*20=2.000.000.
C. Praktikum Percobaan 3

Gambar 5.5 Source Code Percobaan 3

Gambar 5.6 Output Percobaan 3


Analisis dan Pembahasan:
Pada praktikum percobaan yang ketiga praktikan diminta untuk melengkapi program
agar program berjalan dan mendapatkan output yang diminta. Pada program ini memiliki
ketentuan yaitu dengan melengkapi kode tersebut dengan identifikasi kesalahan dalam
penggunaan variabel lokal dan variabel global pada subprogram. Praktikum ini memiliki
struktur yang hampir sama dengan struktur fungsi, perbedaannya terletak pada parameter.
Parameter pada struktur prosedur dapat terdiri dari parameter input, parameter output, dan
parameter input/output. Sama seperti fungsi, prosedur juga dapat digunakan pada
subprogram lain atau program utama dengan cara memanggil namanya diikuti dengan
parameter sesuai dengan urutan. Namun perbedaannya pada praktikum ini tidak
menggunakan parameter.
Setelah memperbaiki kode program tersebut, maka ketika subprogram tersebut
dipanggil pada program utama, nilai 100 pada percobaan kali ini merupakan inisiaisasi yang
dapat digantikan menjadi nilai 10. Sedangkan untuk nilai 27,5 yang merupakan nilai
inisialisasi dapat digantikan dengan nilai 94,2.
D. Praktikum Percobaan 4

Gambar 5.7 Source Code Percobaan 4

Gambar 5.8 Output Percobaan 4


Analisis dan Pembahasan:
Pada praktikum percobaan yang keempat praktikan diminta untuk melengkapi
program yang sudah disediakan. Ketentuanya yaitu mengidentifikasi nama subprogram,
jumlah dan jenis parameter, dan jenis subprogram dengan melihat bentuk subprogram yang
diberikan pada kode program. Kemudian praktikan melengkapi program utama dengan
pemanggilan subprogram t sehingga ketika subprogram tersebut dipanggil pada program
utama sudah ditentukan dari program yang sudah tertera di LMS dimana program ini
nantinya akan melakukan faktoriaisasi.
Pada praktikum percobaan keempat ini memiliki tipe data int faktorial (int bil)
dimana percobaan ini menggunakan pemilihan ganda yaitu if-else akan memasukkan nilai
bilangan bulat untuk faktorial jika bilangan=0 maka instruksi selanjutnya 0 dan jika tidak
maka masuk ke proses yaitu (bil*faktorial(bil-1));. Dapat dilihat pada gambar 5.8 output
percobaan 4 pada saat pemanggilan subprogram tersebut menghasilkan nilai output sesuai
dengan yang di jelaskan pada gambar output yaitu 10 dengan hasil 3628800.
E. Laporan Praktikum

Gambar 5.9 Source Code Laporan Praktikum

Gambar 5.10 Source Code Laporan Praktikum

Gambar 5.11 Output Laporan Praktikum


Gambar 5.12 Output Laporan Praktikum

Gambar 5.13 Flowchart Laporan Praktikum


Analisis dan Pembahasan:
Pada praktikum modul kelima ini praktikan diminta untuk membuat sebuah program
dengan ketentuan yang memiliki tema, menggunakan prosedur yang mencakup perulangan
atau percabangan, memiliki fungsi, prosedur dan fungsi harus memiliki minimal 1
parameter, setiap line program diberi komentar dan membuat flowchart dari program. Pada
program modul lima yang telah dibuat memiliki tema "MESIN PEMBAYARAN DAN
PERMAINAN KALKULATOR PINTAR". Tipe data yang digunakan yaitu integer. Pada
program ini menggunakan subprogram prosedur dengan percabangan atau pemilihan
majemuk. Jika kondisi pertama terpenuhi atau bernilai true, maka hanya proses di kondisi
pertama saja yang akan dijalankan. Namun jika kondisi pertama tidak terpenuhi atau bernilai
false, maka kondisi berikutnya akan diperiksa sampai diperoleh kondisi yang diminta
terpenuhi dan proses yang ada pada kondisi tersebut akan dijalankan.
Pada baris ke 6 dan 7 menggunakan subprogram prosedur int Bayar; void
BiayaPembayaran(int Umur, int bykpermainan, int*Pembayaran). Selanjutnya pada bagian
percabangan dimana jika umur<= 8 akan dikenakan biaya 1000, jika umur<= 16 akan
dikenakan biaya 3000 dan jika umur<=32 maka dikenakan biaya 5000. Seteleah kondisi
maka memasukkan banyak permaianan yang di inginkan, kemudian program akan
menjalankan proses atau badan algoritma *Pembayaran =Bayar*bykpermainan;. Dapat
dilihat pada gambar 5.11 output laporan paktikum yaitu kondisi menanyakan berapakah
umur anda kemudian praktikan memasukkan umur 18 karena 18>=8 dan>=16 serta <=32
maka umur 18 dikenakan biaya sebesar 5000. Kemudian menanyakan berapa permainan
yang di inginkan, jika praktikan memasukkan 11 kali permainan maka pada badan program
*Pembayaran =Bayar*bykpermainan; dimana totalpembayaran= 5000*11 yaitu total yang
harus di bayar terlebih dahulu 55000. Setelah melakukan pembayaran maka keluar output
$PEMBAYARAN SUKSES & SELAMAT MENCOBA PERMAINAN$";. Setelah
melakukan pembayaran, pemain dapat bermain kalkulator pintar ini.
Program akan berjalan lagi ke subprogram fungsi dengan parameter int
Permainan_Kalkulator (int L, int I, int Z, int A) yang nantinya pemain akan memasukkan
angka 1-4. Setelah memasukkan angka 1-4 maka program akan berjalan ke badan algoritma
Hasil= (L+Z)+(I*L)*(A); serta menggunakan int hasil. Untuk memanggil ouput seperti
gambar 5.12 yaitu memasukkan nilai 2, 4, 6, 8 pada bilangan angka 1-4 kemudian Hasil=
(2+6)+(4*2)*(8) outputnya adalah 72. Pemain bisa bermain dan memulai permainan lagi
hingga 11 kali permainan. Setelah itu akan menampilkan output $PERMAINAN ANDA
SELESAI DAN SILAHKAN COBA LAGI$";.

Anda mungkin juga menyukai