实验一 真值计算

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验一真值计算

一、实验目的

熟悉联结词合取、析取、条件和双条件的概念,编程求其真值。

二、实验内容

从键盘输入两个命题P和Q的真值,求它们的合取、析取、条件和双条件的真值。用C语言实现。

三、实验报告要求

列出实验目的、实验内容、实验步骤、源程序和实验结果。

实验二关系闭包计算

一、实验目的

熟悉Warshall算法,掌握求关系的自反闭包、对称闭包和传递闭包的方法。二、二、实验内容

从键盘输入一个关系的关系矩阵,计算其自反闭包、对称闭包和传递闭包传递闭包要求使用两种算法,即R+和Warshall算法。用C语言实现。

二、实验报告要求

列出实验目的、实验内容、实验步骤、源程序和实验结果。

#include

int main()

{

int i,j,k,n;

static int str[122],zifan[122],chuandi[122],duich[122];

printf("Please input the jie:\n");

scanf("%d",&n);

printf("A=%d\n",n);

for(i=0;i

{

scanf("%d",&str[i]);

}

printf("The shu zu is:\n");

for(j=0;j

{

printf("%4d",str[j]);

if((j+1)%n==0)

printf("\n");

}

for(j=0;j

{

zifan[j]=str[j];

chuandi[j]=str[j];

duich[j]=str[j];

}

printf("The zifan bibao is:\n");

for(i=0;i

{

if(i%(n+1)==0)

zifan[i]=zifan[i]||1;

printf("%4d",zifan[i]);

if((i+1)%n==0)

printf("\n");

}

printf("The duich bibao is:\n");

for(i=0,j=0;i

{

if(i>j*(n+1)&&i<(j+1)*n)

{

duich[i]=duich[(i-j*(n+1))*(n-1)+i]||duich[i];

duich[(i-j*(n+1))*(n-1)+i]=duich[(i-j*(n+1))*(n-1)+i]||duich[i];

}

else if(i>=(j+1)*n)

j++;

}

for(i=0;i

{

printf("%4d",duich[i]);

if((i+1)%n==0)

printf("\n");

}

printf("The chuandi bibao is:\n");

for(i=0;i

for(j=0;j

if(chuandi[j*n+i])

{for(k=0;k

chuandi[j*n+k]=chuandi[j*n+k]||chuandi[i*n+k];

}

for(i=0;i

{

printf("%4d",chuandi[i]);

if((i+1)%n==0)

printf("\n");

}

return 0;

}

实验三计算两结点间长度为m的路的数目

一、实验目的

熟悉邻接矩阵和两结点间长度为m的路的数目的关系并编程计算。

二、实验内容

从键盘输入图的邻接矩阵和一正整数m,计算结点两两之间长度为m的路的数目。考虑有向图和无向图。用C语言实现。实现可达性矩阵。

三、实验报告要求

列出实验目的、实验内容、实验步骤、源程序和实验结果。

#include

class luchang

{

private:

int N;

int **p;

public:

luchang(int n);

~luchang();

int input();

luchang &operator =(luchang &A);

luchang &mul(luchang &A,luchang &B);

void disply();

int disply(int M);

};

luchang::luchang(int n)

{

N=n;

int i;

p=new int*[N];

for (i=0;i

p[i]=new int[N];

}

luchang::~luchang()

{

int i;

for (i=0;i

delete p[i];

delete p;

}

int luchang::input()

{

相关文档
最新文档