Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- */
- Asta se citeste cu matricae de adiacenta care arata asa da vezi ca la ciclu nu promit ca e bine.
- 5
- 0 1 1 1 0
- 1 0 1 0 1
- 1 1 0 0 0
- 1 0 0 0 0
- 0 1 0 0 0
- /*
- #include <iostream>
- #include <fstream>
- using namespace std;
- ifstream f("graf.txt");
- int n,i,j,a[100][100],s[100],lant[100];
- void citire()
- {
- f>>n;
- for(i=1;i<=n;i++)
- for(j=1;j<=n;j++)
- f>>a[i][j];
- }
- void afisare()
- {
- for(i=1;i<=n;i++)
- {for(j=1;j<=n;j++)
- cout<<a[i][j]<<" ";
- cout<<endl;
- }
- }
- void grad()
- {
- for(i=1;i<=n;i++)
- for(j=1;j<=n;j++)
- s[i]=a[i][j]+s[i];
- cout<<" Gradele nodurilor grafului:"<<endl;
- for(i=1;i<=n;i++)
- cout<<" Nodul"<<i<<" are gradul "<<s[i]<<endl;
- }
- void elant()
- {int ok=1;
- if(n<2)
- {
- for(i=1;i<n;i++)
- if(a[lant[i]][lant[i+1]]==0)
- ok=0;
- }
- if(ok==1)
- cout<<"exista lant"<<endl;
- else
- cout<<"nu exista lant"<<endl;
- }
- void ciclu()
- {int ok=0;
- if(n<3)
- cout<<"Nu poate fi ciclu mai mic decat 3"<<endl;
- else
- {for(i=1;i<=n-1;i++)//verifica daca doua noduri consecutive
- {
- if(a[lant[i]][lant[i+1]]==0)//sunt adiacente
- a[lant[i]][lant[i+1]]=0;
- a[lant[i+1]][lant[i]]=0;
- }
- if(lant[1]==lant[n])//verifica daca este ciclu, prmil nod coincide
- ok=1;//cu ultimul
- }
- if(ok==1)
- cout<<"Este ciclu"<<endl;
- else
- cout<<"Nu este ciclu"<<endl;
- }
- int main()
- {
- citire();
- afisare();
- grad();
- elant();
- ciclu();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement