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

📄 fuzzypid.cpp

📁 利用VC++,实现模糊控制中的解模糊,包括模糊化,解模糊全部的程序代码,值得一看.
💻 CPP
📖 第 1 页 / 共 2 页
字号:
#include"iostream.h"
#include"iomanip.h"
void main()
{
	double e1[14]={0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.1,0.4,0.8,1.0};
	double e2[14]={0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.7,1.0,0.7,0.2};
	double e3[14]={0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.3,0.8,1.0,0.5,0.1,0.0,0.0};
	double e4[14]={0.0,0.0,0.0,0.0,0.0,0.0,0.0,1.0,0.6,0.1,0.0,0.0,0.0,0.0};
	double e5[14]={0.0,0.0,0.0,0.0,0.1,0.6,1.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0};
	double e6[14]={0.0,0.0,0.1,0.5,1.0,0.8,0.3,0.0,0.0,0.0,0.0,0.0,0.0,0.0};
	double e7[14]={0.2,0.7,1.0,0.7,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0};
	double e8[14]={1.0,0.8,0.4,0.1,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0};
	double e9[14]={1.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0};


	double ec1[13]={0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.1,0.4,0.8,1.0};
	double ec2[13]={0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.7,1.0,0.7,0.2};
	double ec3[13]={0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.7,1.0,0.7,0.2,0.0,0.0};
	double ec4[13]={0.0,0.0,0.0,0.0,0.0,0.5,1.0,0.5,0.0,0.0,0.0,0.0,0.0};
	double ec5[13]={0.0,0.0,0.2,0.7,1.0,0.9,0.0,0.0,0.0,0.0,0.0,0.0,0.0};
	double ec6[13]={0.2,0.7,1.0,0.7,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0};
	double ec7[13]={1.0,0.8,0.4,0.1,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0};
	double ec8[13]={1.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0};

	double u1[15]={0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.1,0.4,0.8,1.0};
	double u2[15]={0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.7,1.0,0.7,0.2,0.0};
	double u3[15]={0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.4,1.0,0.8,0.4,0.1,0.0,0.0,0.0};
	double u4[15]={0.0,0.0,0.0,0.0,0.0,0.0,0.5,1.0,0.5,0.0,0.0,0.0,0.0,0.0,0.0};
	double u5[15]={0.0,0.0,0.0,0.1,0.4,0.8,1.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0};
	double u6[15]={0.0,0.2,0.7,1.0,0.7,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0};
	double u7[15]={1.0,0.8,0.4,0.1,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0};
	double u8[15]={1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0};
	double r1[14][13],ul[15]={0};
	double sum=0,sumf=0;
	static double rr[56][14][13][15];
//	double rr2[14][13][15];
	int i,j,k,m,n=0;
	for(i=0;i<14;i++)
		for(j=0;j<13;j++)
		{
			if(e1[i]>ec1[j])
				r1[i][j]=ec1[j];
			else
				r1[i][j]=e1[i];
			for(k=0;k<15;k++)
			{
				if(r1[i][j]>u7[k])
					rr[n][i][j][k]=u7[k];
				else
					rr[n][i][j][k]=r1[i][j];
			}
		}
		n++;
		for(i=0;i<14;i++)
		for(j=0;j<13;j++)
		{
			if(e1[i]>ec2[j])
				r1[i][j]=ec2[j];
			else
				r1[i][j]=e1[i];
			for(k=0;k<15;k++)
			{
				if(r1[i][j]>u7[k])
					rr[n][i][j][k]=u7[k];
				else
					rr[n][i][j][k]=r1[i][j];
				if(rr[n][i][j][k]<rr[n-1][i][j][k])
					rr[n][i][j][k]=rr[n-1][i][j][k];

					
			}
	

		}
		n++;
		for(i=0;i<14;i++)
		for(j=0;j<13;j++)
		{
			if(e1[i]>ec3[j])
				r1[i][j]=ec3[j];
			else
				r1[i][j]=e1[i];
			for(k=0;k<15;k++)
			{
				if(r1[i][j]>u7[k])
					rr[n][i][j][k]=u7[k];
				else
					rr[n][i][j][k]=r1[i][j];
				if(rr[n][i][j][k]<rr[n-1][i][j][k])
					rr[n][i][j][k]=rr[n-1][i][j][k];
			}
			
		}
		n++;
		for(i=0;i<14;i++)
		for(j=0;j<13;j++)
		{
			if(e1[i]>ec4[j])
				r1[i][j]=ec4[j];
			else
				r1[i][j]=e1[i];
			for(k=0;k<15;k++)
			{
				if(r1[i][j]>u7[k])
					rr[n][i][j][k]=u7[k];
				else
					rr[n][i][j][k]=r1[i][j];
				if(rr[n][i][j][k]<rr[n-1][i][j][k])
					rr[n][i][j][k]=rr[n-1][i][j][k];
				
			}
			
		}
		n++;
		for(i=0;i<14;i++)
		for(j=0;j<13;j++)
		{
			if(e1[i]>ec5[j])
				r1[i][j]=ec5[j];
			else
				r1[i][j]=e1[i];
			for(k=0;k<15;k++)
			{
				if(r1[i][j]>u6[k])
					rr[n][i][j][k]=u6[k];
				else
					rr[n][i][j][k]=r1[i][j];
				if(rr[n][i][j][k]<rr[n-1][i][j][k])
					rr[n][i][j][k]=rr[n-1][i][j][k];
				
			}
	
		}
		n++;
		for(i=0;i<14;i++)
		for(j=0;j<13;j++)
		{
			if(e1[i]>ec6[j])
				r1[i][j]=ec6[j];
			else
				r1[i][j]=e1[i];
			for(k=0;k<15;k++)
			{
				if(r1[i][j]>u4[k])
					rr[n][i][j][k]=u4[k];
				else
					rr[n][i][j][k]=r1[i][j];
				if(rr[n][i][j][k]<rr[n-1][i][j][k])
					rr[n][i][j][k]=rr[n-1][i][j][k];
				
			}
	
		}
		n++;
		for(i=0;i<14;i++)
		for(j=0;j<13;j++)
		{
			if(e1[i]>ec7[j])
				r1[i][j]=ec7[j];
			else
				r1[i][j]=e1[i];
			for(k=0;k<15;k++)
			{
				if(r1[i][j]>u4[k])
					rr[n][i][j][k]=u4[k];
				else
					rr[n][i][j][k]=r1[i][j];
				if(rr[n][i][j][k]<rr[n-1][i][j][k])
					rr[n][i][j][k]=rr[n-1][i][j][k];
				
			}
	
		}
		n++;
		for(i=0;i<14;i++)
		for(j=0;j<13;j++)
		{
			if(e8[i]>ec1[j])
				r1[i][j]=ec1[j];
			else
				r1[i][j]=e8[i];
			for(k=0;k<15;k++)
			{
				if(r1[i][j]>u4[k])
					rr[n][i][j][k]=u4[k];
				else
					rr[n][i][j][k]=r1[i][j];
				if(rr[n][i][j][k]<rr[n-1][i][j][k])
					rr[n][i][j][k]=rr[n-1][i][j][k];
				
			}
	
		}
		n++;
		for(i=0;i<14;i++)
		for(j=0;j<13;j++)
		{
			if(e8[i]>ec2[j])
				r1[i][j]=ec2[j];
			else
				r1[i][j]=e8[i];
			for(k=0;k<15;k++)
			{
				if(r1[i][j]>u4[k])
					rr[n][i][j][k]=u4[k];
				else
					rr[n][i][j][k]=r1[i][j];
				if(rr[n][i][j][k]<rr[n-1][i][j][k])
					rr[n][i][j][k]=rr[n-1][i][j][k];
				
			}
	
		}
		n++;
		for(i=0;i<14;i++)
		for(j=0;j<13;j++)
		{
			if(e8[i]>ec3[j])
				r1[i][j]=ec3[j];
			else
				r1[i][j]=e8[i];
			for(k=0;k<15;k++)
			{
				if(r1[i][j]>u2[k])
					rr[n][i][j][k]=u2[k];
				else
					rr[n][i][j][k]=r1[i][j];
				if(rr[n][i][j][k]<rr[n-1][i][j][k])
					rr[n][i][j][k]=rr[n-1][i][j][k];
				
			}
	
		}
		n++;
		for(i=0;i<14;i++)
		for(j=0;j<13;j++)
		{
			if(e8[i]>ec4[j])
				r1[i][j]=ec4[j];
			else
				r1[i][j]=e8[i];
			for(k=0;k<15;k++)
			{
				if(r1[i][j]>u1[k])
					rr[n][i][j][k]=u1[k];
				else
					rr[n][i][j][k]=r1[i][j];
				if(rr[n][i][j][k]<rr[n-1][i][j][k])
					rr[n][i][j][k]=rr[n-1][i][j][k];
				
			}
	
		}
		n++;
		for(i=0;i<14;i++)
		for(j=0;j<13;j++)
		{
			if(e8[i]>ec5[j])
				r1[i][j]=ec5[j];
			else
				r1[i][j]=e8[i];
			for(k=0;k<15;k++)
			{
				if(r1[i][j]>u1[k])
					rr[n][i][j][k]=u1[k];
				else
					rr[n][i][j][k]=r1[i][j];
				if(rr[n][i][j][k]<rr[n-1][i][j][k])
					rr[n][i][j][k]=rr[n-1][i][j][k];
				
			}
	
		}
		n++;
		for(i=0;i<14;i++)
		for(j=0;j<13;j++)
		{
			if(e8[i]>ec6[j])
				r1[i][j]=ec6[j];
			else
				r1[i][j]=e8[i];
			for(k=0;k<15;k++)
			{
				if(r1[i][j]>u1[k])
					rr[n][i][j][k]=u1[k];
				else
					rr[n][i][j][k]=r1[i][j];
				if(rr[n][i][j][k]<rr[n-1][i][j][k])
					rr[n][i][j][k]=rr[n-1][i][j][k];
				
			}
	
		}
		n++;
		for(i=0;i<14;i++)
		for(j=0;j<13;j++)
		{
			if(e8[i]>ec7[j])
				r1[i][j]=ec7[j];
			else
				r1[i][j]=e8[i];
			for(k=0;k<15;k++)
			{
				if(r1[i][j]>u1[k])
					rr[n][i][j][k]=u1[k];
				else
					rr[n][i][j][k]=r1[i][j];
				if(rr[n][i][j][k]<rr[n-1][i][j][k])
					rr[n][i][j][k]=rr[n-1][i][j][k];
				
			}

		}
		n++;
		for(i=0;i<14;i++)
		for(j=0;j<13;j++)
		{
			if(e7[i]>ec1[j])
				r1[i][j]=ec1[j];
			else
				r1[i][j]=e7[i];
			for(k=0;k<15;k++)
			{
				if(r1[i][j]>u4[k])
					rr[n][i][j][k]=u4[k];
				else
					rr[n][i][j][k]=r1[i][j];
				if(rr[n][i][j][k]<rr[n-1][i][j][k])
					rr[n][i][j][k]=rr[n-1][i][j][k];
				
			}

		}
		n++;
		for(i=0;i<14;i++)
		for(j=0;j<13;j++)
		{
			if(e7[i]>ec2[j])
				r1[i][j]=ec2[j];
			else
				r1[i][j]=e7[i];
			for(k=0;k<15;k++)
			{
				if(r1[i][j]>u4[k])
					rr[n][i][j][k]=u4[k];
				else
					rr[n][i][j][k]=r1[i][j];
				if(rr[n][i][j][k]<rr[n-1][i][j][k])
					rr[n][i][j][k]=rr[n-1][i][j][k];
				
			}

		}
		n++;
		for(i=0;i<14;i++)
		for(j=0;j<13;j++)
		{
			if(e7[i]>ec3[j])
				r1[i][j]=ec3[j];
			else
				r1[i][j]=e7[i];
			for(k=0;k<15;k++)
			{
				if(r1[i][j]>u2[k])
					rr[n][i][j][k]=u2[k];
				else
					rr[n][i][j][k]=r1[i][j];
				if(rr[n][i][j][k]<rr[n-1][i][j][k])
					rr[n][i][j][k]=rr[n-1][i][j][k];
				
			}

		}
		n++;
		for(i=0;i<14;i++)
		for(j=0;j<13;j++)
		{
			if(e7[i]>ec4[j])
				r1[i][j]=ec4[j];
			else
				r1[i][j]=e7[i];
			for(k=0;k<15;k++)
			{
				if(r1[i][j]>u1[k])
					rr[n][i][j][k]=u1[k];
				else
					rr[n][i][j][k]=r1[i][j];
				if(rr[n][i][j][k]<rr[n-1][i][j][k])
					rr[n][i][j][k]=rr[n-1][i][j][k];
				
			}

		}
		n++;
		for(i=0;i<14;i++)
		for(j=0;j<13;j++)
		{
			if(e7[i]>ec5[j])
				r1[i][j]=ec5[j];
			else
				r1[i][j]=e7[i];
			for(k=0;k<15;k++)
			{
				if(r1[i][j]>u1[k])
					rr[n][i][j][k]=u1[k];
				else
					rr[n][i][j][k]=r1[i][j];
				if(rr[n][i][j][k]<rr[n-1][i][j][k])
					rr[n][i][j][k]=rr[n-1][i][j][k];
				
			}

		}
		n++;
		for(i=0;i<14;i++)
		for(j=0;j<13;j++)
		{
			if(e7[i]>ec6[j])
				r1[i][j]=ec6[j];
			else
				r1[i][j]=e7[i];
			for(k=0;k<15;k++)
			{
				if(r1[i][j]>u1[k])
					rr[n][i][j][k]=u1[k];
				else
					rr[n][i][j][k]=r1[i][j];
				if(rr[n][i][j][k]<rr[n-1][i][j][k])
					rr[n][i][j][k]=rr[n-1][i][j][k];
				
			}

		}
		n++;
		for(i=0;i<14;i++)
		for(j=0;j<13;j++)
		{
			if(e7[i]>ec7[j])
				r1[i][j]=ec7[j];
			else
				r1[i][j]=e7[i];
			for(k=0;k<15;k++)
			{
				if(r1[i][j]>u1[k])
					rr[n][i][j][k]=u1[k];
				else
					rr[n][i][j][k]=r1[i][j];
				if(rr[n][i][j][k]<rr[n-1][i][j][k])
					rr[n][i][j][k]=rr[n-1][i][j][k];
				
			}

		}
		n++;
		for(i=0;i<14;i++)
		for(j=0;j<13;j++)
		{
			if(e6[i]>ec1[j])
				r1[i][j]=ec1[j];
			else
				r1[i][j]=e6[i];
			for(k=0;k<15;k++)
			{
				if(r1[i][j]>u5[k])
					rr[n][i][j][k]=u5[k];
				else
					rr[n][i][j][k]=r1[i][j];
				if(rr[n][i][j][k]<rr[n-1][i][j][k])
					rr[n][i][j][k]=rr[n-1][i][j][k];
				
			}

		}
		n++;
		for(i=0;i<14;i++)
		for(j=0;j<13;j++)
		{
			if(e6[i]>ec2[j])
				r1[i][j]=ec2[j];
			else
				r1[i][j]=e6[i];
			for(k=0;k<15;k++)
			{
				if(r1[i][j]>u5[k])
					rr[n][i][j][k]=u5[k];
				else
					rr[n][i][j][k]=r1[i][j];
				if(rr[n][i][j][k]<rr[n-1][i][j][k])
					rr[n][i][j][k]=rr[n-1][i][j][k];
				
			}

		}
		n++;
		for(i=0;i<14;i++)
		for(j=0;j<13;j++)
		{
			if(e6[i]>ec3[j])
				r1[i][j]=ec3[j];
			else
				r1[i][j]=e6[i];
			for(k=0;k<15;k++)
			{
				if(r1[i][j]>u4[k])
					rr[n][i][j][k]=u4[k];
				else
					rr[n][i][j][k]=r1[i][j];
				if(rr[n][i][j][k]<rr[n-1][i][j][k])
					rr[n][i][j][k]=rr[n-1][i][j][k];
				
			}

		}
		n++;
		for(i=0;i<14;i++)
		for(j=0;j<13;j++)
		{
			if(e6[i]>ec4[j])
				r1[i][j]=ec4[j];
			else
				r1[i][j]=e6[i];
			for(k=0;k<15;k++)
			{
				if(r1[i][j]>u2[k])
					rr[n][i][j][k]=u2[k];
				else
					rr[n][i][j][k]=r1[i][j];
				if(rr[n][i][j][k]<rr[n-1][i][j][k])
					rr[n][i][j][k]=rr[n-1][i][j][k];
				
			}

		}
		n++;
		for(i=0;i<14;i++)
		for(j=0;j<13;j++)
		{
			if(e6[i]>ec5[j])
				r1[i][j]=ec5[j];
			else
				r1[i][j]=e6[i];
			for(k=0;k<15;k++)
			{
				if(r1[i][j]>u2[k])
					rr[n][i][j][k]=u2[k];
				else
					rr[n][i][j][k]=r1[i][j];
				if(rr[n][i][j][k]<rr[n-1][i][j][k])
					rr[n][i][j][k]=rr[n-1][i][j][k];
				
			}

		}
		n++;
		for(i=0;i<14;i++)
		for(j=0;j<13;j++)
		{
			if(e6[i]>ec6[j])
				r1[i][j]=ec6[j];
			else
				r1[i][j]=e6[i];
			for(k=0;k<15;k++)
			{
				if(r1[i][j]>u2[k])
					rr[n][i][j][k]=u2[k];
				else
					rr[n][i][j][k]=r1[i][j];
				if(rr[n][i][j][k]<rr[n-1][i][j][k])
					rr[n][i][j][k]=rr[n-1][i][j][k];
				
			}

		}
		n++;
		for(i=0;i<14;i++)
		for(j=0;j<13;j++)
		{
			if(e6[i]>ec7[j])
				r1[i][j]=ec7[j];
			else
				r1[i][j]=e6[i];
			for(k=0;k<15;k++)
			{
				if(r1[i][j]>u2[k])
					rr[n][i][j][k]=u2[k];
				else
					rr[n][i][j][k]=r1[i][j];
				if(rr[n][i][j][k]<rr[n-1][i][j][k])
					rr[n][i][j][k]=rr[n-1][i][j][k];
				
			}

		}
		n++;
		for(i=0;i<14;i++)
		for(j=0;j<13;j++)
		{
			if(e5[i]>ec1[j])
				r1[i][j]=ec1[j];
			else
				r1[i][j]=e5[i];

⌨️ 快捷键说明

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