离散数学集合运算代码
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
u.c[k]=u.a[i];
k++;
}
for(int j=0;j<B;j++){
for(int m=0;m<A;){
if(u.a[m]!=u.b[j])m++;
elsebreak;
if(m==A){
u.c[k]=u.b[j];
k++;
}
}
}show(u,k);
}
void jiao(jihe u,int A,int B){
int k=0;
cout<<"两集合的交集为:";
for(int i=0;i<A;i++){
for(int j=0;j<B;j++){
if(u.a[i]==u.b[j]) {
u.c[k]=u.a[i];
k++;
}
}
}show(u,k);
}
void cha(jihe u,int A,int B){
int k=0;
cout<<" 2.交运算"<<endl;
cout<<" 3.差运算"<<endl;
cout<<" 4.笛卡尔积"<<endl;
for(;;){
cout<<"请输入您要的选择:";
cin>>e;
switch(e){
case 1:bing(u,u.p,u.q);break;
case 2:jiao(u,u.p,u.q);break;
}
cout<<"请输入B集合的元素个数:";
cin>>u.q;
cout<<"其元素为:"<<endl;
for(int j=0;j<u.q;j++){
cout<<"b["<<j+1<<"]=";
cin>>u.b[j];
}
cout<<"◎◎◎⊙⊙集合运算⊙⊙◎◎◎"<<endl;
cout<<" 1.并运算"<<endl;
#include<iostream.h>
#include<string.h>
# N 100
struct jihe{
char a[N];
char b[N];
char c[N*2];
int p;
int q;
};
void show(jihe u,int k)
{
if(k==0)cout<<"{Φ}"<<endl;
}
}cout<<"}"<<endl;
}
int main(){
jihe u;
int p,q,e;
cout<<"请输入A集合的元素个数:";
cin>>u.p;
cout<<"其元素为:"<<endl;
for(int i=0;i<u.p;i++){
cout<<"a["<<i+1<<"]=";
cin>>u.a[i];
cout<<"两集合的笛卡尔积为:";
cout<<"{";
for(int i=0;i<A;i++){
for(int j=0;j<B;j++){
cout<<"<"<<u.a[i]<<",";
cout<<u.b[j]<<">";
if(i==A-1&&j==B-1)cout<<"";
else cout<<" ";
cout<<"两集合的差集为:";
for(int i=0;i<A;i++){
for(int j=0;j<=B;j++){
if(u.a[i]==u.b[j]) break;
else if(u.a[i]!=u.b[j]&&j==B){
u.c[k]=u.a[i];
k++;
}
}
}show(u,k);
}
void dikaer(jihe u,int A,int B){
else{
cout<<"{";
for(int i=0;i<k-1;i++){
cout<<u.c[i]<<",";
}
cout<<u.c[i];
cout<<"}"<<endl;
}
}
void bing(jihe u,int A,int B){
int k=0;
cout<<"两集合的并集为:";
for(int i=0;i<A;i++){
case 3:cha(u,u.p,u.q);break;
case 4:dikaer(u,u.p,u.q);break;
case 0:return 0;
default:cout<<"不存在您要的选项!!"<<endl<<endl;
}
}
}
k++;
}
for(int j=0;j<B;j++){
for(int m=0;m<A;){
if(u.a[m]!=u.b[j])m++;
elsebreak;
if(m==A){
u.c[k]=u.b[j];
k++;
}
}
}show(u,k);
}
void jiao(jihe u,int A,int B){
int k=0;
cout<<"两集合的交集为:";
for(int i=0;i<A;i++){
for(int j=0;j<B;j++){
if(u.a[i]==u.b[j]) {
u.c[k]=u.a[i];
k++;
}
}
}show(u,k);
}
void cha(jihe u,int A,int B){
int k=0;
cout<<" 2.交运算"<<endl;
cout<<" 3.差运算"<<endl;
cout<<" 4.笛卡尔积"<<endl;
for(;;){
cout<<"请输入您要的选择:";
cin>>e;
switch(e){
case 1:bing(u,u.p,u.q);break;
case 2:jiao(u,u.p,u.q);break;
}
cout<<"请输入B集合的元素个数:";
cin>>u.q;
cout<<"其元素为:"<<endl;
for(int j=0;j<u.q;j++){
cout<<"b["<<j+1<<"]=";
cin>>u.b[j];
}
cout<<"◎◎◎⊙⊙集合运算⊙⊙◎◎◎"<<endl;
cout<<" 1.并运算"<<endl;
#include<iostream.h>
#include<string.h>
# N 100
struct jihe{
char a[N];
char b[N];
char c[N*2];
int p;
int q;
};
void show(jihe u,int k)
{
if(k==0)cout<<"{Φ}"<<endl;
}
}cout<<"}"<<endl;
}
int main(){
jihe u;
int p,q,e;
cout<<"请输入A集合的元素个数:";
cin>>u.p;
cout<<"其元素为:"<<endl;
for(int i=0;i<u.p;i++){
cout<<"a["<<i+1<<"]=";
cin>>u.a[i];
cout<<"两集合的笛卡尔积为:";
cout<<"{";
for(int i=0;i<A;i++){
for(int j=0;j<B;j++){
cout<<"<"<<u.a[i]<<",";
cout<<u.b[j]<<">";
if(i==A-1&&j==B-1)cout<<"";
else cout<<" ";
cout<<"两集合的差集为:";
for(int i=0;i<A;i++){
for(int j=0;j<=B;j++){
if(u.a[i]==u.b[j]) break;
else if(u.a[i]!=u.b[j]&&j==B){
u.c[k]=u.a[i];
k++;
}
}
}show(u,k);
}
void dikaer(jihe u,int A,int B){
else{
cout<<"{";
for(int i=0;i<k-1;i++){
cout<<u.c[i]<<",";
}
cout<<u.c[i];
cout<<"}"<<endl;
}
}
void bing(jihe u,int A,int B){
int k=0;
cout<<"两集合的并集为:";
for(int i=0;i<A;i++){
case 3:cha(u,u.p,u.q);break;
case 4:dikaer(u,u.p,u.q);break;
case 0:return 0;
default:cout<<"不存在您要的选项!!"<<endl<<endl;
}
}
}