Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<iostream>
- using namespace std;
- void citire(int v[1001], int&n)
- {
- int i;
- cin>>n;
- for(i=1; i<=n; i++)
- {
- cin>>v[i];
- }
- }
- void scrie(int v[1001], int n)
- {
- int i;
- cout<<"{";
- for(i=1; i<n; i++)
- {
- cout<<v[i]<<", ";
- }
- cout<<v[n]<<"}";
- cout<<endl;
- }
- int apartine(int v[1001], int n, int E)
- {
- int i=1;
- while(i<=n && v[i]!=E)
- {
- i++;
- }
- if(i<=n)
- {
- return 1;
- }
- else
- {
- return 0;
- }
- }
- void intersectie(int A[], int na, int B[], int nb, int C[], int&nc)
- {
- int i;
- nc=0;
- for(i=1; i<=na; i++)
- {
- if(apartine(B, nb, A[i]))
- {
- nc++;
- C[nc]=A[i];
- }
- }
- }
- void diferenta(int A[], int na, int B[], int nb, int C[], int&nc)
- {
- int i;
- for(i=1; i<=na; i++)
- {
- if(!apartine(B, nb, A[i]))
- {
- nc++;
- C[nc]=A[i];
- }
- }
- }
- int meniu()
- {
- int opt;
- cout<<"Alegeti o optiune"<<'\n';
- cout<<"Citirea multimii A...1"<<'\n';
- cout<<"Citirea multimii B...2"<<'\n';
- cout<<"Citirea elementelor...3"<<'\n';
- cout<<"Afisarea multimii A...4"<<'\n';
- cout<<"Afisarea multimii B...5"<<'\n';
- cout<<"Apartenenta lui E la A...6"<<'\n';
- cout<<"Intersectie...7"<<'\n';
- cout<<"A-B...8"<<'\n';
- cout<<"B-A...9"<<'\n';
- cout<<"Reunire...10"<<'\n';
- cout<<"Produs cartezian...11"<<'\n';
- cout<<"Stop...0"<<'\n';
- cout<<"Introduceti optiunea"<<'\n';
- cin>>opt;
- return opt;
- }
- int main()
- {
- int opt, A[1001], B[1001], C[1001], na=0, nb=0, nc=0, E;
- do
- {
- opt=meniu();
- if(opt==1)
- {
- cout<<"Introduceti elemente multimii A"<<'\n';
- citire(A, na);
- }
- if(opt==2)
- {
- cout<<"Introduceti elementele multimii B"<<'\n';
- citire(B, nb);
- }
- if(opt==3)
- {
- cout<<"Introduceti elementul"<<'\n';
- cin>>E;
- }
- if(opt==4)
- {
- scrie(A, na);
- }
- if(opt==5)
- {
- scrie(B, nb);
- }
- if(opt==6)
- {
- if(apartine(A, na, E)!=0)
- {
- cout<<E<<" apartine multimii A"<<'\n';
- }
- else
- {
- cout<<E<<" nu apartine multimii A"<<'\n';
- }
- }
- if(opt==7)
- {
- intersectie(A, na, B, nb, C, nc);
- scrie(C, nc);
- }
- if(opt==8)
- {
- diferenta(A, na, B, nb, C, nc);
- scrie(C, nc);
- }
- if(opt==9)
- {
- diferenta(B, nb, A, na, C, nc);
- scrie(C, nc);
- }
- }
- while(opt!=0);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement