Distance-vector routing ( DVR ) algorithm in c
On-campus and online computer science courses to Learn the basic concepts of Computer Science.This tutorial will cover c ,c++, java, data structure and algorithm,computer graphics,microprocessor,analysis of algorithms,Digital Logic Design and Analysis,computer architecture,computer networks,operating system.
code in C:#include<stdio.h>
int dist[50][50],temp[50][50],n,i,j,k,x;
void dvr();
int main()
{
printf("\nEnter the number of nodes : ");
scanf("%d",&n);
printf("\nEnter the distance matrix :\n");
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
{
scanf("%d",&dist[i][j]);
dist[i][i]=0;
temp[i][j]=j;
}
printf("\n");
}
dvr();
printf("enter value of i &j:");
scanf("%d",&i);
scanf("%d",&j);
printf("enter the new cost");
scanf("%d",&x);
dist[i][j]=x;
printf("After update\n\n");
dvr();
return 0;
}
void dvr()
{
for (i = 0; i < n; i++)
for (j = 0; j < n; j++)
for (k = 0; k < n; k++)
if (dist[i][k] + dist[k][j] < dist[i][j])
{
dist[i][j] = dist[i][k] + dist[k][j];
temp[i][j] = k;
}
for(i=0;i<n;i++)
{
printf("\n\nState value for router %d is \n",i+1);
for(j=0;j<n;j++)
printf("\t\nnode %d via %d Distance%d",j+1,temp[i][j]+1,dist[i][j]);
}
printf("\n\n");
}
output:-Enter the number of nodes : 4 Enter the distance matrix : 0 12 9 16 20 0 18 4 15 8 0 32 41 24 51 0 State value for router 1 is node 1 via 1 Distance0 node 2 via 2 Distance12 node 3 via 3 Distance9 node 4 via 4 Distance16 State value for router 2 is node 1 via 1 Distance20 node 2 via 2 Distance0 node 3 via 3 Distance18 node 4 via 4 Distance4 State value for router 3 is node 1 via 1 Distance15 node 2 via 2 Distance8 node 3 via 3 Distance0 node 4 via 2 Distance12 State value for router 4 is node 1 via 1 Distance41 node 2 via 2 Distance24 node 3 via 2 Distance42 node 4 via 4 Distance0 enter value of i &j: 1 3 enter the new cost 68 After update State value for router 1 is node 1 via 1 Distance0 node 2 via 2 Distance12 node 3 via 3 Distance9 node 4 via 4 Distance16 State value for router 2 is node 1 via 1 Distance20 node 2 via 2 Distance0 node 3 via 3 Distance18 node 4 via 3 Distance30 State value for router 3 is node 1 via 1 Distance15 node 2 via 2 Distance8 node 3 via 3 Distance0 node 4 via 2 Distance12 State value for router 4 is node 1 via 1 Distance41 node 2 via 2 Distance24 node 3 via 2 Distance42 node 4 via 4 Distance0 --------------------------------

0 comments: