Rabu, 16 April 2014

Pemrograman Komputer Basic (PKB)

A. Permutasi   
  nPr =
 \frac{n!}{(n-r)!}



B. KomBinasi
 


 
Editor :
clc;
clear all
disp('*********************************************')
disp('Program : Simulai Permutasi dan Kombinasi')
disp('Oleh    : Kelompok I                     ')
disp('          1. Sholiha Nurwulan : 15.1.12.4.108')
disp('          2. Lindri Apriani   : 15.1.12.4.104')
disp('          3. Parman           : 15.1.12.4.116')
disp('          4. Wiwik Apriani    : 15.1.12.4.099')
disp('          5. M.Syabani Purnama: 15.1.12.4.101')
disp('          6. Ety Kurniati     : 15.1.12.4.106')
disp('*********************************************')
n=input('n =');
r=input('r =');
disp('[1] Program Permutasi')
disp('[2] Program Kombinasi')
p=input('Silahkan masukkan pilihan =');
switch p
    case 1
        if n>1&round(n)==n&r>1&round(r)==r
            s=[n r];m=n-r;
            t=[num2str(n),'! =(',num2str(n),')'];
            for i=n-1:-1:1
                h=['(',num2str(i),')'];
                t=[t h];
                n=n*i;
            end
            disp([t '=',num2str(n)]);
            t=[num2str(m),'! = (',num2str(m),')'];
            for i=m-1:-1:1
                h=['(',num2str(i),')'];
                t=[t h];
                m=m*i;
            end
            disp([t '=',num2str(m)]);
            disp(['P(',num2str(s(1)),',',num2str(s(2)),')=',num2str(s(1)),'!/(',num2str(s(1)),'-',num2str(r),')=',num2str(s(1)),'!/(',num2str(s(1)-s(2)),')!=',num2str(n/m)])
        end
    case 2
        if r>n
    disp('Tidak terdefinisi                  ')
else
    if n==r
        disp('Nilai kombinasi adalah  1      ')
    else
        if n<0
            disp('Silahkan ulangi            ')
        else
            if r<0
                disp('Gunakan r>0            ')
            else
                if n<0&r<0
                    disp('Tidak bisa jalan   ')
                else
                    if n>0&r==0
                        disp('Nilai  = 1     ')
                    else
                        if n==0&r>0
                            disp('Gunakan n>0')
                        else
                            if n>0&r<1
                                disp('Ulangi ')
                            else
        a=n;
        for i=n-1:-1:1
            a=a*i;
        end
        b=r;
        for j=(r-1):-1:1
            b=b*j;
        end
        c=(n-r);
        for k=c-1:-1:1
            c=c*k;
        end
        c=a./(b.*c);
        disp(['nilai kombinasi dari n dan r adalah = ',num2str(c)])
    end
        end
    end
    end
    end
    end
    end
        end
       
end