Senin, 17 Desember 2012

PENERAPAN PERMUTASI DAN KOMBINASI PADA ILMU KOMPUTER

PERMUTASI Adalah pengabungan beberapa objek dengan memperhatikan urutan jadi {a,b,c} berbeda dengan {b,a,c}.

 RUMUS
 NPR = N!/(N-R)!

 Catatan: Notasi Faktorial 3! = 3x2x1 5! = 5x4x3x2x1 1! = 1 Def 0! = 1

 Contoh soal:
 Terdapat tiga orang (X, Y dan Z) yang akan duduk bersama di sebuah bangku. Ada berapa urutan yang dapat trjadi? Jawaban : nPx = n! ; 3P3 = 3! = 1 x 2 x 3 = 6 cara (XYZ, XZY, YXZ, YZX, ZXY, ZYX) .


 KOMBINASI Adalah penggabungan beberapa objek dengan tidak memperhatikan urutan, jadi {a,b,c} sama dengan {b,a,c} juga sama dengan {c,a,b} dan sama dengan urutan yang lain asalkan terdiri dari 3 huruf tersebut.

 RUMUS

 NCR = N!/R!(N-R)!

 Contoh soal: Dalam sebuah kantoh terdapat 7 kelereng. Berapa banyak cara mengambil 4 kelereng dari kantong tersebut? Jawaban: 7C4 = 7!/4!(7-4)! = (7×6×5×4!)/4!3! = 35 cara


CONTOH PENERAPAN PERMUTASI DAN KOMBINASI PADA ILMU KOMPUTER:

 Program C_P_KPK_FPB;
uses wincrt;
var a,b,i,m,n,r,z:integer;
    fn,fr,fn_r,Kombinasi,permutasi:real;

 lagi:char;
label ulang;
label baca;
label again;
begin
ulang: clrscr;
writeln('          TUGAS IDIFIDU             ');
writeln('                                    ');
writeln('   Nama:Fuatman     NPM:10144100090 ');
writeln('                                    ');
writeln('                                    ');
writeln('   Pilihan:                         ');
writeln('   1.Mencari FPB dan KPK            ');
writeln('   2.Mencari Kombinasi dan Permutasi');
writeln('   3.Keluar dari Program            ');
writeln('                                    ');
writeln('  Silahkan pilih. Masukkan angka 1,2 atau 3 untuk keluar program !');
readln(z);
if z>3 then
     begin writeln('ANDA KURANG BERUNTUNG!');end else
if z<1 then
     begin writeln('ANDA KURANG BERUNTUNG!');end else

if z=1 then
begin
 again: clrscr;
 writeln('Program Mencari FPB dan KPK');
 writeln('===========================');
 write('Masukkan bilangan asli pertama a= ');readln(a);
 write('Masukkan bilangan asli kedua   b= ');readln(b);
 m:=a;n:=b;
 repeat
  r:=m mod n;
  if (r<>0) then
   begin
    m:=n;
    n:=r;
   end;
  until(r=0);
  writeln('Jadi, FPB dari ',a,' dan ',b,' = ',n);
  writeln('  dan KPK dari ',a,' dan ',b,' = ',a*b div n);
  write('Mau coba lagi? <Y/T>: ');readln(lagi);
     if upcase(lagi)='Y' then goto again;
     if upcase(lagi)='T' then goto ulang;
     donewincrt;

end;
if z=2 then
begin
    baca:clrscr;
    writeln('MENGHITUNG PERMUTASI DAN KOMBINASI');
        writeln('=====================================');
    write('Masukkan bilangan n =');readln(n);
    write('Masukkan bilangan r =');readln(r);
    fn:=1;
    fr:=1;
    fn_r:=1;
    for i:= 2 to n do
    fn:=fn*i;
    for i := 2 to r do
    fr:=fr*i;
    for i:= 2 to (n-r) do
    fn_r:=fn_r*i;
    kombinasi:=fn/(fr*fn_r);
    permutasi:=fn/(fn_r);
    writeln(n,' Kombinasi ',r, ' = ',Kombinasi:0:0);
    writeln(n,' Permutasi ',r, ' = ',Permutasi:0:0);
    write('Mau coba lagi?<Y/T>:');readln(lagi);
    if upcase(lagi)='Y' then goto baca;
        if upcase(lagi)='T' then goto ulang;
    donewincrt;
end;
if z=3 then
   begin
        writeln('Tekan Enter untuk keluar');
        end;
        write('Jika ingin coba lagi tekan Y: ');readln(lagi);
        if upcase(lagi)='Y' then goto ulang;
        donewincrt;
end.    
    

Tidak ada komentar:

Posting Komentar