《2022年人工智能程 .pdf》由会员分享,可在线阅读,更多相关《2022年人工智能程 .pdf(7页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、Badming 代码下面是 Badming 写的一些关于AI 的 c+代码, badming 认为当代码复杂到一定程度,程序给人类的反应,人类已经分不清是不是死的代码或是真的有意识产生了。下面的代码实际是简单脚本的处理代码。Badming 认为,现代的脚本语言实际上是未来Ai 的前身。#include#include#include#include#includeusing namespacestd;/*信息结构 */typedef vector Msg;Msg MsgEmpty; / 空的Msg MsgFalse; / 假Msg MsgUnknown; /不知道Msg MsgTrue; /真
2、Msg MsgAny; /任何值typedef map Knowledge; /解决方案struct FunTool /辅助工具typedef Msg (*Way)(Msg );int id;Way pFun;string explain;FunTool()FunTool(int _id,Way _pFun,string _explain)id=_id;pFun=_pFun;explain=_explain;typedef vector FunTools;/*信息结构定义完毕*/可能需要的方法,人为提供的Msg say(Msg msg)for(int i=0;imsg.size();i+)co
3、utmsgit;coutendl;return MsgEmpty;名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 7 页 - - - - - - - - - Msg makeMsg(string str)Msg a;a.push_back(str);return a;Msg nextNumber(Msg msg)string str=msg0;if(str.empty()makeMsg();int n=0;for(int i=0;istr.size();i+)if(str
4、i=0)n=n*10+stri-0;elsemakeMsg();n+;char t100;itoa(n,t,10);return makeMsg(t);classPlusGirlpublic :PlusGirl()initMap();MsgEmpty.push_back(empty);MsgEmpty.push_back(msgState);MsgFalse.push_back(false);MsgFalse.push_back(msgState);MsgUnknown.push_back(unknow);MsgUnknown.push_back(msgState);MsgTrue.push_
5、back(true);MsgTrue.push_back(msgState);MsgAny.push_back(any);MsgAny.push_back(msgState);int strToInt(string str)int n=0;int i=0;while(istr.size()&stri=0)n*=10;n+=stri-0;i+;名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 7 页 - - - - - - - - - return n;/*/FunTools
6、 iFunTools;/ 定义函数工具集void initMap()iFunTools.push_back(FunTool(iFunTools.size(),nextNumber, 让一个数 +1);iFunTools.push_back(FunTool(iFunTools.size(),say, 说出 msg 中内容 );Msg showHelp( Msg msg)coutPlusGirl 可用的方法如下:endl;cout 编号 t 方法的使用说明endl;for(int i=0;iiFunTools.size();i+)coutiFunToolsi.idtiFunToolsi.expla
7、inendl;return MsgEmpty;/*/知识结构,校验格式与执行解决方案vector iKnows; /解决方案集合Msg analyse(const Msg &words) /通过各种情况分析,而解决问题for(int i=0;iiKnows.size();i+)Msg msg=solveProblem(iKnowsi,words);if(msg.empty()|msg=MsgUnknown)continue;return msg;return MsgEmpty;Msg solveProblem(Knowledge &know,const Msg problem) /使用一种解决
8、方案,解决一个问题Knowledge:iterator loop=know.begin();map data;/数据区域data0=problem;map itemData;while(loop!=know.end()Msg & script=loop-second;if(0=script.size()returnMsgUnknown;/define amsgif(script0=define)名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 7 页 - - - - - -
9、 - - - if(6script.size()returnMsgUnknown;if(script3!=)returnMsgUnknown;if(script1=msg)if(script4=msg)datastrToInt(script2)=datastrToInt(script5);elseif(script4=item)datastrToInt(script2).clear();for(int i=5;iscript.size();i+)datastrToInt(script2).push_back(itemDatastrToInt(scripti);elseif(script4=st
10、ring)datastrToInt(script2).clear();for(int i=5;iscript.size()returnMsgUnknown;Msg temp;if(script1=solve)temp=solveProblem(iKnowsstrToInt(script2),datastrToInt(script3);elseif(script1=fun)temp=iFunToolsstrToInt(script2).pFun(datastrToInt(script3);elseif(script1=msg)temp=datastrToInt(script2);else ret
11、urn MsgUnknown;if(temp.empty()return MsgUnknown;if(temp=MsgUnknown)returntemp;if(script5=msgState)if(script4=&script6!=temp0)|(script4=!=&script6!=temp0)loop+;continue;if(script5=msg)if(script4=&datastrToInt(script6)!=temp)|(script4=!=&datastrToInt(script6)!=temp)loop+;continue;if(script7=end)return
12、datastrToInt(script8);if(script7=goto)loop=know.find(strToInt(script8);continue;if(script0=use)if(6=script.size()returnMsgUnknown;if(script4=solve)datastrToInt(script2)=solveProblem(iKnowsstrToInt(script5),datastrToInt(script7);if(script4=fun)datastrToInt(script2)=iFunToolsstrToInt(script5).pFun(dat
13、astrToInt(script7);名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 7 页 - - - - - - - - - loop+;continue ;if(script0=end)return datastrToInt(script1);if(script0=goto)loop=know.find(strToInt(script1);continue;loop +;return MsgEmpty;/*/;int main()PlusGirl girl;girl.showHelp(MsgEmpty);cout-endlab)Msg m;m.push_back(a);m.push_back(b);girl.analyse(m);system(pause);return 0;名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 7 页 - - - - - - - - -