Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <fstream>
- /**
- Legyen adott egy város úthálózata, amelyben a tereket számokkal jelöljük. Ezt az utak.be állományból
- olvashatjuk be. Válaszolj a következô kérdésekre:
- 1. Add meg azokat a tér párokat, amelyek nincsenek úttal összekötve.
- 2. Add meg azokat a tereket, ahonnan bármelyik másik térre el tudunk jutni.
- 3. Add meg azokat a tereket, ahova sehonnan nem tudunk eljutni.
- */
- using namespace std;
- void feltolt(int a[][30],int &n,int &m)
- {
- ifstream f("utak.be.txt");
- f>>n>>m;
- int x,y;
- for(int i=1; i<=n; i++)
- {
- for (int j=1; j<=m; j++)
- {
- f>>x>>y;
- a[x][y]=1;
- }
- }
- f.close();
- }
- void utmatrix(int a[][30],int n)
- {
- for(int k=1; k<=n; k++)
- for(int i=1; i<=n; i++)
- for(int j=1; j<=n; j++)
- if(a[i][j]==0) a[i][j]=a[i][k]*a[k][j];
- }
- void kiir(int a[][30],int n)
- {
- for(int i=1;i<=n;i++)
- {
- for(int j=1;j<=n;j++)
- cout<<a[i][j]<<" ";
- cout<<endl;
- }
- }
- int main()
- {
- int a[30][30]={0},n,m;
- feltolt(a,n,m);
- kiir(a,n);
- cout<<endl;
- utmatrix(a,n);
- kiir(a,n);
- cout<<"Azok a terek, amelyek nincsenek uttal osszekotve:"<<endl;
- for(int i=1; i<=n; i++)
- {
- for(int j=1; j<=n; j++)
- if(a[i][j]==0 && i!=j) cout<<i<<" "<<j<<endl;
- }
- cout<<"Azok a terek, ahonnan barmelyik masik terre el lehet jutni:"<<endl;
- for(int i=1; i<=n; i++)
- {
- int k=1;
- for(int j=1; j<=n; j++)
- if(a[i][j]==0 && i!=j) k=0;
- if(k==1) cout<<i<<",";
- }
- cout<<endl;
- cout<<"Azok a terek, ahova sehonnan nem lehet eljutni:"<<endl;
- for(int i=1; i<=n; i++)
- {
- int z=1;
- for(int j=1; j<=n; j++)
- if(a[j][i]==1) z=0;
- if(z==1) cout<<i<<",";
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement