function FunnyBox_1162(Input_X,Input_Y) { var strBody=""; var pLast=null; ////////////////////////////////// function Calculate_Next(pNode,pNext) { strBody+=" -->:"+pNext.ID+"\n"; var pLink_Tmp=new Node_Link(); pLink_Tmp.pData=pNext; if (pNext.Param_Count==2 && pNode.Function=="@1"){ pNext.pInput2=pNode; }else{ pNext.pInput1=pNode; } pLast.pNext=pLink_Tmp; pLast=pLink_Tmp; } var pStart=null; ////////////////////////////////// var pLink1134=new Node_Link(); var pNode1134=new Node_Program(); pNode1134.ID="1134"; pNode1134.Function="@显示"; pNode1134.Type="function"; pNode1134.Param_Count=0; pNode1134.Run=function(x,y){ return FB_Canvas();; } pLink1134.pData=pNode1134; ////////////////////////////////// var pLink1133=new Node_Link(); var pNode1133=new Node_Program(); pNode1133.ID="1133"; pNode1133.Function="求导"; pNode1133.Type="send"; pNode1133.Param_Count=0; pNode1133.Run=function(x,y){ return x; } pLink1133.pData=pNode1133; ////////////////////////////////// var pLink1175=new Node_Link(); var pNode1175=new Node_Program(); pNode1175.ID="1175"; pNode1175.Function="@清空面板"; pNode1175.Type="function"; pNode1175.Param_Count=0; pNode1175.Run=function(x,y){ return Clear_InputBox(); } pLink1175.pData=pNode1175; ////////////////////////////////// var pLink1176=new Node_Link(); var pNode1176=new Node_Program(); pNode1176.ID="1176"; pNode1176.Function="@文本框"; pNode1176.Type="function"; pNode1176.Param_Count=0; pNode1176.Run=function(x,y){ return Show_InputBox("输入要要因式分解的表达式:"); } pLink1176.pData=pNode1176; ////////////////////////////////// var pLink1177=new Node_Link(); var pNode1177=new Node_Program(); pNode1177.ID="1177"; pNode1177.Function="@按钮"; pNode1177.Type="function"; pNode1177.Param_Count=0; pNode1177.Run=function(x,y){ return Show_Button("求导","1162");; } pLink1177.pData=pNode1177; ////////////////////////////////// var pLink1162=new Node_Link(); var pNode1162=new Node_Program(); pNode1162.ID="1162"; pNode1162.Function="求导按钮事件"; pNode1162.Type="send"; pNode1162.Param_Count=0; pNode1162.Run=function(x,y){ return x; } pLink1162.pData=pNode1162; ////////////////////////////////// var pLink1178=new Node_Link(); var pNode1178=new Node_Program(); pNode1178.ID="1178"; pNode1178.Function="@读取"; pNode1178.Type="function"; pNode1178.Param_Count=0; pNode1178.Run=function(x,y){ return Read_InputBox("输入要计算的表达式:"); } pLink1178.pData=pNode1178; ////////////////////////////////// var pLink1179=new Node_Link(); var pNode1179=new Node_Program(); pNode1179.ID="1179"; pNode1179.Function="@组合"; pNode1179.Type="function"; pNode1179.Param_Count=0; pNode1179.Run=function(x,y){ return "derivative of "+x; } pLink1179.pData=pNode1179; ////////////////////////////////// var pLink1180=new Node_Link(); var pNode1180=new Node_Program(); pNode1180.ID="1180"; pNode1180.Function="@转化"; pNode1180.Type="function"; pNode1180.Param_Count=0; pNode1180.Run=function(x,y){ return encodeURIComponent(x); } pLink1180.pData=pNode1180; ////////////////////////////////// var pLink1232=new Node_Link(); var pNode1232=new Node_Program(); pNode1232.ID="1232"; pNode1232.Function="@调用wolframalpha"; pNode1232.Type="function"; pNode1232.Param_Count=0; pNode1232.Run=function(x,y){ return FunnyBox_1229(x); } pLink1232.pData=pNode1232; ////////////////////////////////// var pLink1181=new Node_Link(); var pNode1181=new Node_Program(); pNode1181.ID="1181"; pNode1181.Function="@组合"; pNode1181.Type="function"; pNode1181.Param_Count=0; pNode1181.Run=function(x,y){ return "http://www.wolframalpha.com/input/?i="+x; } pLink1181.pData=pNode1181; ////////////////////////////////// var pLink1182=new Node_Link(); var pNode1182=new Node_Program(); pNode1182.ID="1182"; pNode1182.Function="@显示IFrame"; pNode1182.Type="function"; pNode1182.Param_Count=0; pNode1182.Run=function(x,y){ return Show_Iframe(x,1200,600);; } pLink1182.pData=pNode1182; ////////////////////////////////// var pLink1183=new Node_Link(); var pNode1183=new Node_Program(); pNode1183.ID="1183"; pNode1183.Function="解方程"; pNode1183.Type="send"; pNode1183.Param_Count=0; pNode1183.Run=function(x,y){ return x; } pLink1183.pData=pNode1183; ////////////////////////////////// var pLink1184=new Node_Link(); var pNode1184=new Node_Program(); pNode1184.ID="1184"; pNode1184.Function="@清空面板"; pNode1184.Type="function"; pNode1184.Param_Count=0; pNode1184.Run=function(x,y){ return Clear_InputBox(); } pLink1184.pData=pNode1184; ////////////////////////////////// var pLink1185=new Node_Link(); var pNode1185=new Node_Program(); pNode1185.ID="1185"; pNode1185.Function="@文本框"; pNode1185.Type="function"; pNode1185.Param_Count=0; pNode1185.Run=function(x,y){ return Show_InputBox("输入方程,如:x^2-1=0"); } pLink1185.pData=pNode1185; ////////////////////////////////// var pLink1186=new Node_Link(); var pNode1186=new Node_Program(); pNode1186.ID="1186"; pNode1186.Function="@按钮"; pNode1186.Type="function"; pNode1186.Param_Count=0; pNode1186.Run=function(x,y){ return Show_Button("解方程","1187");; } pLink1186.pData=pNode1186; ////////////////////////////////// var pLink1187=new Node_Link(); var pNode1187=new Node_Program(); pNode1187.ID="1187"; pNode1187.Function="解方程 按钮事件"; pNode1187.Type="send"; pNode1187.Param_Count=0; pNode1187.Run=function(x,y){ return x; } pLink1187.pData=pNode1187; ////////////////////////////////// var pLink1188=new Node_Link(); var pNode1188=new Node_Program(); pNode1188.ID="1188"; pNode1188.Function="@读取"; pNode1188.Type="function"; pNode1188.Param_Count=0; pNode1188.Run=function(x,y){ return Read_InputBox("输入要计算的表达式:"); } pLink1188.pData=pNode1188; ////////////////////////////////// var pLink1189=new Node_Link(); var pNode1189=new Node_Program(); pNode1189.ID="1189"; pNode1189.Function="@组合"; pNode1189.Type="function"; pNode1189.Param_Count=0; pNode1189.Run=function(x,y){ return "solve "+x; } pLink1189.pData=pNode1189; ////////////////////////////////// var pLink1190=new Node_Link(); var pNode1190=new Node_Program(); pNode1190.ID="1190"; pNode1190.Function="@转化"; pNode1190.Type="function"; pNode1190.Param_Count=0; pNode1190.Run=function(x,y){ return encodeURIComponent(x); } pLink1190.pData=pNode1190; ////////////////////////////////// var pLink1233=new Node_Link(); var pNode1233=new Node_Program(); pNode1233.ID="1233"; pNode1233.Function="@调用wolframalpha"; pNode1233.Type="function"; pNode1233.Param_Count=0; pNode1233.Run=function(x,y){ return FunnyBox_1229(x); } pLink1233.pData=pNode1233; ////////////////////////////////// var pLink1204=new Node_Link(); var pNode1204=new Node_Program(); pNode1204.ID="1204"; pNode1204.Function="页面抓取"; pNode1204.Type="send"; pNode1204.Param_Count=0; pNode1204.Run=function(x,y){ return x; } pLink1204.pData=pNode1204; ////////////////////////////////// var pLink1206=new Node_Link(); var pNode1206=new Node_Program(); pNode1206.ID="1206"; pNode1206.Function="@抓取"; pNode1206.Type="function"; pNode1206.Param_Count=0; pNode1206.Run=function(x,y){ return Get_Page("http://www.mathfan.com"); } pLink1206.pData=pNode1206; ////////////////////////////////// var pLink1160=new Node_Link(); var pNode1160=new Node_Program(); pNode1160.ID="1160"; pNode1160.Function="@Sleep"; pNode1160.Type="function"; pNode1160.Param_Count=0; pNode1160.Run=function(x,y){ return Sleep(this,1000);; } pNode1160.NextStep=function() { Box_1205(); } pLink1160.pData=pNode1160; ////////////////////////////////// var pLink1205=new Node_Link(); var pNode1205=new Node_Program(); pNode1205.ID="1205"; pNode1205.Function="@显示"; pNode1205.Type="function"; pNode1205.Param_Count=0; pNode1205.Run=function(x,y){ return FB_Show(x);; } pLink1205.pData=pNode1205; ////////////////////////////////// var pLink1221=new Node_Link(); var pNode1221=new Node_Program(); pNode1221.ID="1221"; pNode1221.Function="求两个城市距离"; pNode1221.Type="send"; pNode1221.Param_Count=0; pNode1221.Run=function(x,y){ return x; } pLink1221.pData=pNode1221; ////////////////////////////////// var pLink1222=new Node_Link(); var pNode1222=new Node_Program(); pNode1222.ID="1222"; pNode1222.Function="@清空面板"; pNode1222.Type="function"; pNode1222.Param_Count=0; pNode1222.Run=function(x,y){ return Clear_InputBox(); } pLink1222.pData=pNode1222; ////////////////////////////////// var pLink1223=new Node_Link(); var pNode1223=new Node_Program(); pNode1223.ID="1223"; pNode1223.Function="@文本框"; pNode1223.Type="function"; pNode1223.Param_Count=0; pNode1223.Run=function(x,y){ return Show_InputBox("输入两个城市,用逗号分开,如:beijing,shanghai"); } pLink1223.pData=pNode1223; ////////////////////////////////// var pLink1224=new Node_Link(); var pNode1224=new Node_Program(); pNode1224.ID="1224"; pNode1224.Function="@按钮"; pNode1224.Type="function"; pNode1224.Param_Count=0; pNode1224.Run=function(x,y){ return Show_Button("计算","1225");; } pLink1224.pData=pNode1224; pNode1133.pNext1=pNode1175; pNode1175.pNext1=pNode1176; pNode1176.pNext1=pNode1177; pNode1162.pNext1=pNode1178; pNode1178.pNext1=pNode1179; pNode1179.pNext1=pNode1180; pNode1180.pNext1=pNode1232; pNode1181.pNext1=pNode1182; pNode1183.pNext1=pNode1184; pNode1184.pNext1=pNode1185; pNode1185.pNext1=pNode1186; pNode1187.pNext1=pNode1188; pNode1188.pNext1=pNode1189; pNode1189.pNext1=pNode1190; pNode1190.pNext1=pNode1233; pNode1204.pNext1=pNode1206; pNode1206.pNext1=pNode1160; pNode1221.pNext1=pNode1222; pNode1222.pNext1=pNode1223; pNode1223.pNext1=pNode1224; pStart = pLink1162; var pNode_Input=new Node_Program(); pNode_Input.ID="-1"; pNode_Input.Value=Input_X; pStart.pData.pInput1=pNode_Input; pStart.pData.Param_Count=1; pLast = pStart; var iDebug=0;//=1为调试模式 var Count_Step=0; //运行 var Max_LOOP=20000; while(pStart!=null){ var pNode=pStart.pData; var x=0; var y=0; if (pNode.pInput1!=null) x=pNode.pInput1.Value; if (pNode.pInput2!=null) y=pNode.pInput2.Value; if (pNode.pInput1==null && pNode.pInput2==null){ x=pNode.Value; } if (pNode.Function=="@输出"){ pNode.Run(x,y); break; } Count_Step+=1; if (Count_Step>Max_LOOP){ alert("break:"+Max_LOOP); break; } if (pNode.Param_Count==2){ if (pNode.pInput1!=null && pNode.pInput2!=null)//如果两个输入都有了就转到下一步 { pNode.Value=pNode.Run(x,y); if (iDebug==1){ strBody+=pNode.ID+"="+pNode.Value+",x="+x+",y="+y+"\n"; } }else{ if (iDebug==1){ strBody+=pNode.ID+"=wait\n"; } } }else{ pNode.Value=pNode.Run(x,y); if (iDebug==1){ strBody+=pNode.ID+"="+pNode.Value+",x="+x+",y="+y+"\n"; } } var pNext=null; var pLink_Tmp=null; switch (pNode.Type){ case "switch": if (pNode.Param_Count==2){ if (pNode.pInput1!=null && pNode.pInput2!=null)//如果两个输入都有了就转到下一步 { if (pNode.Value) { pNext=pNode.pNext1; if (pNext!=null) Calculate_Next(pNode,pNext); //激活过的,把输入变为空 pNode.pInput1=null; pNode.pInput2=null; }else{ pNext=pNode.pNext2; if (pNext!=null) Calculate_Next(pNode,pNext); //激活过的,把输入变为空 pNode.pInput1=null; pNode.pInput2=null; } pNode.Value=x;//Value原先是布尔值,换为x }else{ //wait } }else{ if (pNode.Value) { pNext=pNode.pNext1; if (pNext!=null) Calculate_Next(pNode,pNext); //激活过的,把输入变为空 pNode.pInput1=null; pNode.pInput2=null; }else{ pNext=pNode.pNext2; if (pNext!=null) Calculate_Next(pNode,pNext); //激活过的,把输入变为空 pNode.pInput1=null; pNode.pInput2=null; } pNode.Value=x;//Value原先是布尔值,换为x } break; case "function": if (pNode.Param_Count>=2) { if (pNode.pInput1!=null && pNode.pInput2!=null)//如果两个输入都有了就转到下一步 { pNext=pNode.pNext1; if (pNext!=null) Calculate_Next(pNode,pNext); pNext=pNode.pNext2; if (pNext!=null) Calculate_Next(pNode,pNext); //激活过的,把输入变为空 pNode.pInput1=null; pNode.pInput2=null; } }else{ if (pNode.pInput1!=null) { pNext=pNode.pNext1; if (pNext!=null) Calculate_Next(pNode,pNext); //激活过的,把输入变为空 pNode.pInput1=null; pNode.pInput2=null; } } break; default: pNext=pNode.pNext1; if (pNext!=null) Calculate_Next(pNode,pNext); pNext=pNode.pNext2; if (pNext!=null) Calculate_Next(pNode,pNext); break; } pStart=pStart.pNext; } }