0% found this document useful (0 votes)
7 views5 pages

Tema Grafuri

The document contains multiple C++ programs that deal with graph representation and manipulation using adjacency matrices. Key functionalities include reading graph data, calculating degrees of vertices, checking for partial graphs, and outputting results to files. The programs utilize structures and functions to manage graph data and perform operations such as degree calculation and adjacency checks.

Uploaded by

Andrei Haiduc
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views5 pages

Tema Grafuri

The document contains multiple C++ programs that deal with graph representation and manipulation using adjacency matrices. Key functionalities include reading graph data, calculating degrees of vertices, checking for partial graphs, and outputting results to files. The programs utilize structures and functions to manage graph data and perform operations such as degree calculation and adjacency checks.

Uploaded by

Andrei Haiduc
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 5

1)

#include <iostream>
using namespace std;
int n4,n5,a4[101][101],m4,m5,x,y,a5[101][101];
int main()
{
cin>>n4>>m4;
cout<<endl;
for(int i=1;i<=m4;i++)
{
cin>>x>>y;
a4[x][y]=a4[y][x]=1;
}
cout<<endl;
for(int i=1;i<=n4;i++)
{
for(int j=1;j<=n4;j++)
cout<<a4[i][j]<<' ';
cout<<endl;
}
cout<<endl;
cin>>n5>>m5;
cout<<endl;
for(int i=1;i<=m5;i++)
{
cin>>x>>y;
a5[x][y]=a5[y][x]=1;
}
for(int i=1;i<=n5;i++)
{
for(int j=1;j<=n5;j++)
cout<<a5[i][j]<<' ';
cout<<endl;
}
cout<<endl;
for(int i=1;i<n4;i++)
{
for(int j=i+1;j<=n4;j++)
if(a4[i][j]==1)
cout<<j<<' ';
cout<<endl;
}
cout<<endl;
for(int i=1;i<n5;i++)
{
for(int j=i+1;j<=n5;j++)
if(a5[i][j]==1)
cout<<j<<' ';
cout<<endl;
}

return 0;
}

2)
#include <iostream>
#include <fstream>
using namespace std;
ofstream fout("muchii.txt");
int n,x,y,a[101][101];
int main()
{
cin>>n;
for(int i=1;i<=n;i++)
for(int j=1;j<=n;j++)
cin>>a[i][j];
for(int i=1;i<n;i++)
{
for(int j=i+1;j<=n;j++)
if(a[i][j]==1)
fout<<i<<' '<<j<<endl;
}
return 0;
}

3)
#include <iostream>
using namespace std;
int n,m,x,y,A[101][101],a,b,c;
int grad(int x)
{
int suma=0;
for(int j=1;j<=n;j++)
suma=suma+A[x][j];
return suma;
}
int main()
{
cin>>n>>m;
for(int i=1;i<=m;i++)
{
cin>>x>>y;
A[x][y]=A[y][x]=1;
}
cin>>a>>b>>c;
cout<<min(grad(a),min(grad(b),grad(c)));

return 0;
}

4)
#include <iostream>
using namespace std;
int n,m,x,y,A[101][101],p;
int grad(int x)
{
int suma=0;
for(int j=1;j<=n;j++)
suma=suma+A[x][j];
return suma;
}
int main()
{
cin>>n;
for(int i=1;i<=n;i++)
for(int j=1;j<=n;j++)
cin>>A[i][j];
cin>>p;
for(int i=1;i<=n;i++)
{
if(grad(i)==p)
cout<<i<<' ';
}
return 0;
}

5)
#include <iostream>
#include <fstream>
using namespace std;
ofstream fout("graf.txt");
int n,m,x,y,A[101][101],p;
int grad(int x)
{
int suma=0;
for(int j=1;j<=n;j++)
suma=suma+A[x][j];
return suma;
}
int main()
{
cin>>m>>n;
for(int i=1;i<=m;i++)
{
cin>>x>>y;
A[x][y]=A[y][x]=1;
}
for(int i=1;i<=n;i++)
{
fout<<i<<' '<<grad(i)<<endl;
}
return 0;
}

6) tema vineri
#include <iostream>
using namespace std;
struct muchie{
int x,y,c;
}v[1001];
int n,m,a[101][101],suma;
int main()
{
cin>>n>>m;
for(int i=1;i<=n;i++)
{
cin>>v[i].x>>v[i].y>>v[i].c;
suma=suma+v[i].c;
a[v[i].x][v[i].y]=a[v[i].y][v[i].x]=1;
}
for(int i=1;i<=n;i++)
{
for(int j=1;j<=n;j++)
cout<<a[i][j]<<' ';
cout<<endl;
}
cout<<endl<<(float)suma/n;

return 0;
}

7) matrice partiala

#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("graf.txt");
int n,a[101][101],a1[101][101],x,y,ok=1;
int main()
{
cin>>n;
for(int i=1;i<=n;i++)
{
for(int j=1;j<=n;j++)
cin>>a[i][j];
}
for(int i=1;i<=n;i++)
{
for(int j=1;j<=n;j++)
fin>>a1[i][j];
}
for(int i=1;i<=n&&ok==1;i++)
{
for(int j=1;j<=n&&ok==1;j++)
if(a1[i][j]==0&&a[i][j]==1)
ok=0;
}
if(ok==1)
cout<<"este partial";
else
cout<<"nu este partial";

return 0;
}

You might also like