先来先服务优先算法
离散数学实验
黄传奇 E01114313
一 输入一个集合, 并在其上定义几种运算, 编程判断是否为代数, 及其么元, 零元,, 并判断是否满足交换律, 结合律, 若元素有逆元,并给出。
#include
#include
main()
{
char a[10][10],b[10][2];
int flag,num,i,j,k,fengbi=0;
cout
cin>>num;
cout
for(i=1;i
{
cin>>a[0][i];
a[i][0]=a[0][i];
b[i][0]=a[0][i];
}
cout
cin>>flag;
if(flag==1||flag==3)
{
cout
cin>>b[0][0];
b[0][1]=' ';
cout
for(i=1;i
{
cout
cin>>b[i][1];
}
cout
for(i=0;i
{
for(j=0;j
{
printf("%5c",b[i][j]);
}
printf("\n");
}
}
if(flag==2||flag==3)
{
cout
cin>>a[0][0];
cout
for(i=1;i
{
for(j=1;j
{
coutcin>>a[i][j];
}
}
cout
for(i=0;i
{
for(j=0;j
{
printf("%5c",a[i][j]);
}
printf("\n");
}
}
if(flag==1||flag==3)
{
For(i=1;i
{
if(b[i][1]b[num][0])
{cout
性)!"
}
if(i=num+1) cout
件!"
}
if(flag==2||flag==3)
{
for(i=1;i
{
for(j=1;j
{
if(a[i][j]a[num][0])
{cout
}
}
if(i==num+1&&j==num+1) {cout
}
int lmark=0,rmark=0,lyao=0,lling=0,ryao=0,rling=0,yao=0;
if((flag==2||flag==3)&&fengbi==1)
{
for(i=1;i
{
lmark=0;
rmark=0;
lyao=0;
lling=0;
ryao=0;
rling=0;
for(j=1;j
{
if(a[i][j]==a[0][j]) lyao++;
if(a[i][j]==a[i][0]) lling++;
if(a[j][i]==a[j][0]) ryao++;
if(a[j][i]==a[0][i]) rling++;
}
if(lyao==num) {cout
"if(lling==num) {cout
"if(ryao==num) {cout
"if(rling==num) {cout
"if(lmark==1&&rmark==1) yao=a[i][0];
}
}
for(i=1;i
{
for(j=1;j
{
if(a[i][j]==yao) cout"}
}
int mark=0;
for(i=1;i
{
for(j=1;j
{
if(a[i][j]!=a[j][i]) mark=1;
}
}
if(mark=0) cout
int x,y1,y2,z=0;
for(i=1;i
{
for(j=i+1;j
{
for(k=j+1;k
{
for(x=1;x
{
if(a[x][0]==a[i][j]) y1=a[x][k];
}
for(x=1;x
{
if(a[0][x]==a[j][k]) y2=a[i][x];
}
if(y1==y2) z++;
if(y1!=y2) {cout
"
}
}
}
if(z==((num*(num-1)*(num-2))/6)) cout
"
return 0;
}
输入要求:载体元素可以是字母或者数字,输入时各个元素之间用空格或者回车键隔开,输入的元素必须是连续的字母或者数字(如a b c 、、、或者4 5 6、、、),运算符自行输入(输入时DOS 界面有提示及相关输入要求)
以下是测试结果: