钟恒宇1 钟恒宇1
你问我的问题我可以回答一句【无可奉告】
关注数: 11 粉丝数: 53 发帖数: 8,998 关注贴吧数: 14
用javascript模拟图灵机,出错了,怎么回事? 这是html的源码: <title>模拟图灵机</title> <html> <body> <div style=' height:35px;line-height:20px;overflow:hidden;text-align:center'> <nobr id="w1">1:</nobr> <input name="t1" id="t1" type="text" maxlength="1" value="undefined" size="1"/> <nobr id="w2">2:</nobr> <input name="t2" id="t2" type="text" maxlength="1" value="undefined" size="1"/> <nobr id="w3">3:</nobr> <input name="t3" id="t3" type="text" maxlength="1" value="undefined" size="1"/> <nobr id="w4">4:</nobr> <input name="t4" id="t4" type="text" maxlength="1" value="undefined" size="1"/> <nobr id="w5">5:</nobr> <input name="t5" id="t5" type="text" maxlength="1" value="undefined" size="1"/> <button onclick="s()">上</button> <button onclick="x()">下</button> </div> <div style=' height:320px;line-height:105px;overflow:hidden;text-align:center'> <textarea rows="20" cols="60" id="t"> </textarea> </div> <div style=' height:35px;line-height:20px;overflow:hidden;text-align:center'> <nobr>指针:</nobr><input name="s" id="s" type="text" value="1" size="5"/> <nobr>状态:</nobr><input name="z" id="z" type="text" value="" size="5"/> <nobr>结束:</nobr><input name="j" id="j" type="text" value="" size="5"/> </div> <div style=' height:50px;line-height:20px;overflow:hidden;text-align:center'> <button onclick="run()">运行代码</button> <script type="text/javascript" src="ku.js"></script> </body> </html> 这是ku.js的源码: var w=new Array(); var s=function(){ var a; var c; var i; for(i=1;i<=5;i++){ a=document.getElementById("w"+i).innerHTML; c=parseInt(a); w[c]=document.getElementById("t"+i).value; c=c+6; document.getElementById("t"+i).value=w[c]; document.getElementById("w"+i).innerHTML=c+":"; } } var x=function(){ if(document.getElementById("w1").innerHTML != "1:"){ var a; var c; var i; for(i=1;i<=5;i++){ a=document.getElementById("w"+i).innerHTML; c=parseInt(a); w[c]=document.getElementById("t"+i).value; c=c-6; document.getElementById("t"+i).value=w[c]; document.getElementById("w"+i).innerHTML=c+":"; } } } var run=function(){ var a=document.getElementById("t").innerHTML; var arr= new Array(); var arr=x.split("\n"); var c; var i=0; while(1){ if(arr[i]==undefined){ i=0; } c=arr[i]; var k=c.split(","); if(k[0]==document.getElementById("z").value){ //如果工作状态为当前工作状态 var ap=parseInt(document.getElementById("s").value); if(k[1]==w[ap]){ //如果读头读到了指定的数值 if(k[2] != null) //如果需要写入数据 w[ap]=k[2]; //写入数据 switch(k[3]){ case 'r':document.getElementById("s").value=String(ap+1); case 'l':document.getElementById("s").value=String(ap-1); case 'n':document.getElementById("s").value=String(ap); } if(k[4]==document.getElementById("j").value) //如果设定工作状态为结束 { document.getElementById("z").value=document.getElementById("j").value; break; //结束程序 } else //如果不是 { document.getElementById("z").value=k[4]; //设置新状态 } } } } } 这是运行结果:点击按钮没反应
1 下一页