#include<iostream.h>
#include<conio.h>
class war
{
public:
int n,t[10][10],i,j,k;
void getgraph();
void display();
void warshall();
};
void war::getgraph()
{
cout<<"\n\n enter the no of vertices:";
cin>>n;
cout<<"\n\n enter adjacency matrix:";
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
{
cout<<"["<<i<<","<<j<<"]";
c in>>t[i][j];
}
}
void war::warshall()
{
for(k=1;k<=n;k++)
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
if(i!=j)
t[i][j]=(t[i][j]||(t[i][k]&&t[k][j]));
}
void war::display()
{
cout<<"\n \n Transitive closure:";
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
{
cout<<"\t"<<t[i][j];
}
}
}
void main()
{
war f;
clrscr();
cout<<"\n warshall algorithm";
cout<<"\n using dynamic program m";
f.getgraph();
f.warshall();
f.display();
getch();
}
Comments
Post a Comment