91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

資源簡介

用C語言實現離散數學中的任意合式公式的真值表

資源截圖

代碼片段和文件信息

/*
???&???表示合取??
???|???表示析取?
???%???表示條件?
???*??表示雙條件?
???!??表示否定?
*/

#include
#include
#include
#include
#include
#define?MaxSize?50
#define??object??10?
typedef?struct?//儲存變量帶值?
{
char?ch[object]?;
bool?value[object]?;
}Val?;

bool?Judge(char*Arrayint?beginint?end)//判斷公式是否為合式公式?
{????????int?sign=0L=4;
?????????int?m;
?????for(m=begin;m<=end;m++)
???????{??if(Array[m]==‘(‘)
???????????{
?sign++;
????????????if(sign==2)
????????????????{??if(Array[m-1]==‘&‘)//(Q*(P*Q))?
?????????????????????{??L=3;
???????????????????????break;
?????????????????????}
?????????????????????if(Array[m-1]==‘|‘)//(Q*(P*Q))?
?????????????????????{??L=3;
???????????????????????break;
?????????????????????}
?????????????????????if(Array[m-1]==‘%‘)//(Q*(P*Q))?
?????????????????????{??L=3;
???????????????????????break;
?????????????????????}
?????????????????????if(Array[m-1]==‘*‘)//(Q*(P*Q))?
?????????????????????{??L=3;
???????????????????????break;
?????????????????????}
????????????????}?
????????????}
??????????if(Array[m]==‘)‘)
???????????{?sign--;
?????????????if(sign==1)
???????????????{?if(Array[m+1]==‘!‘)//(!(P*Q))
???????????????????{?L=1;
?????????????????????break;
???????????????????}
??????????????????if(Array[m+1]==‘*‘)//((P*Q)*Q)?((Q*P)*(S*R))??
???????????????????{?L=2;
?????????????????????break;
???????????????????}
???????????????????if(Array[m+1]==‘%‘)//((P*Q)*Q)?((Q*P)*(S*R))??
???????????????????{?L=2;
?????????????????????break;
???????????????????}
???????????????????if(Array[m+1]==‘&‘)//((P*Q)*Q)?((Q*P)*(S*R))??
???????????????????{?L=2;
?????????????????????break;
???????????????????}
???????????????????if(Array[m+1]==‘|‘)//((P*Q)*Q)?((Q*P)*(S*R))??
???????????????????{?L=2;
?????????????????????break;
???????????????????}
???????????????}??????????????
??????????????if(sign==0)
????????????????{?L=4;
??????????????????break;
????????????????}?
???????????}?
???????}

????switch(L)
????{???case?1:?Judge(Arraym+2end-1);break;//(P*Q)
????????case?2:?Judge(Arraybegin+1m);//(Q*P)
????????????????Judge(Arraym+2end-1);//(S*R)
????????????????break;
????????case?3:?Judge(Arraybegin+1m-2);//Q
????????????????Judge(Arraymend-1);break;//(Q*P)
????????????????/*?(P*Q)??P??(!P)*/?
????????case?4:?if((Array[begin]>=64&&Array[begin]<=90)&&(Array[begin+1]==‘\0‘||Array[begin+1]==‘)‘||Array[begin+1]==‘*‘||Array[begin+1]==‘%‘||Array[begin+1]==‘&‘||Array[begin+1]==‘|‘))
??????????? {return?true;?break;}?//P?
????????????????if((Array[begin+2]==‘*‘||Array[begin+2]==‘%‘||Array[begin+2]==‘&‘||Array[begin+2]==‘|‘)&&(Array[begin+1]>=64&&Array[begin+1]<=90)&&(Array[m-1]>=64&&Array[m-1]<=90)&&(end-begin)<=5)
????????????????{return?true;break;}?//(P*Q)
????????????????if(Array[begin+1]==‘!‘&&(Array[m-1]>=64&&Array[m-1]<=90))
????????????????{return?true;break;}?//(!P)????????????????
???????default:???return?fals

評論

共有 條評論