<<离散数学上机实验>>集合上机实验

这篇博客探讨了离散数学的上机实验,重点是逻辑运算的真值计算,包括逻辑与(合取)、逻辑或(析取)、逻辑非、蕴含和双条件。通过C语言实现,实验还涉及集合的交、并、差和补运算,讨论了不同表示集合的方法,如无序表示和1、0表示法,并阐述了如何高效地进行集合的组合计算。
摘要由CSDN通过智能技术生成

一:真值计算
主要考虑计算机如何表示逻辑演绎,且,或,非,蕴含,双条件。
从键盘输入两个命题P和Q的真值,求它们的合取、析取、条件和双条件的真值。用C语言实现。
二:集合的运算
集合的交,并,差,补,通过for,for双循环,类似命题:任意的x任意的y,都成立的一个表达式(x+y=y+x).每个x,都把所有y遍历一次。

一,用无序的办法表示集合,有非常多的检索。

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<math.h>

//int creatjh(int *a[]);
 void Both(int a[], int i, int b[], int j,int *c);
int Isin(int a,int b[],int n);
int IN(int a[],int i, int b[],int j,int *c);
void All(int a[], int i, int b[], int j, int *c);
void equal(int a[], int i, int ib[], int j);
int cdseris(int a[], int i, int b[], int j);
int main()
{
    int jh1[10] = { 2,5,3,7,5 };
    int jh2[10] = { 5,3,9,7,6 };
    int jh3[10] = { 5,3,3,8,1,4};
    int jh4[10] = { 5,3,3,6,6,4 }; 
    int both[100] = { 0 };
    int both2[100] = { 0 };
    int both3[100] = { 0 };
    int all1[20] = { 0 };
    int all2[30] = { 0 };
    int all3[40] = { 0 };
    int e = 9;
    int n1 = 10;
    int n2=10,n3 = 10,n4=10;
    int n5 = 20;
    Isin(e, jh2, n2);
    printf("\n");
    All(jh1, n1, jh2, n2, all1);
    printf("\n");
    All(all1,n5, jh3,n3, all2);
    printf("\n");
    int cd=cdseris(jh4, n4, jh1, n1);
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值