LAPORAN PRAKTIKUM PEMROGRAMAN DASAR
TIPE-TIPE
PERULANGAN
Disusun
oleh :
Nama : Andrianto Setiawan
NIM : 135150201111153
Asisten 1 : Fadel Trivandi Dipantara
Asisten 2 : Karid Nurvenus
Asisten 3 : Apiladosi Priambodo
Dosen Pengampu : Sutrisno, Ir., MT
LABORATORIUM
KOMPUTER DASAR
PROGRAM TEKNOLOGI INFORMASI DAN ILMU KOMPUTER
UNIVERSITAS
BRAWIJAYA
2013
Pengesahan
Tanggal:
|
Asisten
|
A. Definisi Masalah
1. (Soal di PDF) Pada salah satu menu terdapat
looping untuk melakukan perhintungan permutasi nPr dengan
input n dan r, dimana n adalah jumlah secara keseluruhan, sementara r adalah jumlah
sampel.Dimana rumus permutasi adalah
nPr = n!/(n-r)!
2. (Soal di PDF) Pada menu yang lain terdapat
looping untuk melakukan perhintungan
kombinasi nCr dengan input n dan r, dimana n adalah jumlah secara
keseluruhan, sementara r adalah jumlah sampel.Dimana rumus kombinasi adalah
nCr = n!/(n-r)! x r!
B. Source Code
Soal 1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
import java.util.Scanner;
public class soalPDFno1 {
public
static void main(String[] args) {
Scanner in = new Scanner(System.in);
System.out.println("PROGRAM MENGHITUNG
PERMUTASI
DAN KOMBINASI");
System.out.println("===================");
int
pilih;
do {
System.out.println("Pilihan Soal yg
Tersedia");
System.out.println("1. Soal 1");
System.out.println("2.
Soal 2");
System.out.println("3.
Keluar");
System.out.println("Soal
yg diminta = ");
pilih =
in.nextInt();
switch (pilih)
{
case 1 :
{System.out.println("Permutasi");
int x,y;
int
p,nFaktorial=1,
pengurangan,penguranganFaktorial=1;
System.out.print("masukan
n = ");
x =
in.nextInt();
System.out.print("masukan
r = ");
y =
in.nextInt();
pengurangan =
x-y;
for (int i=1;
i<=x; i++)
nFaktorial*= i;
for
(int j=1; j<=pengurangan; j++)
penguranganFaktorial*=
j;
p =
nFaktorial/penguranganFaktorial;
System.out.println("Permutasinya
= " + p);
}break;
}
}
|
Soal 2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
case 2
:
{System.out.println("Kombinasi");
int
x,y;
int
c,nFaktorial=1,pengurangan,
penguranganFaktorial=1,rFaktorial=1;
System.out.print("masukan
n = ");
x = in.nextInt();
System.out.print("masukan r = ");
y =
in.nextInt();
pengurangan
= x-y;
for
(int i=1; i<=x; i++)
nFaktorial*=
i;
for
(int j=1; j<=pengurangan; j++)
penguranganFaktorial*=
j;
for
(int k=1; k<=y; k++)
rFaktorial*=
k;
c =
nFaktorial/(penguranganFaktorial
*rFaktorial);
System.out.println("Combinasinya
= " + c);
}break;
case 3
: System.out.println (“============”);
break;
default
: System.out.println("pilihan soal
tidak
ada");
}
}while (pilih !=3);
}
}
|
C. Pembahaasan
Soal 1
1
2-3
4
5-6
7
8
9
10
11
12
13
14
15
16
17-18
19-20
21-22
23
24
25
26
27
28
29
30
|
Melakukan
import dari package Scanner
Dekalarasi
kelas dan method main
Deklarasi
variabel Scanner dengan nama variabel input
Perintah untuk mencetak program menghitung permutasi dan kombinasi
Deklarasi variable integer dengan
nama pilih
Deklarasi variable do untuk
perulangan
Perintah untuk
mencetak pilihan soal yang tersedia
Perintah untuk
mencetak soal 1
Perintah untuk
mencetak soal 2
Perintah untuk
mencetak soal 3
Perintah untuk
mencetak soal yang diminta
perintah untuk
memasukkan inputan dengan scanner pada variable pilih
Deklarasi
variable switch agar melakukan pilihan
Jika memilih
1,maka yang akan di cetak permutasi
Deklarasi
variable integer dengan nama x, y, p, nFaktorial berinisialisasi 1,
pengurangan, penguranganFaktorial berinisialisasi 1.
Perintah untuk
mencetak masukan n dan memasukan inputan dengan scanner pada variable x
Perintah untuk
mencetak masukan r dan memasukan inputan dengan scanner pada variable y
Rumus menghitung
pengurangan
Pernyataan for
untuk integer i samadengan 1, i kurang
dari samadengan x, i akan bertambah 1.
Nilai nFaktorial dikali
i akan disimpan didalam nFaktorial.
Pernyataan for
untuk integer j samadengan 1, j kurang
dari samadengan pengurangan, j akan bertambah 1.
Nilai
penguranganFaktorial dikali j akan disimpan didalam penguranganFaktorial
Rumus menghitung
permutasi dengan variable p.
Perintah untuk
mencetah hasil permutasi.
Pernyataan break
|
Soal2
1
2-3
4-5
6-7
8
9
10
11
12
13
14
15
16
17
18
19
20
22
|
Jika memilih 2
maka yang dicetak kombinasi.
Deklarasi
variable integer dengan nama x, y, c, nFaktorial berinisialisasi 1,
pengurangan, penguranganFaktorial berinisialisasi 1, rFaktorial
berinisialisasi 1.
Perintah untuk
mencetak masukan n dan memasukan inputan dengan scanner pada variable x
Perintah untuk
mencetak masukan r dan memasukan inputan dengan scanner pada variable y
Rumus menghitung
pengurangan
Pernyataan for
untuk integer i samadengan 1, i kurang
dari samadengan x, i akan bertambah 1.
Nilai nFaktorial
dikali i akan disimpan didalam nFaktorial
Pernyataan for
untuk integer j samadengan 1, j kurang
dari samadengan pengurangan, j akan bertambah 1.
Nilai
penguranganFaktorial dikali j akan disimpan didalam penguranganFaktorial
Pernyataan for
untuk integer k samadengan 1, k kurang
dari samadengan y, k akan bertambah 1.
Nilai rFaktorial dikali
k akan disimpan didalam rFaktorial
Rumus menghitung
kombinasi dengan variable c.
Perintah untuk
mencetak hasil kombinasi
Pernyataan break
Jika memilih 3
maka yang dicetak (=========)
Pernyataan break
Pernyataan
default, jika memilih selain nomer yang tersedia, maka akan dicetak pilihan
soal tidak ada.
Pernyataan while,
program akan terus mengulang jika tidak memilih 3.
|
D. Screenshoot Program
Soal 1
Soal 2
E. Kesimpulan
Terdapat beberapa jenis
pengulangan pada java seperti for, while, do-while. Pernyataan tersebut
menciptakan loop yang secara berulang mengeksekusi sekumpulan statement sampai
batas akhir. Perulangan for merupakan sarana mengulang kode dalam jumlah tertentu.
Pengulangan ini terstruktur untuk mengulangi kode sampai batas tertentu.
Pengulangan while mempunyai kondisi yang mengendalikan pernyataan perulangan.
Perulangan do-while serupa dengan perulangan while, hanya saja pemeriksaan
kondisi yang dilakukan adalah setelah pernyataan. Terkadang diinginkan untuk
mengeksekusi badan program dengan dengan perulangan while sekurang-kurangnya
sekali, bahkan jika pernyataan booleannya langsung menghasilkan false.
Akibatnya , kita harus memeriksa pernyataan boolean LoopCondition di akhir
perulangan, bukan di awal seperti perulangan while.
Tidak ada komentar:
Posting Komentar