Anda di halaman 1dari 13

Jumat, 13.00 – 15.

00
PRAKTIKUM BAHASA PEMROGRAMAN 1
LAPORAN RESMI
“LOOPING LANJUT & FUNGSI”
MODUL 4 & 5

SESI/KELOMPOK : E3 / 8
1. JALU BAMARA HARLAMBANG (1234010032)
2. FADHIL MUHAMMAD (1234010033)

ASISTEN :
1. ADI KISWANTO (1134010057)
2. NEMICIO DE SOUSA GAMA (1134010007)

LABORATORIUM PEMROGRAMAN KOMPUTER


TEKNIK INFORMATIKA - FTI
FAKULTAS TEKNOLOGI INDUSTRI
UNIVERSITAS PEMBANGUNAN NASIONAL “VETERAN” JATIM
2013
LEMBAR PENGESAHAN

Telah diperiksa dan di setujui laporan resmi :

Praktikum : Bahasa Pemrograman 1


Modul :4&5
Judul : Looping Lanjut &si Fung
Sesi : E3
Group :8

Surabaya,
Mengetahui
Asisten Praktikum

1. Nemicio De Sousa Gama


2. Adi Kiswanto
SOAL

1. Buat 3 menu dengan isi


 Pola bintang
 Luas bangun (dengan fungsi parameter)
 Keluar
2. Tambahkan program mengulang/tidak
ALGORITMA

1. Start
2. Inisialisasi menu=0, i=0
3. Masukkan menu
4. Menu >=1 dan menu <=3 , jika iya ke no 31
5. Menu=1, jika ya ke no , jika tidak ke no 41
6. Masukkan banyak deret bintang
7. x>=1 dan x<=n , jika ya ke no 9 , jika tidak ke no 8
8. return
9. bintang%2==0 jika ya ke no 10 jika tidak ke no 25
10. i=1
11. i>n , jika ya 15 ke jika tidak ke no 12
12. cetak “ ”
13. i=i+1 kembali ke no 9
14. z=1
15. z>i ,jika ya ke no 18 jika tidak ke no 16
16. cetak “*”
17. cetak” “
18. z=z+1 kembali ke no 15
19. n=n-1
20. i=i+1
21. x=x+1
22. i=1
23. i>n , jika ya 27 ke jika tidak ke no 24
24. cetak “ “
25. i=i+1 kembali ke no 21
26. z=1
27. z>i ,jika ya ke no 19 jika tidak ke no 28
28. cetak “8”
29. cetak” “
30. z=z+1 kembali ke no 27
31. menu=2 jika ya ke langkah no 32 , jika tidak ke langkah no 37
32. Masukkan panjang
33. Masukkan lebar
34. Prosedur algoritma menghitung
a. Hitung luas : panjang x lebar
35. Cetak luas persegi panjang
36. Return
37. Menu=3 jika ya ke no 38 , jika tidak ke no 41
38. Cetak “program keluar” ke no 46
39. Cetak “terima kasih” menuju ke no 46
40. Cetak “tidak ada menu” menuju ke no 46
41. Cetak “tidak ada menu”
42. Cetak “apakah anda akan mengulang program (ya/tidak)
43. Masukkan “Mengulang(ya/tidak)”
44. Mengulang=ya , jika ya ke no 3, jika tidak ke no 45
45. Cetak “terima kasih”
46. End
FLOWCHART

Start

Inisialisasi
Menu=0,i=0

masukkan
menu

Menu=>1 dan
menu=<3

tidak

ya

Cetak
Menu=1 tidak Menu=2 tidak Menu=3 tidak “Tidak ada
ya menu”

Cetak
“Tidak ada
ya
menu”
Bintang Luas bangun

Cetak
“program
telah
keluar”

Cetak
Cetak “apakah
“terima
anda ingin
kasih J ”
mengulang
program ?(ya/
tidak)”

Masukkan
mengulang
(ya/tidak)

mengulang=ya

tidak

Cetak
“terima
kasih J ”

End
Bintang

Masukkan
“btg”

X>=1 dan x<=n

ya

ya Btg%2 == 0 tidak

i=1
i=1

i>n i>n

tidak tidak

cetak cetak
““ ““
ya ya
i=i+1 i=i+1

z=1 z=1 tidak

z>i ya z>i

tidak tidak
ya
cetak cetak
“*“ “8“

cetak cetak
““ ““

z=z+1 z=z+1

n=n-1

I=I+1

x=x+1

Return
Luas bangun

Luas_persegi_panjang
(p,l)

Masukkan
panjang

Masukkan
lebar

Luas = panjang x lebar

Cetak luas

Return
SOURCE CODE
tidak ="ya"
while tidak == "ya"
menu=0
puts "============================"
puts "pilihan menu :"
puts
puts "1. menampilkan bintang"
puts "2. menghitung luas bangun"
puts "3. keluar"
puts "============================"
puts "pilih menu : "
menu=gets.to_i

if menu==1
puts "masukkan banyak deret bintang :"
n=gets.to_i
i=1
for x in 1..n
if n%2==0
for y in 1..n
print " "
end
for z in 1..i
print "*"
print " "
end
n=n-1
i +=1
puts
else
for y in 1..n
print " "
end
for z in 1..i
print "8"
print " "
end
n=n-1
i +=1
puts
end
end
puts
puts "apakah anda ingin mengulang program ? :(ya/tidak)"
tidak=gets.chomp
puts "terima kasih"

elsif menu==2
def luas_persegi_panjang(p,l)
return p*l
end

puts "masukkan panjang : "


panjang=gets.to_i
puts "masukkan lebar : "
lebar=gets.to_i
luas=luas_persegi_panjang(panjang,lebar)
puts"maka luasnya : "+luas.to_s
puts "apakah anda ingin mengulang program ? :(ya/tidak)"
tidak=gets.chomp
puts "terima kasih "

elsif menu==3
puts "program telah keluar"
puts "terima kasih "
tidak="tidak"
else
puts "menu yang anda masukkan salah"
end
end
OUTPUT
ANALISAH MASALAH
Masalah yang kami alami pertama ialah kami belum mengerti rumus pada source code untuk
menyetak deret bintang dan angka.

Dalam membuat deret bintang kami


menggunakan fungsi looping lanjutan (nested
looping).
Dan yang bergaris merah merupakan looping
lanjutan dari looping utama

Dan masalah yang ke-2 kami kesulitan membuat fungsi (subrutin)

(p,l) merupakan parameter pada fungsi luas_persegi_panjang yang mewakili panjang & lebar.

Gambar ini merupakan deklarasi fungsi ditulis sebelum fungsi tersebut di panggil. Dan yang
bergaris merah merupakan fungsi pemanggilan parameter.
KESIMPULAN
Looping lanjutan (nested looping)/perulangan bersarang merupakan perulangan dalam
perulangan. Sama dengan looping yang melakukan perintah perulangan yang di gunakan
untuk melakukan suatu proses secara berulang-ulang jika suatu kondisi di penuhi atau
sebaliknya. Mengulang suatu proses merupakan tindakan yang banyak di jumpai dalam suatu
pemrograman. Sedangkan Perulangan WHILE merupakan pengulangan untuk mengulan satu
atau beberapa pernyataan dengan kondisi tertentu. Kondisi ini akan terus mengulang
pernyataan sampai menghasilkan nilai “False”. Tetapi looping ini melakukan loop lagi.
Sedangkan fungsi merupakan blok dari kode yang di rancang untuk melakukan tugas
khusus.Tujuan dari pembuatan fungsi ini :
1. Program menjadi terstruktur, program yang besar dapat di pecah menjadi
beberapa program yang kecil, yang tiap satu program tersebut mempunyai tugas
tertentu.
2. Mengurangi duplikasi kode.
3. Fungsi dapat dipanggil dari program / fungsi lain.
4. Menghemat ukuran program, manfaat ini akan terasakan kalau ada beberapa
deretan intruksi yang sama digunakan pada beberapa tempat di dalam program.
5. Memudahkan dalam mengenmbangkan program, hal ini merupakan kunci dalam
pembuat program terstruktur.

Anda mungkin juga menyukai