bp001.cpp

来自「基于BP网络的C++源代码,可以进行逻辑运算」· C++ 代码 · 共 55 行

CPP
55
字号
#include "BPNet.h"

void main(void)
{
		BPNet bp;
		bp.TestFunc();

		int i,j,l,p;
		double sum=0;
		double InPut[2],OutPut[4][6];

		if (bp.bSuccess)
		{	
			cout<<"\n输入两个数做逻辑与运算:\n";
			for (i=0;i<2;i++)
			{
				cin>>InPut[i];
			}

			for (j=0;j<bp.nUnitNumb[0];j++)
			{
				OutPut[0][j]=InPut[j];
			}

			for (l=1;l<bp.nLayNumb;l++)
			{
				for (j=0;j<bp.nUnitNumb[l];j++)
				{
					sum=0;
					for (i=0;i<bp.nUnitNumb[l-1];i++)
					{
						sum+=bp.w[l][j][i]*OutPut[l-1][i];
					}
					OutPut[l][j]=1/(1+exp(-sum));
				}
			}
			
			if (fabs(OutPut[bp.nLayNumb-1][bp.nUnitNumb[bp.nLayNumb-1]-1]-1)<0.2)
			{
				cout<<"1"<<'\n';
			}
			else if (fabs(OutPut[bp.nLayNumb-1][bp.nUnitNumb[bp.nLayNumb-1]-1])<0.2)
			{
				cout<<"0"<<'\n';
			}
				else
				{
					cout<<OutPut[bp.nLayNumb-1][bp.nUnitNumb[bp.nLayNumb-1]-1]<<'\n';
				}
		}
		else
			cout<<"样本学习失败!\n";
}

⌨️ 快捷键说明

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