Sabtu, 09 April 2016

BAB V latihan 1 (5-7)

5. Buatlah algoritma dan program untuk menghitung nilai dari permutasi dan kombinasi n
buah bola yang diambil r bola.
Program CPP :
#include <iostream>
#include <cstdlib>

/* run this program using the console pauser or add your own getch, system("pause") or input loop */
using namespace std;
    class matdis{
      friend istream& operator>>(istream&, matdis&);
      friend ostream& operator<<(ostream&, matdis&);
      public:
             matdis();
             int permutasi();
             int kombinasi();
             void pilihan();
             void exit();
      private:
              int n,r,x,y,z,a,p,c;
              };
      matdis::matdis(){cout<<"\t==asupkeun pilihan anjeun anu rek di pilih"<<endl;
                       cout<<"\t========== 1. PERMUTASI ==========="<<endl;
                       cout<<"\t========== 2. COMBINASI ==========="<<endl;
                       cout<<"\t========== 0. EXIT      ==========="<<endl;
                       cout<<"\t==========  HATURNUHUN ==========="<<endl;
                       };
                     
      int matdis::permutasi(){
           cout<<"Program Menghitung Permutasi"<<endl;
           cout<<"Masukkan n harus lebih besar dari r :"<<endl;
           cout<<"Masukkan n :"; cin>>n;
           cout<<"Masukkan r :"; cin>>r;
           x=1;
           y=1;
           for(int i=1; i<=n; i++){
                   x=x*i;
                   }
           for(int j=1; j<=(n-r); j++){
                   y=y*j;
                   }
           p=x/y;
           cout<<"Nilai n bola ="<<n<<endl;
           cout<<"Nilai r bola ="<<r<<endl;
           cout<<"Nilai bola yang di ambil r ="<<x<<endl;
           cout<<"Hasil (n-r)! ="<<y<<endl;
           cout<<"Hasil bola yang di ambil r "<<"("<<n<<","<<r<<") : "<<p<<endl;
           pilihan();
           return p;
           }
         
      int matdis::kombinasi(){
           cout<<"Program Menghitung Kombinasi"<<endl;
           cout<<"Masukkan n harus lebih besar dari r :"<<endl;
           cout<<"Masukkan n :"; cin>>n;
           cout<<"Masukkan r :"; cin>>r;
           x=1;
           y=1;
           z=1;
           a=(n-r);
           for(int i=1; i<=n; i++){
                   x=x*i;
                   }
           for(int j=1; j<=r; j++){
                   y=y*j;
                   }
           for(int k=1; k<=a; k++){
                   z=z*k;
                   }
           c=x/(z*y);
           cout<<"Nilai n bola ="<<n<<endl;
           cout<<"Nilai r bola ="<<r<<endl;
           cout<<"Nilai n! ="<<x<<endl;
           cout<<"Hasil bola yang di ambil r ="<<y<<endl;
           cout<<"Nilai (n-r)! ="<<z<<endl;
           cout<<"Hasil bola yang di ambil r "<<"("<<n<<","<<r<<") : "<<c<<endl;
           pilihan();
           return c;
           }
      void matdis::pilihan(){
                int pil;
                cout<<endl;
                cout<<"masukan pilihan anda = ";
                cin>>pil;
                switch(pil){
                 case 1 : permutasi ();break;
                 case 2 : kombinasi ();break;
                 case 0 : exit (); break;
                 default :
                         cout<<"Maaf anda salah tulis"<<endl;
                         cout<<"Pilih kembali Pilihan "<<endl;
                         pilihan();
                          break;     
                 }}
      void matdis::exit(){
                          cout << "TERIMA KASIH"<<endl;
                          }
int main(int argc, char** argv) {
  matdis x;
    x.pilihan();
    return 0;

}
RAPTOR:





6. Buatlah algoritma dan program untuk mengkonversi bilangan desimal menjadi bilangan
biner.
Program CPP :
 #include <iostream>
using namespace std;

int main(int argc, char** argv) {
  
    long desimal, pembagi, bit;
    pembagi=1073741824;
  
    cout<<"\t\t Program Konversi Bilangan Desimal ke Biner"<<endl<<endl;
    cout<<" Masukan bilangan  desimal : ";
    cin>>desimal;
  
    while(pembagi>desimal)pembagi/=2;
    do{
        bit=desimal/pembagi;
        cout<<bit;
        desimal=desimal%pembagi;
        pembagi/=2;
    }
    while(pembagi>=1);
    cout<<"\n";
    return 0;
}

RAPTOR :
7. Buatlah algoritma, flowchart dan program untuk menampilkan permutasi dari 3 huruf.
Misalnya diberikan : abc
output :
abc
bca
bac, dan seterusnya

Program CPP :
#include <iostream>
#include <string.h>
#include <conio.h>
#include <stdio.h>
using namespace std;
void masuk(char a[50]);
void keluar(char b[50]);
void identitas();

int main()
 {
  char kata[50];
      cout<<"\nPermutasi dari tiga huruf"<<endl;
      masuk(kata);
      keluar(kata);;
  getch();
 }

void masuk(char a[50]){
   cout<<"\nMasukkan Kata           : ";
  gets(a);
  cout<<endl;

      }

void keluar(char b[50]){
cout<<"\nHasil Pembalikkan kata  :";
  for(int a=strlen(b);a>=0;a--)
   {
    cout<<b[a];
   }
      cout<<endl;
      }


0 komentar

Posting Komentar