Cod sursa(job #931562)

Utilizator Gabriela19091993Busca Gabriela Gabriela19091993 Data 28 martie 2013 12:38:45
Problema Floyd-Warshall/Roy-Floyd Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.95 kb
#include<iostream.h>
#include<fstream.h>
#include<stdio.h>
int main()
{int d[100][100], q[100], v[100], f[100],q0,n,i,m,p,x,qn,ok=0,j;
char c[100];
cout<<"nr de stari este "; 
cin>>n;
cout<<"\ndati starile ";
for(i=1;i<=n;i++) cin>>q[i];
cout<<"nr de simboluri este\n";
cin>>m;
cout<<"\ndati simbolurile";
for(i=1;i<=m;i++) cin>>v[i];
cout<<"\nstarea initiala este:";
cin>>q0;
cout<<"nr de stari finale este";
cin>>p;
cout<<"dati starile finale:";
for(i=1;i<=p;i++) cin>>f[i];
cout<<"Dati functiile de tranzitie :";
for(i=1;i<=n;i++)
   for(j=1;j<=m;j++) 
      cin>>d[i][j];
cout<<"Dati cuvantul";
gets(c);
qn=q0;
i=0;
x=c[i]-'0';
while(i<strlen(c) && d[qn][x]!=-1)
  { qn=d[qn][x];
    i++;
    x=c[i]-'0';
}
if(d[qn][x]==-1) cout<<"cuvant neacceptat";
else for(i=1;i<=p;i++)
         if(d[qn][x]==p) {ok=1; 
                         cout<<"cuvant acceptat";}
if(ok==0) cout<<"cuvant inexistent";
system("PAUSE");;
return 0;}