⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 仿真.cpp

📁 仿真ic测试的程序
💻 CPP
字号:
#include "stdlib.h"
#include "stdio.h"
#include"iostream.h"
#include <string.h>
#include "time.h"
bool random()        //产生随机数0和1;
{ bool x;
  x=rand()%2;
  return x;
}
void main( void )
{
  bool p1,p2,p3,p4,p5,p6,p7,p8,p9,p10,p11,p12,p13,p14,p15,p16,p17,p151,p161,p171;
  char flag[5],f[2];
for(int i=1;;i++){
  cout<<"输入故障点(p1-p17)和故障类型(固定为0或1),如设p10的故障为s-a-0,则输入10s0:"<<endl;
  cin>>flag;
  for(int j=1;;j++){
  srand( (unsigned)time( NULL ) );/*将当前时间设置成随机函数的种子,使每次产生的随机数不同*/
    p1=random();
	p2=random();
	p3=random();
	p4=random();
	p5=random();

	p6=!(p1||p2);    //无故障电路输出端的值
	p7=!p3;
	p8=!(p4||p5);
	p15=p6&&p7;
	p16=p6-p8;
	p17=p7&&p8;
  cout<<endl<<"当前随机向量为:";
  cout<<p1<<'\t'<<p2<<'\t'<<p3<<'\t'<<p4<<'\t'<<p5<<endl;
  
  if(!strcmp(flag,"1s0"))   //若p1的故障为固定为0
	  p1=0;
  if(!strcmp(flag,"1s1"))   //若p1的故障为固定为0
	  p1=1;
  if(!strcmp(flag,"2s0"))
	  p2=0;
  if(!strcmp(flag,"2s1"))
	  p2=1;
  p6=!(p1||p2);
  if(!strcmp(flag,"3s0"))
	  p3=0;
  if(!strcmp(flag,"3s1"))
	  p3=1;
  p7=!p3;
  if(!strcmp(flag,"4s0"))
	  p4=0;
  if(!strcmp(flag,"4s1"))
	  p4=1;
  if(!strcmp(flag,"5s0"))
	  p5=0;
  if(!strcmp(flag,"5s1"))
	  p5=1;
  p8=!(p4||p5);
  if(!strcmp(flag,"6s0"))
	  p6=0;
  if(!strcmp(flag,"6s1"))
	  p6=1;
  p9=p6;
  p11=p6;
  if(!strcmp(flag,"7s0"))
	  p7=0;
  if(!strcmp(flag,"7s1"))
	  p7=1;
  p10=p7;
  p13=p7;
  if(!strcmp(flag,"8s0"))
	  p8=0;
  if(!strcmp(flag,"8s1"))
	  p8=1;
  p12=p8;
  p14=p8;
  if(!strcmp(flag,"9s0"))
	  p9=0;
  if(!strcmp(flag,"9s1"))
	  p9=1;
  if(!strcmp(flag,"10s0"))
	  p10=0;
  if(!strcmp(flag,"10s1"))
	  p10=1;
  p151=p9&&p10;
  if(!strcmp(flag,"11s0"))
	  p11=0;
  if(!strcmp(flag,"11s1"))
	  p11=1;
  if(!strcmp(flag,"12s0"))
	  p12=0;
  if(!strcmp(flag,"12s1"))
	  p12=1;
  p161=p11-p12;
  if(!strcmp(flag,"13s0"))
	  p13=0;
  if(!strcmp(flag,"13s1"))
	  p13=1;
  if(!strcmp(flag,"14s0"))
	  p14=0;
  if(!strcmp(flag,"14s1"))
	  p14=1;
  p171=p13&&p14;
  if(!strcmp(flag,"15s0"))
	  p151=0;
  if(!strcmp(flag,"15s1"))
	  p151=1;
  if(!strcmp(flag,"16s0"))
	  p161=0;
  if(!strcmp(flag,"16s1"))
	  p161=0;
  if(!strcmp(flag,"17s0"))
	  p171=0;
  if(!strcmp(flag,"173s1"))
	  p171=1;
  cout<<"无故障时输出为:";
  cout<<p15<<'\t'<<p16<<'\t'<<p17<<endl;
  cout<<"故障测试输出为:";
  cout<<p151<<'\t'<<p161<<'\t'<<p171<<'\t';
  if(p15==p151&&p16==p161&&p17==p171)
	  cout<<"Fault test Faild!";
	  else
	  cout<<"Fault test Succeed!";
   cout<<endl<<endl<<"按任意键+enter键继续产生随机向量测试, 按y+enter键重新设置故障点"<<endl<<endl;
     cin>>f;
    if(!strcmp(f,"y"))
	   break;

    }      
 }
} 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -