Saturday, 23 May 2015

20 jaringan komputer dengan vlan

nah kali ini ane ingin ber bagi ilmu mengenai jaringan virtual lan (VLAN)
vlan yaitu dimana kita mengelompokan komputer menjadi satu dan di jalan kan dengan sebuah aplikasi menurut ane sih gitu
kegunaan nya itu biasanya buat mengatur kecepatan internet tiap-tiap komputer.

nah langsung saja kita ke praktek nya ya...
aplikasi yang di butuh kan yaitu aplikasi cisco paket tracer
dan didalam cisco paket tracer terdapat tools" yang bisa kita gunakan dan di sini kita hanya menggunakan beberapa tools yaitu
-router = generic (router-PT)
-switch = generic (switch-PT) => gunakan 1 switch
-hub  = generic (hub-PT) => gunakan 4 hub karena hub nya hanya punya 6 lobang (port)
-end device =generic (PC-PT) =>gunakan 20 komputer

nah kalo smua nya sudah di siap kan kita langsung ke tkp

1. klik komputer pertama hingga keluar tampilan desktop baru
2.pilih menu desktop dan klik ip configuration
3. kemudian isi lah ip addres contoh disini saya menggunakan 192.168.10.2 untuk komputer yang pertama dan subnetmask nya 255.255.255.0 kemudian default getway nya 192.168.10.1 , nah untuk komputer selanjutnya juga seperti di atas hanya saja yang berubah ip addres nya saja yaitu 192.168.10.2 menjadi 192.168.10.3 atau bisa 4 hingga 254 karena kita menggunakan kelas c jadi hanya bisa menggunakan 255 host
4.oh ya tambahan untuk pilihan radio di atas pilih static dan dns server nya di kosong kan saja
5.selanjutnya kita seting router nya, pertama klik router hingga keluar tampilan desktop pada layar anda kemudian pilih menu config dan pilih fastethernet 0/0 pada bagian sidebar kiri yang terletak pada bagian kiri desktop kemudian centang semua textbox dan pada duplex pastikan menggunakan full duplex setelah itu kita seting menu nya
mac address biasanya otomatis akan terisi yang ini jangan di ganti
ip addres untuk ip addres isi default getway pada pc tadi yaitu 192.168.10.1
subnet mask nya yaitu 255.255.255.0
tx ring Limit 10
kemudian sambunga kan kabel kabel nya menggunakan connection pada menu cisco kemudian pilih automatically choose conection type selanjutnya sambungkan 5 komputer ke 1 hub dan hub tersebut di sambung kan ke switch dan switch di sambungkan ke router, jadi 5 komputer ke 1 hub dan 4 hub ke 1 switch dan 1 switch ke router

contoh gambar nya seperti ini


Monday, 11 May 2015

program mencari jalur terpendek dengan dijsktra

nah di sini ane ingin share hasil belajar ane yang ane dapat dari blog sebelah...
program ini katanya mencari jalur terpendek di antara beberapa array yang sudah kita beri nilai sendiri atau static
nah langsung aja ke tkp banyak omong yang ada malah ngelantur


#include 
#include 

#define V 9
 
 using namespace std;

int minDistance(int dist[], bool sptSet[])
{

   int min = INT_MAX, min_index;
 
   for (int v = 0; v < V; v++)
     if (sptSet[v] == false && dist[v] <= min)
         min = dist[v], min_index = v;
 
   return min_index;
}
 

int printSolution(int dist[], int n)
{
   printf("Vertex   Distance from Source\n");
   for (int i = 0; i < V; i++)
      printf("%d \t\t %d\n", i, dist[i]);
}
 

void dijkstra(int graph[V][V], int src)
{
     int dist[V];     
 
     bool sptSet[V]; 
 

     for (int i = 0; i < V; i++)
        dist[i] = INT_MAX, sptSet[i] = false;
 
   
     dist[src] = 0;
 
    
     for (int count = 0; count < V-1; count++)
     {
  
       int u = minDistance(dist, sptSet);
 
  
       sptSet[u] = true;
 
   
       for (int v = 0; v < V; v++)
 
      
         if (!sptSet[v] && graph[u][v] && dist[u] != INT_MAX 
                                       && dist[u]+graph[u][v] < dist[v])
            dist[v] = dist[u] + graph[u][v];
     }
 
    
     printSolution(dist, V);
}
 

int main()
{
 
   int graph[V][V] = {{0, 4, 0, 0, 0, 0, 0, 8, 0},
                      {4, 0, 8, 0, 0, 0, 0, 11, 0},
                      {0, 8, 0, 7, 0, 4, 0, 0, 2},
                      {0, 0, 7, 0, 9, 14, 0, 0, 0},
                      {0, 0, 0, 9, 0, 10, 0, 0, 0},
                      {0, 0, 4, 0, 10, 0, 2, 0, 0},
                      {0, 0, 0, 14, 0, 2, 0, 1, 6},
                      {8, 11, 0, 0, 0, 0, 1, 0, 7},
                      {0, 0, 2, 0, 0, 0, 6, 7, 0}
                     };
 
    dijkstra(graph, 0);
 
  return 0;

}

nah sedikit ane jelasin dari program di atas yaitu pada graph[V][V] yang artinya array graph[9][9] kenapa 9 karena kita udah menentukan bahwa nilai v adalah 9 dari define V 9 pada baris ke lima kalo gak salah hehehe
nah cara baca array tersebut adalah pertama dari array 0
0=0 titik awal trus titik 2=4 titik 3=0 karena dari titik 0 ke titik 3 tali nya tidak terhubung dan begitu seterus nya sampai titik 7=8 karena garis nya terhubung makanya di beri nilai 8 dan selain itu 0
begitu seterusnya dari array1 hingga 9

void dijkstra(int graph[V][V], int src) yaitu menentukan jalan terpendek dari beberapa garis atau jalan

int printSolution(int dist[], int n) yaitu untuk menampilkan data dalam satu array yang sudah di bentuk dari void dijkstra(int graph[V][V], int src)
untuk gambar nya bisa di lihat pada link di bawah ini
sumber : http://www.geeksforgeeks.org/greedy-algorithms-set-6-dijkstras-shortest-path-algorithm/

Saturday, 9 May 2015

mengurutkan data array dengan C++

nah ane kemaren dapat pr dari dosen ane cara mengurutkan nilai yang diacak menjadi ter urut dari yang kecil kebesar dan juga memecah nya menjadi 2 dari yang kiri dan kanan nah sebenar nya ane masih pusing gimana cara ngurutin data yang kiri dengan yang kanan
yang ane share ini masih menggunakan cara brute force,yang anak IT bilang itu cara bodoh nya hehehe....


#include <iostream>
#include<iomanip>

using namespace std;

int main(int argc, char** argv) {
 int kiri[100],kanan[100],i,kidal1[100],kidal2[100],n,j,b[100],tmp;
 cout<<"masukan banyak data = ";cin>>n;
 
 for(i=1;i<=n;i++){
  cout<<"masukan nilai kiri yang ke"<<i<<" = ";cin>>b[i];
  }
  cout<<"\n"<<setw(4)<<"kiri"<<setw(5)<<"= ";
   for(i=1;i<=(n/2);i++){
    kiri[i]=b[i];
    cout<<kiri[i]<<" ";
  }
  cout<<"\n"<<setw(5)<<"kanan"<<setw(4)<<"= ";
   for(i=(n/2)+1;i<=n;i++){
    kanan[i]=b[i];
    cout<<kanan[i]<<" ";
  }
  //proses urutan yang sebelah kiri
  for(i=0;i<=n/2;i++){
   for(j=i+1;j<=n/2;j++){
    if(b[i]>b[j]){
     tmp=b[i];
     b[i]=b[j];
     b[j]=tmp;
    }
   // kiri[i]=b[i];
   }  
  }
  //proses urutan yang sebelah kanan
  for(i=(n/2)+1;i<=n;i++){
   for(j=i+1;j<=n;j++){
    if(b[i]>b[j]){
     tmp=b[i];
     b[i]=b[j];
     b[j]=tmp;
    }
   // kanan[i]=b[i];
   }  
  }
  //menampilkan urutan yang kiri
  cout<<"\n"<<setw(4)<<"kiri"<<setw(5)<<"= ";
  for(i=1;i<=n/2;i++){
   //cout<<kiri[i];
   cout<<b[i]<<" ";
  }
  //menampilkan urutan yang kanan
  cout<<"\n"<<setw(4)<<"kanan"<<setw(4)<<"= ";
  for(i=(n/2)+1;i<=n;i++){
   // cout<<kanan[i];
   cout<<b[i]<<" ";
  }
  //proses urutan keseluruhan
  for(i=1;i<=n;i++){
   for(j=i+1;j<=n;j++){
    if(b[i]>b[j]){
     tmp=b[i];
     b[i]=b[j];
     b[j]=tmp;
    }
   // kanan[i]=b[i];
   }  
  }
  //menampilkan urutan keseluruhan
  cout<<"\n"<<setw(4)<<"semua"<<setw(4)<<"= ";
  for(i=1;i<=n;i++){
   // cout<<kanan[i];
   cout<<b[i]<<" ";
  }

 return 0;
}

hasil jadi nya ntar seperti ini
masukan banyak data = 8
masukan nilai kiri yang ke1 = 9
masukan nilai kiri yang ke2 = 2
masukan nilai kiri yang ke3 = 4
masukan nilai kiri yang ke4 = 3
masukan nilai kiri yang ke5 = 5
masukan nilai kiri yang ke6 = 7
masukan nilai kiri yang ke7 = 6
masukan nilai kiri yang ke8 = 8

kiri   = 9 2 4 3
kanan  = 5 7 6 8
kiri   = 2 3 4 9
kanan  = 5 6 7 8
semua  = 2 3 4 5 6 7 8 9
--------------------------------
Process exited with return value 0
Press any key to continue . . .