Tampilkan postingan dengan label Matematika Diskrit. Tampilkan semua postingan
Tampilkan postingan dengan label Matematika Diskrit. Tampilkan semua postingan

Senin, 04 Juni 2012

C++ untuk menentukan Koordinat Graf [ Terhubung / Tidak ]


#include
#include

main(){
    
     bool ketemu, nolsemua;
     int matrix[10][10];
     int i, j, jumlah_simpul, jumlah_sisi, asal, tujuan;
     //inisialisasi_matrix
     cout<<"Inputkan Jumlah Simpulnya : ";
     cin>>jumlah_simpul;
     cout<<"Inputkan Jumlah Sisinya : ";
     cin>>jumlah_sisi;
     for(i=1; i<=jumlah_simpul; i++)
     for(j=1; j<=jumlah_sisi; j++)
     matrix[i][j]=0;
     //isi matrix sesuai input graf
     for (i=1; i<=jumlah_sisi; i++){
     cout<<"Koordinat Titik Asal [Simpul] : ";
     cin>>asal;
     cout<<"Koordinat Titik Tujuannya [Simpul] : ";
     cin>>tujuan;
     matrix[asal][tujuan]=1;
     matrix[tujuan][asal]=1;  
     }
     //telusuri graf
     i=1;nolsemua=false;
     while(i<=jumlah_simpul && !nolsemua){
     j=1; ketemu=false;
     while(j<=jumlah_simpul && !ketemu){
     if(matrix[i][j]==1)
     ketemu=true;
     else
     j++;                   
     }
     if(!ketemu)
     nolsemua=true;
     else
     i++;                      
     }
    
     if(nolsemua)
     cout<<"Graf Tidak Terhubung"<
     else
     cout<<"Graf Terhubung"<
    
     system("PAUSE");
     return 0;
     }

Senin, 28 Mei 2012

C++ Untuk Mengenerate Permutasi


Dibawah Ini Akan Saya Deskripsikan Source Code C++ Nya :


#include
#include
#include

using namespace std;


    int hasil;
    //funsi faktorial :
            int faktorial (int nilai)
            {
                hasil = nilai;
                while(nilai>1)
                {
                              hasil = hasil*(nilai-1);
                              nilai = nilai-1;
                              }
                              return hasil;
                              }
    main()
    {
          int p,nq,max,x,i,j,n,k,r,s,tr,no ;
          int a[100];
          div_t xx;
         
          for (i=0;i<100;i++)
          {
                             a[i] =0;
                             }
    //Tampilkan pembuka
    printf("---------------------------------------------------------------------\n PROGRAM GENERATE PERMUTASI\n\n");
    printf("---------------------------------------------------------------------\n Raizexe [11018036]  UNIVERSITAS AHMAD DAHLAN\n");
    printf("---------------------------------------------------------------------\n");
   
    //input nilai n(jumlah data )
            printf("Masukan Banyak-nya Nilai N : ");
            scanf("%d",&n);
    //input data ke dalam array
            for(i=1;i<=n;i++)    //ulangi untuk semua data hingga data ke-n
            {
            printf("Masukan Nilai Himpunan a[%d] : ",i);
            scanf("%d",&a[i]);
            }
           
    //input nilai r
            printf("Masukan Nilai r : ");
            scanf("%d",&tr);
           
    //hitung nilai permutasi
    p=faktorial(n);
    nq=faktorial(n-tr);
    if(nq==0)nq=1;
    max=p/nq;
   
    printf("nilai permutasi : %d\n\nTekan Enter untuk melihat hasil generate permutasi...\n",max);
   
    getche();//fungsi membaca karakter keyboard
    no=1;//variabel untuk menampilkan nomor
   
    //men-generate permutasi dengan
    //algoritma generate next-permutation
   
    //genere sabanyak nilai permutasi
    for(x=1;x<=max;x++)
    {
                       printf("%3d. ",no);
                       for(i=1;i<=tr;i++)
                       printf("%d",a[i]);
                       printf("\n",a[i]);
                       no++;
                      
                       j=n-1;
                       while(a[j] > a[j+1])
                                  j=j-1 ; //j adalah subcript terbesar dengan aj
                       k=n;
                       while(a[j] > a[k])
                                  k=k-1 ; //ak adalah integer terkecil dan lebih besar dari aj
                                  
    //tukar aj dan ak
    i=a[k];
    a[k]=a[j];
    a[j]=i;
   
    r=n;
    s=j+1;
    while (r>s)
    {
          //tukar ar dan as
          i=a[r];
          a[r]=a[s];
          a[s]=i;
         
          r=r-1;
          s=s+1;
          }
          }
         
       
         
    system("PAUSE");
    return EXIT_SUCCESS;
}

Kamis, 24 Mei 2012

Program C++ Array [Bubble Short]

#include
#include

using namespace std;

class bublesort{
      //friend istream& operator>>(istream& in,buble& a);
      //friend ostream& operator<<(ostream& out,buble& a);
public:
        void buble (int data[100],int_Variable banyak);
        void tukar (
        int a,
        int b)
        }; 
 void bublesort::buble (int data[100],int_Variable banyak)
{
     
   int j;
   int k;
 

   j =1;
   while (!(j>banyak))
   {
      k =j+1;
      while (!(k>banyak))
      {
         if (data(j)>data(k))
         {
            tukar(data(j),data(k));
         }
         else
         {
         }
         k =k+1;
      }
      j =j+1;
   }
}
 void tukar (
       int a,
       int b)
{
   int temp;

   temp =a;
   a =b;
   b =temp;
}
int main()
{
   string raptor_prompt_variable_zzyz;
   int banyak;
   int i;

   bublesort a ;
   raptor_prompt_variable_zzyz ="input banyaknya data";
   cout << raptor_prompt_variable_zzyz << endl;
   cin >> banyak;
   i =1;
   while (!(i>banyak))
   {
      raptor_prompt_variable_zzyz ="inputkan data";
      cout << raptor_prompt_variable_zzyz << endl;
      cin >> data(i);
      cout << "data:"+data(i) << endl;     
      i =i+1;
   }
   a.buble(data,banyak);
   i =1;
   while (!(i>banyak))
   {
      cout << "isi data:"+data(i) << endl;     
      i =i+1;
   }

  
   system("pause");
   return 0;
}

Senin, 07 Mei 2012

C++ menentukan Perkalian Antar Matriks


#include
#include
#include

using namespace std;

int i, j, k, baris, kolom, m1[10][10], m2[10][10], hasil[10][10];

int main(int argc, char *argv[])
{
    cout<<"Operasi Perkalian Matriks "<
    do
    {
                   cout<<"Jumlah Baris : "; cin>>baris;
                   cout<<"Jumlah Kolom : "; cin>>kolom;
                 
                   }
    while ((baris>10)||(kolom>10));
   
    cout<<"Matriks A "<
    for(i=0;i
    for(j=0;j
                         cout<<"data["<
    for(i=0;i
    for(j=0;j
                         cout<<"data["<
    cout<<"Matriks A * Matriks B = Matriks C"<
    for(i=0;i
                         for(j=0;j
                         cout<
                         cout<<"     ";
                         for(j=0;j
                         cout<
                         cout<<"     ";
                         for(j=0;j
                         cout<
                         cout<
                         }

   cout<
    system("PAUSE");
    return EXIT_SUCCESS;
}

C++ Menentukan Penjumlahan dan Pengurangan Matriks


#include
#include
#include

using namespace std;

int i, j, k, baris, kolom, m1[10][10], m2[10][10], hasil[10][10];

int main(int argc, char *argv[])
{
    cout<<"Operasi Pengurangan dan Penjumlahan Matriks\n\n";
    do
    {
                   cout<<"Jumlah Baris : "; cin>>baris;
                   cout<<"Jumlah Kolom : "; cin>>kolom;
                 
                   }
    while ((baris>10)||(kolom>10));
   
    cout<<"\nMatriks A "<
    for(i=0;i
    for(j=0;j
                         cout<<"data["<
    for(i=0;i
    for(j=0;j
                         cout<<"data["<
    cout<<"Matriks A + Matriks B = Matriks C\n";
    for(i=0;i
                         for(j=0;j
                         cout<
                         cout<<"     ";
                         for(j=0;j
                         cout<
                         cout<<"     ";
                         for(j=0;j
                         cout<
                         cout<
                         }
    for(i=0;i
    for(j=0;j
                         hasil[i][j]=m1[i][j] - m2[i][j];
                         }
    for(k=0;k<3;k++)
    hasil[i][j] = hasil[i][j] - m1[i][j] - m2[i][j];
    cout<<"\nHasilnya... "<
    cout<<"Matriks A - Matriks B = Matriks C\n";
    for(i=0;i
                         for(j=0;j
                         cout<
                         cout<<"     ";
                         for(j=0;j
                         cout<
                         cout<<"     ";
                         for(j=0;j
                         cout<
                         cout<
                         }
                       
   cout<
    system("PAUSE");
    return EXIT_SUCCESS;
}

 

© 2013 Raizexe Blog. All rights resevered. Designed by Templateism

Back To Top