>>>>> DOWNLOAD .DOC <<<<<
LAPORAN
AKHIR PRAKTIKUM
Mata Praktikum : Algoritma & Pemrograman 2 B (AP2B)
Kelas : 1IA20
Praktikum ke- : 7
Tanggal : 30 April 2015
Materi : Fungsi Pada Ruby
NPM : 53414057
Nama : Didi Mulyadi
Ketua Asisten : Mahardika
Nama Asisten :
Paraf Asisten :
Jumlah Lembar : 7 lembar
LABORATORIUM INFORMATIKA
UNIVERSITAS GUNADARMA
2015
Listing Program :
def menu
puts
puts
"======================="
puts
"||****** AP-2B ******||"
puts
"======================="
puts
"|| 1. Nama Bulan ||"
puts
"|| 2. Faktorial ||"
puts
"|| 3. Exit ||"
puts
"======================="
print
"Pilih Menu(1-3) : "
z =
gets.to_i
if z==1
bulan
=
{1=>"Januari",2=>"februari",3=>"Maret",4=>"April",5=>"mei",6=>"Juni",7=>"Juli",8=>"Agustus",9=>"September",10=>"Oktober",11=>"November",12=>"Desember"};
hari
=
{1=>31,2=>28,3=>31,4=>30,5=>31,6=>30,7=>31,8=>31,9=>30,10=>31,11=>30,12=>31}
print
"Masukkan Bulan ke : "
x
= gets.to_i
if
x>12
print
"Tidak Ada Dalam Kalender Bulan\n"
else
print
"Bulan ", bulan[x], " Jumlah Hari adalah ", hari[x],
" Hari\n"
end
elsif
z==2
fakto
elsif
z==3
print
"Terima Kasih\n"
exit()
else
print
"Menu Tidak Tersedia\n"
end
pil
end
def pil
print "Masuk
Menu Lagi? (y/n) : "
x =
gets.chomp
if
x=="y"
menu
elsif
x=="Y"
menu
else
puts
"Terima Kasih\n"
end
end
def fakto
print 'Masukkan Bilangan : '; n = gets.to_i
f = 1
print "Faktorial (#{n}) : "
while n > 0
print n
f *= n
if n !=
1
print
' * '
else
print
' = '
print
f,"\n"
break
end
n -= 1
end
end
menu
|
Logika Program :
def menu
puts
puts
"======================="
puts
"||****** AP-2B ******||"
puts
"======================="
puts
"|| 1. Nama Bulan ||"
puts
"|| 2. Faktorial ||"
puts
"|| 3. Exit ||"
puts
"======================="
pada blok program diatas menggunakan
def yang merupakan sebuah method , menu adalah nama dari method tersebut.
Kemudian puts digunakan untuk menampilkan pesan dilayar /perintah untuk
mencetak tipe data string yang berada dalam kutip dua , menggunakan perintah
puts.
print "Pilih Menu(1-3) : "
z
= gets.to_i
Pada blok program diatas merupakan suatu perintah untuk memasukan inputan
menggunakan varibel z yang menampung nilai inputan menggunakan get.to_i dengan
tipe data integer .
if
z==1
bulan =
{1=>"Januari",2=>"februari",3=>"Maret",4=>"April",5=>"mei",6=>"Juni",7=>"Juli",8=>"Agustus",9=>"September",10=>"Oktober",11=>"November",12=>"Desember"};
hari =
{1=>31,2=>28,3=>31,4=>30,5=>31,6=>30,7=>31,8=>31,9=>30,10=>31,11=>30,12=>31}
print
"Masukkan Bulan ke : "
x =
gets.to_i
if
x>12
print
"Tidak Ada Dalam Kalender Bulan\n"
else
print
"Bulan ", bulan[x], " Jumlah Hari adalah ", hari[x], "
Hari\n"
end
Pada blok program diatas menggunakan fungsi if_elsif. Yang mana jika nilai dari z bernilai = 1 maka
program akan mengeksekusi syntax di dalam if. Bulan dan hari adalah tipe data
hash. Pada variabel bulan memiliki elemen – elemen dengan key di setiap
element. Key 1 bernilai “Januari”, 2 bernilai “Februari” dan seterusnya.begitu juga dengan varibel hari.
Key 1 bernilai “31”, Key 2 bernilai 28 dan
seterusnya. Pada key ini berfungsi untuk menentukan letak array yang
akan kita cetak .
Kemudian menginput nilai varibel x mengunakan get.to_i bertipe integer
dimana jika nilai dari variable x lebih besar = 12, maka program akan mencetak pesan “TIDAK ADA DALAM KALENDER
BULAN”.dan jika nilai variable x lebih kecil =
12, maka program akan mencetak “BULAN (ELEMEN KE-X DARI VARIABEL BULAN) JUMLAH HARI ADALAH (ELEMEN KE-X DARI VARIABEL HARI) HARI.
elsif
z==2
fakto
elsif z==3
print "Terima
Kasih\n"
exit()
else
print
"Menu Tidak Tersedia\n"
end
pil
end
Pada blok programdi atas menggunakan percabangan if-elsif-else , dimana
jika nilai variable z = 2 maka program
akan mengeksekusi method fakto, Jika nilai dari variable z = 3 maka program
akan mencetak “TERIMA KASIH” kemudian keluar dari program,dan jika nilai input
tidak sesuai/tidak tersedia maka program akan mencetak “MENU TIDAK TERSEDIA”. Kemudian program
memanggil method pil.
def
pil
print "Masuk Menu Lagi? (y/n) :
"
x = gets.chomp
if x=="y"
menu
elsif x=="Y"
menu
else
puts
"Terima Kasih\n"
end
endn
print "|#{a}|"
end
puts
end
puts""
puts
"=======||||||||||||||||||========"
Pada blok program diatas merupakan
def pil /method pil yang berisi perintah
jika nilai variable
x = “y”( y kecil)atau “Y” maka program
akan mengeksekusi method menu lagi ,dan
jika tidak (else) maka program akan menampilkan pesan “terima kasih”.
def fakto
print 'Masukkan Bilangan : '; n = gets.to_i
f = 1
print "Faktorial (#{n}) : "
while
n > 0
print
n
f
*= n
if
n != 1
print
' * '
else
print
' = '
print
f,"\n"
break
end
n
-= 1
end
end
menu
Pada blok
program def fakto ini digunakan untuk mencetak factorial dari nilai varibel n
yang kita input ,pada blok ini kita
menginput nilai n bertipe integer ,dimana
f bernilai 1 dan menggunakan perulangan while dimana jika n lebih dari 0 maka akan mencetak
nilai varibel n ,kemudian f*n jika tidak sama dengan 1 makan akan mencetak
“*”,jika tidak maka akan mencetak karakter “=” lalu mencetak nilai dari
variabel f dan perulangan akan dihentikan,setiap perulangan nilai variable n dikurang
1, nilai dari variable n menyimpan nilai
input bertipe data integer. Kemudian
fakto(n) akan memanggil method fakto(n) dengan nilai variable n yang ada pada
method yang akan diganti nilai n nya dengan yang diinput.
Output Program :
No comments:
Post a Comment