C++下行法实现故障树

C++下行法实现故障树

ID:38699161

大小:18.30 KB

页数:15页

时间:2019-06-17

C++下行法实现故障树_第1页
C++下行法实现故障树_第2页
C++下行法实现故障树_第3页
C++下行法实现故障树_第4页
C++下行法实现故障树_第5页
资源描述:

《C++下行法实现故障树》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、#include#include#includeusingnamespacestd;typedefstructCTBox{inttype;//0-与;1-或;2-叶子节点;3-根节点intchild;stringdata;CTBox*Next;//孩子链表头指针}CTBox,*pCTBox;typedefstruct{CTBoxnodes[100];intn,r;//结点数,叶子节点数}Tree;boolequal(char*test,char*temp);//函数原型boolnoleaf(Treefta,intpos);//识

2、别非叶子节点intfindFTA(Treefta,char*temp);//匹配字符对应节点在向量中的序号intfindFTAstr(Treefta,stringstr);//匹配str对应节点的向量序号intfindRoot(Treefta,stringtable[100][100],intj);//寻找第一个非叶子节点,-2-没有,-1-空表,0,1,2-有intMoveRootStr(Treefta,stringtable[100][100],inti,intj);//把分支节点移到开头intCountFlag(stringtable[100][100],inti,intj

3、);//计算*个数voidOutPut(stringtable[100][100],intj);//输出割集boolIfHasRoot(Treefta,stringtable[100][100],inti,intj);voidmain(){cout<<"************************************************";cout<<"

4、故障树程序

5、";cout<<"

6、王涛201105017009

7、";cout<<"

8、下行法求最小割集

9、";cout<<"*****************************************

10、*******";inti=0,j=0,k=0,l=0,count=0;//循环变量Treefta;cout<<"inputthenumberofnodes(n)andleaves(r):[n-r=numberofstatements]";cin>>fta.n>>fta.r;//输入节点数cout<<"inputthestatements:";charinput[100];chartemp[50];introot=0;//建树到哪了for(i=0;i>input;intlen=0;//计算input的长度f

11、or(len=0;;len++)if(input[len]=='')break;inttemk;for(k=0;input[k]!='=';k++){temp[k]=input[k];}temp[k]='';if(count==0)//第一句付给根{fta.nodes[0].data.assign(temp);count++;}root=findFTA(fta,temp);//给哪个节点连接子节点for(l=0;l

12、nodes[root].type=1;break;}}intsum=0;CTBox*temchild,*pre;pre=&(fta.nodes[root]);while(input[k]!=''){k++;//g1='g'2+g3temk=k;for(k=k;input[k]!='+'&&input[k]!='*'&&input[k]!='';k++){temp[k-temk]=input[k];sum++;}temp[k-temk]='';fta.nodes[count].data.assign(temp);count++;//指向向量的游标,beginwith0t

13、emchild=newCTBox;//不能直接CTBoxtemchild否则它只新建temchild一次temchild->child=count-1;temchild->Next=NULL;if(sum==1){pre->Next=temchild;pre=temchild;}else{pre->Next=temchild;pre=temchild;}}}//endof建立故障树for(j=0;j

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。