您的位置:首页 > Web前端 > JavaScript

javascript-计算24

2016-07-27 21:37 579 查看
<html>
<head>
<title>计算24</title>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<style>
body{
background-color:buttonface;
}
#tex_result {
background-color:#6090DA;
border:black solid 1px;
color:white;
font-weight:bold;
height:20px;
}
</style>
<script src="https://code.jquery.com/jquery-2.1.0.js"></script>
<script type="text/javascript">
var v1,v2,v3,v4,v5,tex_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','2314','2341','2413','2431','3124','3142','3214','3241','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[theArray3[0]-1]+theArray2[jj]+theArray0[theArray3[1]-1]+theArray2[kk]+theArray0[theArray3[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[theArray3[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[theArray3[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[theArray3[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[theArray3[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[theArray3[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[theArray3[2]-1]+theArray2[ll]+theArray0[theArray3[3]-1]+')';
if(eval(ss1)==a1){
return (ss1);
}
}
}
}
}
return (false);
}
//接受页面输入,处理后输出
function main(){
var s1 = call(v1.value,v2.value,v3.value,v4.value);
if(s1){
txt_result.innerText+='\n'+s1+'=='+v5.value;
} else {
txt_result.innerText+='\n'+v1.value+','+v2.value+','+v3.value+','+v4.value+'无结果!';
}
init();
return false;
}
//检查用户输入是否符合要求
function check1(obj1){
if(isNaN(obj1.value)){
alert('请输入一个值!');
//是对象获得焦点并激发onfocus事件
obj1.focus();
//选择对象
obj1.select();
//该属性是设置或获取事件的返回值
event.returnValue=false;

event.cancelBubble=true;
return (false);
}
}
//函数清空输出
function clear_input(){
txt_result.innerText="";
v1.focus();
return (true);
}
//初始化
function init(){
v1=$("v1");
v2=$("v2");
v3=$("v3");
v4=$("v4");
v5=$("v5");
txt_result=$("txt_result");
v1.select();
}
</script>
</head>
<body style="overflow:auto;" onload="init();">
<form onsubmit="return(main());">
<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><br>
<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="txt_result"></div>
</body>
</html>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  javascript