| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1921 人关注过本帖
标题:js编写算24点小游戏
取消只看楼主 加入收藏
yeelone
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2010-8-31
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:5 
js编写算24点小游戏
程序代码:
<head>
<title>24点游戏</title>
<meta http-equiv="content-type"  content="text/html";charset=utf-8>
<style>
body {background-color:buttonface;}
#text_result {
        background-color:#6090da;
        border:black solid 1px;
        color:white;
        font-weight:bold;
        height:20px;        
}
</style>

<script type="text/javascript">
<!--
var v1,v2,v3,v4,v5,text_result;
function $(str){return(document.getElementById(str));}
function call(val1,val2,val3,val4)
{

        thearray0=new Array(val1,val2,val3,val4);
        thearray1=new Array('1234','1243','1324','1342','1423','1432',
        '2134','2143','2341','2314','2413','2431','3124','3142','3241','3214','3412','3421','4123','4132','4213','4231','4312','4321');
        thearray2=new Array('+' ,'-','*', '/');

        a1=parseInt(v5.value);

        for(var ii=0;ii<24;ii++)
        {
                thearray3=thearray1[ii].split('');
                for(var mm=0;mm<4;mm++)
                {
                        thearray3[mm]=parseInt(thearray3[mm]);
                }

                for(var jj=0;jj<4;jj++){
                        for(var kk=0;kk<4;kk++){
                                for(var ll=0;ll<4;ll++)
                                {
                                        ss1=thearray0[therray3[0]-1]+thearray2[jj]+therray0[thearray3[1]-1]+thearray2[kk]+thearray0[thearray[2]-1]+thearray2[ll]+thearray0[thearray3[3]-1];
                                        if(eval(ss1)==a1)
                                        {return(ss1);}

                                        ss1='('+thearray0[thearray3[0]-1]+thearray2[jj]+thearray0[thearray3[1]-1]+')'+thearray2[kk]+thearray0[thearray[2]-1]+thearray2[ll]+thearray0[thearray3[3]-1];
                                        if(eval(ss1)==a1)
                                        {return(ss1);}
                                        ss1=thearray0[thearray3[0]-1]+thearray2[jj]+'('+thearray0[thearray3[1]-1]+thearray2[kk]+thearray0[thearray[2]-1]+')'+thearray2[ll]+thearray0[thearray3[3]-1];
                                        if(eval(ss1)==a1)
                                        {return(ss1);}
                                        ss1=thearray0[thearray3[0]-1]+thearray2[jj]+thearray0[thearray3[1]-1]+thearray2[kk]+'('+thearray0[thearray[2]-1]+thearray2[ll]+thearray0[thearray3[3]-1]+')';
                                        if(eval(ss1)==a1)
                                        {return(ss1);}
                                        
                                        ss1='('+thearray0[thearray3[0]-1]+thearray2[jj]+thearray0[thearry3[1]-1]+thearray2[kk]+thearray0[thearray[2]-1]+')'+thearray2[ll]+thearray0[thearray3[3]-1];
                                        if(eval(ss1)==a1)
                                        {return(ss1);}
                                        ss1=thearray0[thearray3[0]-1]+thearray2[jj]+'('+thearray0[thearray3[1]-1]+thearray2[kk]+thearray0[thearray[2]-1]+thearray2[ll]+thearray0[thearray3[3]-1]+')';
                                        if(eval(ss1)==a1)
                                        {return(ss1);}
                                }

        }}}
        return(false);
}


function check1(boj1)
{
        if(isNaN(boj1.value))
                {

                        alert("请输入数值");
                        boj1.focus();                        
                        boj1.select();
                        event.returnValue=false;
                        event.cancelBubble=true;
                        return(false);
                }
}

function init()
{
        v1=$("v1");
    
        v2=$("v2");
        v3=$("v3");
        v4=$("v4");
        v5=$("v5");
        text_result=$("text_result");
        v1.select();
}

function main()
{
        var s1=call(v1.value,v2.value,v3.value,v4.value);

        if(s1)
        {      
                text_result.innerText+='\n'+s1+'=='+v5.value;
        }
        else
        {
                text_result.innerText+='\n'+v1.value+','+v2.value+','+v3.value+','+v4.value+','+v5.value+'        无效果!';
        }
        init();
        return(false);
}





-->
</script>


</head>
<body  style="overflow:auto;"   onload="init();">
<form  onsubmit="return(main());">
<b>请输入要计算的四个数:</b><br>
<input id="v1" onchange="check1(this);">
<input id="v2" onchange="check1(this);"><br>
<input id="v3" onchange="check1(this);">
<input id="v4" onchange="check1(this);"><br>
<b>请输入要计算的目标结果:</b>
<input id="v5" onchange="check1(this);"  value="24"><br>
<input type="submit" value="计算">
<input type="reset" onclick="clear_input();" value="清除结果">
</form>
<b>结果:</b><br>
<div id="text_result" ><div>

</body>
</html>

根据书里代码是这样写的,输入四个数字之后,点击“计算”没有效果。请大家帮我看看
搜索更多相关主题的帖子: 小游戏 编写 
2010-08-31 09:06
yeelone
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2010-8-31
收藏
得分:0 
还是没有效果。感觉call函数没起作用。
2010-08-31 13:05
yeelone
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2010-8-31
收藏
得分:0 
成功了。哈哈。谢谢版主。
是我 的变量错了吗?我之前检查了好多次的啊,没看出来。版主还记得是我哪写错了吗?能否说一下。
2010-08-31 22:58
yeelone
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2010-8-31
收藏
得分:0 
我发现版主只是在我的操作符之间多了很多空格而已啊。
在linux下用
diff  比较两个文件是这样显示的
2010-08-31 23:05
yeelone
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2010-8-31
收藏
得分:0 
我一直没看出是哪里错了,版主可否说 一下?
2010-08-31 23:17
yeelone
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2010-8-31
收藏
得分:0 
我学js才几天,现在还不知道怎么排错。
现在还不懂得有没有工具可以排错。我已经在一行行的查,可是还是漏了。
谢谢版主。
2010-09-01 11:11
快速回复:js编写算24点小游戏
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.024489 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved