Jumat, 08 Juli 2011

Algoritma dan Program Mencari Permutasi dan Kombinasi

Algoritma mencari permutasi

Deklarasi
n,r,permutasi   : int
Deskripsi
Masukkan ( n )
Masukkan ( r )If (n > r )
Permutasi=fak (n)/fak(n-r)
Tulis ( nilai permutasi )
Else if ( n < r )
Tulis ( data tidak valid )
End if
End if
End

2.     Algoritma mencari kombinasi

Deklarasi
n,r,kombinasi   : int
Deskripsi
Masukkan ( n )
Masukkan ( r )
If ( n > r )
Kombinasi=fak(n)/(fak(n-r)*fak (r))
Tulis ( nilai kombinasi )
Else if ( n < r )
Tulis ( data tidak valid )
End if
End if
End

Untuk Implementasi dalam Program C++ adalah sebagai berikut :

01#include <iostream.h>
02#include <stdio.h>
03#include <conio.h>
04long int fak (long int x);
05int main()
06 
07{
08int n,r, Prts,pilihan,p;
09char ulang;
10do
11{
12 
13cout<<"PERHITUNGAN KOMBINASI DAN PERMUTASI"<<endl;
14cout<<"1. KOMBINASI"<<endl;
15cout<<"2. PERMUTASI"<<endl;
16cout<<"3. EXIT"<<endl;
17cout<<endl<<endl;
18cout<<"Pilihan Anda : ";cin>>pilihan;
19switch (pilihan)
20{
21case 1 :
22cout<<" Program Menghitung Kombinasi(nCr)";
23cout<<endl;
24cout<<" Masukkan Nilai n : "; cin>>n;
25cout<<endl;
26cout<<" Masukkan Nilai r : "; cin>>r;
27cout<<endl;
28if (n>r){
29Prts = fak(n)/(fak(n-r)*fak (r));
30cout<<endl;
31printf(" Kombinasinya adalah: %d",Prts);
32cout<<endl; }
33else if (n<r){
34cout<<"data tak valid";}
35cout<<endl ;
36break;
37case 2 :
38cout<<" Program Menghitung Permutasi(nPr)";
39cout<<endl;
40cout<<" Masukkan Nilai n : "; cin>>n;
41cout<<endl;
42cout<<" Masukkan Nilai r : "; cin>>r;
43cout<<endl;
44if (n>r){
45Prts = fak (n)/fak(n-r);
46cout<<endl;
47 
48cout<<" Permutasinya adalah: "<<Prts;
49cout<<endl; }
50else if (n<r){
51cout<<"data tak valid";}
52cout<<endl ;
53break;
54case 3 :
55cout<<"Exit"<<endl;
56break;
57default:
58cout<<"Menu tidak tersedia"<<endl;
59break;
60}
61cout<<"Kembali ke Menu Utama (y/n)?";cin>>ulang;
62}while(ulang == 'y');
63}
64 
65long int fak (long int n)
66{
67int f;
68if (n<=1)
69{
70f=1;
71}
72else
73{
74f=n*fak(n-1);
75}
76return (f);
77}

Tidak ada komentar:

Posting Komentar