<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<meta name="Author" content="Netdream Ltd. - Ma Li" />
<head>
<title>Order by des...destiny</title>
<style type="text/css">
body
{
font-size: 12px;
font-family: Corbel;
}
.clear
{
clear: both;
}
.count
{
float: left;
margin-right: 20px;
margin-bottom: 10px;
}
input[name='txtnums']
{
width: 30px;
}
#txtshow
{
font-size: 16px;
font-weight: bold;
letter-spacing: 5px;
color: #ff0000;
}
</style>
<script type="text/javascript">
var opArr = new Array("+", "-", "*", "/");
var target = 24;
function Plan(arr, len, target) {
for (var i = 0; i < len; i++) {
for (var j = i + 1; j < len; j++) {
var ji = [arr[i], arr[j]];
arr[j] = arr[len - 1];
for (var q = 0; q < opArr.length; q++) {
arr[i] = '(' + ji[q % 2] + opArr[q] + ji[(!(q % 2) * 1)] + ')';
if (Plan(arr, len - 1, target)) {
return true;
}
}
arr[i] = ji[0]; arr[j] = ji[1];
}
}
return (len == 1) && (eval(arr[0]) == target);
}
function Result(arr, target) {
if (Plan(arr, arr.length, target)) {
var str = arr[0].substring(1, arr[0].length - 1);
return arr[0].substring(1, arr[0].length - 1) + "=" + String(target);
} else { return "Can't write:" + target; }
}
function show() {
var numsArr = new Array();
var nums = document.getElementsByName("txtnums");
var txttarget = document.getElementById('lblresult').innerHTML;
for (var i = 0; i < nums.length; i++) {
if (!CheckInt(nums[i].value)) {
alert('Please Check Your Input Value! The Value must be an integer~');
return false;
}
numsArr.push(nums[i].value);
}
document.getElementById("txtshow").innerHTML = Result(numsArr, txttarget);
}
function CheckInt(input) {
var reg1 = /^\d+$/;
return reg1.test(input);
}
</script>
</head>
<body>
<div class="count">
<input type="text" name="txtnums" maxlength="4" />
</div>
<div class="count">
<input type="text" name="txtnums" maxlength="4" />
</div>
<div class="count">
<input type="text" name="txtnums" maxlength="4" />
</div>
<div class="count">
<input type="text" name="txtnums" maxlength="4" />
</div>
<div id="lblresult" style="display: none;">
</div>
<script>
document.getElementById('lblresult').innerText = target;
</script>
<div class="count">
<input id="btnshow" type="button" value="Click!" onclick="show()" /><br />
</div>
<div class="clear">
</div>
<div id="txtshow">
</div>
</body>
</html>

js计算24点的更多相关文章

  1. JS计算24节气的方法

    function getjq(yyyy,mm,dd){ mm = mm-1; var sTermInfo = new Array(0,21208,42467,63836,85337,107014,12 ...

  2. JS计算字符串所占字节数

    最近项目有个需求要用js计算一串字符串写入到localStorage里所占的内存,众所周知的,js是使用Unicode编码的.而Unicode的实现有N种,其中用的最多的就是UTF-8和UTF-16. ...

  3. js计算2个日期相差的天数,两个日期相差的天数,日期相隔天数

    js计算2个日期相差的天数,两个日期相差的天数,日期相隔天数 >>>>>>>>>>>>>>>>>& ...

  4. js计算两个日期的天数差值

    js计算两个日期的天数差值 通过两个日期计算这两个日期之间的天数差值 /** * 计算天数差的函数,通用 * @param sDate1 * @param sDate2 * @returns {Num ...

  5. Vue.js 计算属性是什么

    Vue.js 计算属性是什么 一.总结 一句话总结: 模板 表达式 维护 在模板中表达式非常便利,但是它们实际上只用于简单的操作.模板是为了描述视图的结构.在模板中放入太多的逻辑会让模板过重且难以维护 ...

  6. JS计算两个日期之间的天数

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  7. C语言-纸牌计算24点小游戏

    C语言实现纸牌计算24点小游戏 利用系统时间设定随机种子生成4个随机数,并对4个数字之间的运算次序以及运算符号进行枚举,从而计算判断是否能得出24,以达到程序目的.程序主要功能已完成,目前还有部分细节 ...

  8. js 计算快速统计中用到的日期

    前言 最近在做统计报表模块,其中查询条件用到了快速查询,主要为了方便客户统计查询常用的几个日期纬度,比如本周.上周.本月.上月.昨日. 使用js计算,主要用到了js Date. getDate().g ...

  9. js计算字符串的字节数和字符串与二进制的相互转化

    一.js计算字符串的字节数方法: //blob获取字符串的字节 var debug = "好的"; var blob = new Blob([debug],{type : 'tex ...

随机推荐

  1. Django中Celery的实现介绍(一)

    Django中Celery的实现 Celery官网http://www.celeryproject.org/ 学习资料:http://docs.jinkan.org/docs/celery/ Cele ...

  2. mysql数据库添加索引优化查询效率

    项目中如果表中的数据过多的话,会影响查询的效率,那么我们需要想办法优化查询,通常添加索引就是我们的选择之一: 1.添加PRIMARY KEY(主键索引) mysql>ALTER TABLE `t ...

  3. sql lock

    要提升SQL的查询效能,一般来说大家会以建立索引(index)为第一考虑.其实除了index的建立之外,当我们在下SQL Command时,在语法中加一段WITH (NOLOCK)可以改善在线大量查询 ...

  4. 使用js进行string和json之间转换的方法

    在数据传输过种中,json是以文本,即字符串的形式传递,字符串形似Json对象: var str1 = '{ "name": "Amy", "sex& ...

  5. Nginx下配置ThinkPHP的URL Rewrite模式和pathinfo模式支持

    前面有关于lnmp环境的搭建,在此就不在赘述.下面就简述thinkPHP如何在nginx下开启url_rewrite和pathinfo模式支持 主要有两个步骤: 一.更改php.ini将;cgi.fi ...

  6. 20145212 《Java程序设计》第6周学习总结

    20145212 <Java程序设计>第6周学习总结 学习内容总结 第十章 1.Java将输入/输出抽象化为串流.读取数据对象成为输入流,能向其写入的对象叫输出流. 我从网上找到了一个可以 ...

  7. Java数据结构——队列

    //================================================= // File Name : Queue_demo //-------------------- ...

  8. codeforces 712A. Memory and Crow

    题目链接:http://codeforces.com/problemset/problem/712/A 题目大意: 给你一个数字系列,求其满足条件的一个序列. 条件为: ai = bi - bi +  ...

  9. JS通过getBoundingClientRect获取的height可能与css设置的height不一致

    发现如果DOM元素有padding-top或者padding-bottom值时, $(dom).height() = dom.style.display + padding-top + padding ...

  10. python中,ascii,unicode,utf8,gbk之间的关系梳理

    在计算机中,经常遇到编码问题,本节主要梳理下ascii,unicode,utf8,gbk 这几种编码之间的关系. ASCII 计算机中,所有数据都以0和1来表示.在一开始的时候,要表示的内容比较少,人 ...