Beruflich Dokumente
Kultur Dokumente
PROYEK ROMANIA
#include<stdio.h>
#include<conio.h>
int bobot[20][20],child[20],visited[20],opened[20],closed[20],jumkota,i,j,f=0,r=-
1,c=0;
char kota[20][20];
char kotacari[20];
void bfs(int v,int y)
{
int i,j;
printf("\n\nX = %s",kota[v]);
printf("\nOpen :");
for(i=f;i<=r;i++)
printf("%s ",kota[child[i]]);
for(i=0;i<jumkota;i++)
if(bobot[v][i] && !visited[i] && !opened[i])
{
child[++r]=i;
opened[i]=1;
}
if (v==y)
printf("\n\n SOLUTION FOUND !");
else
{
printf("\nChildren :");
for(i=0;i<jumkota;i++)
if (bobot[v][i])
printf("%s ",kota[i]);
printf("\nClosed :");
closed[c++]=v;
for(i=0;i<c;i++)
printf("%s ",kota[closed[i]]);
if (f<=r)
{
visited[child[f]]=1;
bfs(child[f++],y);
}
}
}
void main()
{
int v,y;
char temp1[20], temp2[20];
jumkota=20;
printf("\n THE ROMANIA PROJECT\n\n");
strcpy(kota[0],"Arad");
strcpy(kota[1],"Zerind");
strcpy(kota[2],"Sibiu");
strcpy(kota[3],"Timisoara");
strcpy(kota[4],"Oradea");
strcpy(kota[5],"Lugoj");
strcpy(kota[6],"Fagaras");
strcpy(kota[7],"RimniciuVilcea");
strcpy(kota[8],"Pitesti");
strcpy(kota[9],"Craiova");
strcpy(kota[10],"Mehadia");
strcpy(kota[11],"Drobeta");
strcpy(kota[12],"Bucharest");
strcpy(kota[13],"Giurgiu");
strcpy(kota[14],"Urziceni");
strcpy(kota[15],"Hirsova");
strcpy(kota[16],"Eforie");
strcpy(kota[17],"Vaslui");
strcpy(kota[18],"Lasi");
strcpy(kota[19],"Neamt");
for(i=0;i<jumkota;i++)
{
child[i]=0;
visited[i]=0;
closed[i]=0;
opened[i]=0;
for(j=0;j<jumkota;j++)
{
bobot[i][j]=0;
}
}
for(i=0;i<jumkota;i++)
{
printf("%s -> ",kota[i]);
for(j=0;j<jumkota;j++)
if (bobot[i][j])
printf("%s (%d) ",kota[j],bobot[i][j]);
printf("\n");
}
visited[v]=1;
bfs(v,y);
getch();
}