Halaman

Kamis, 14 Mei 2009

Routing dengan algoritma Djkistra (dengan Bahasa C++)...

#include
class dijkstra
{
private:
int graph[15][15];
int set[15],predecessor[15],mark[15],pathestimate[15];
int source;
int num_of_vertices;
public:
int minimum();
void read();
void initialize();
void printpath(int);
void algorithm();
void output();
};
void dijkstra::read()
{
cout<<"Masukkan jumlah node : "; cin>>num_of_vertices;
while(num_of_vertices<=0) { cout<<"\Angka yang anda masukkan salah,masukkan lagi : "; cin>>num_of_vertices;
}


cout<<"Menentukan path :\n"; for(int i=1;i<=num_of_vertices;i++) { cout<<"\nTentukan path untuk node "<< j="1;j<=">>graph[i][j];
while(graph[i][j]<0)>>graph[i][j];
}
}
}
cout<<"\nTentukan source node : "; cin>>source;
}

void dijkstra::initialize()
{
for(int i=1;i<=num_of_vertices;i++) { mark[i]=0; pathestimate[i]=999; predecessor[i]=0; } pathestimate[source]=0; } void dijkstra::algorithm() { initialize(); int count=0; int i; int u; while(count0)
{
if(mark[i]!=1)
{
if(pathestimate[i]>pathestimate[u]+graph[u][i])
{
pathestimate[i]=pathestimate[u]+graph[u][i];
predecessor[i]=u;
} }}} }}

void dijkstra::printpath(int i)
{
cout<<<<"tida ada path "<<<" ke "<<<".."<<<"->("<<<")\n"; } cout<=pathestimate[i])
{
min=pathestimate[i];
t=i;
}}}
return t;
}

void main()
{
dijkstra s;
s.read();
s.algorithm();
s.output();
}


Selamat mencoba...!!!





Tidak ada komentar:

Posting Komentar