Anda di halaman 1dari 10

Jumat, 13.00 – 15.

00
PRAKTIKUM BAHASA PEMROGRAMAN 1
LAPORAN RESMI
“BRANCHING”
MODUL 2

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 :2
Judul : Branching
Sesi : E3
Group :8

Surabaya,
Mengetahui
Asisten Praktikum

1. Nemicio De Sousa Gama


2. Adi Kiswanto
SOAL

1. Buat program dengan menggunakan branching


1-16 tampilkan “anak-anak”
17-25 tampilkan “remaja”
26=45 tampilkan “dewasa”
>45 tampilkan “inputan salah”

2. Jika outputnya “anak-anak” maka masuk ke program berikut


x = 2𝑎3 + b + 13
y = 5𝑎2 + b +15
𝑥+𝑦
z= 2

3. Jika outputnya “remaja” maka masuk ke program hitung luas & kelliling segitiga

4. Jika outputnya “dewasa” maka masuk ke program hitung determinan & invers dari
matriks ordo 3x3
ALGORITMA

1. Start
2. Inisialisasi umur = 0
3. Deklarasi umur = integer
4. Masukkan umur
5. Jika umur>=1 dan umur<=16 maka ke no 10
6. Jika umur>=17 dan umur<=25 maka ke no 18
7. Jika umur>=25 dan umur<=45 maka ke no
8. Jika umur>45
9. Cetak “inputan salah”
10. Masukkan a
11. Masukkan b
12. Proses x = 2𝑎3 + b + 13
13. Proses y = 5𝑎2 + b +15
𝑥+𝑦
14. Proses z = 2
15. Cetak x
16. Cetak y
17. Cetak z
18. Ke langkah 40
19. Masukkan alas
20. Masukkan tinggi
21. Masukkan sisimiring
22. Proses luas = 0.5 * alas * tinggi
23. Proses keliling = alas + tinggi + sisimiring
24. Cetak luas
25. Cetak keliling
26. Ke langkah 40
27. Masukkan a1
28. Masukkan a2
29. Masukkan a3
30. Masukkan a4
31. Masukkan a5
32. Masukkan a6
33. Masukkan a7
34. Masukkan a8
35. Masukkan a9
36. Proses det= (a1*a5*a9)+(a2*a6*a7)+(a3*a4*a8)-(a7*a5*a3)-(a8*a6*a1)-(a9*a4*a2)
37. Proses invers= (1/det)
38. Cetak det
39. Cetak invers
40. End
FLOWCHART

Mulai

Inisialisasi
Umur=0

Deklarasi
Umur=integer

Masukkan
umur

Jika umur>=1 dan Cetak


ya Masukkan a
umur<=16 “Anak-anak”

tidak

Masukkan b
Jika umur>=17 dan Cetak Masukkan
ya
umur<=25 “Remaja” alas

x = 2a^3 + b + 13
tidak Masukkan
tinggi

Cetak Masukkan
Jika umur>=25 dan y = 5a^2 + b + 15
ya “Dewasa” a1
umur<=45 Masukkan
sisimiring

Masukkan
a2
z = (x+y) / 2

tidak Luas = 0.5 x alas x tinggi


Masukkan
a3

Cetak x
Cetak y
Masukkan Cetak z
Cetak a4
“inputan Kelilling = alas + tinggi +
salah” sisimiring

Masukkan
a5

Cetak luas
Masukkan Cetak kelliling
a6

Masukkan
a7

Masukkan
a8

Masukkan
a9

Det =
(a1xa5xa9)+(a2xa6xa7)+(a3xa4xa8)-
(a7xa5xa3)-(a8xa6xa1)-(a9xa4xa2)

inv=(1/det)

Cetak det
Cetak inv

Selesai
SOURCE CODE
print "masukkan umur : "
umur=gets.to_i
if umur>=1 and umur <=16
puts "anak-anak"
puts "x = 2a^3 + b + 13"
puts "y = 5a^2 + b + 15"
puts "z = (x+y)/2"
puts "masukkan a : "
a=gets.to_i
puts "masukkan b : "
b=gets.to_i
x= 2*a**3 + b + 13
puts "nilai x : "+x.to_s
y= 5*a**2 + b + 15
puts "nilai y : "+y.to_s
z= (x+y)/2
puts "nilai z : "+z.to_s
elsif umur>=17 and umur<=25
puts "remaja"
puts "hitung luas & keliling segitiga"
puts "masukkan alas : "
alas=gets.to_i
puts "masukkan tinggi :"
tinggi=gets.to_i
puts "masukkan sisi miring : "
sisimiring=gets.to_i
luas=0.5*alas*tinggi
puts "luas segitiga adalah : "+luas.to_s
kel=alas+tinggi+sisimiring
puts "keliling segitiga adalah : "+kel.to_s
elsif umur>=26 and umur<=45
puts "dewasa"
puts "masukkan a1 : "
a1=gets.to_f
puts "masukkan a2 : "
a2=gets.to_f
puts "masukkan a3 : "
a3=gets.to_f
puts "masukkan a4 : "
a4=gets.to_f
puts "masukkan a5 : "
a5=gets.to_f
puts "masukkan a6 : "
a6=gets.to_f
puts "masukkan a7 : "
a7=gets.to_f
puts "masukkan a8 : "
a8=gets.to_f
puts "masukkan a9 : "
a9=gets.to_f
puts "A = |#{a1} #{a2} #{a3}|"
puts " |#{a4} #{a5} #{a6}|"
puts " |#{a7} #{a8} #{a9}|"
det= (a1*a5*a9)+(a2*a6*a7)+(a3*a4*a8)-(a7*a5*a3)-(a8*a6*a1)-(a9*a4*a2)
puts "jadi determinan matriks A adalah : "+det.to_s
inv= (1/det)
puts “jadi invers matriks A adalah : ”+inv.to_s
else umur>45
print "inputan salah"
end
ANALISAH MASALAH
Dalam praktikum 2 ini kami membuat program branching pada ruby di program
eclipse. Kesulitan yang kami alami ialah memilih pernyataan (statement) yang pas untuk
percabangan bertingkat. Akhirnya kami memutuskan untuk menggunakan perintah
IF...ELSIF....ELSE.
Kesulitan yang ke-2 kami tidak dapat memanggil inputan a pada matriks a1,a2,a3..a
ke-n , akhirnya kami menggunakan #{a1},#{a2},#{a3}, dan seterusnya. Dan kami tidak tahu
apa rumus invers matriks kami. Akhirnya , setelah kami mencari di google akhirnya
menemukan rumus invers :
KESIMPULAN

Branching adalah struktur pengambilan keputusan yang memilih di gunakan untuk


memilih salah satu alternatif jawaban yang tepat dari pilihan yang ada. Di mana dalam
bahasa ruby menyediakan perintah IF dan CASE-WHEN. Perintah percabangan berguna
untuk memilih salah satu dari 2 atau lebih alternatif jawaban yang tersedia. Setiap perintah IF
harus di akhiri dengan END untuk yang menandakan akhir dari blok pernyataan IF.
Dalam pengambilan keputusan percabangan bertingkat menggunakan
IF...ELSIF....ELSE. Bentuk ini mempunyai arti jika kondisi 1 benar naka pernyataan 1
yang akan di kerjakan dan apabila kondisi 1 tidak benar maka kondisi 2 yang akan di lihat.
Jika kondisi 2 benar maka pernyataan 2 yang akan di kerjakan dan apabila kondisi 2 tidak
benar maka kondsi 3 yang akan dilihat sampai pernyataann terakhir sesuai bentuk pernyataan
ini.
Untuk memanggil input pada matriks , kami menggunakan :

Untuk menghitung invers matriks , kami menggunakan :


OUTPUT
Output soal 1 :

Output soal 2 :

Output Soal 3 :

Anda mungkin juga menyukai