js代码

 1<script language=javascript>
 2<!--
 3function Farm()
 4{
 5    //最佳运算式,随着循环不断最优化
 6    var result ;
 7    //最小值
 8    var least = 0;
 9    //最小值是否赋值
10    var isok = false;
11    
12    //临时运算式,临时结果
13    var temp,tempr;
14    
15    //数组存储运算符号
16    var math = new Array("+","-");
17                
18    
19    //获得数值
20    var a1 = parseInt(f.a1.value);
21    var a2 = parseInt(f.a2.value);
22    var a3 = parseInt(f.a3.value);
23    var a4 = parseInt(f.a4.value);
24                
25    for(var a = 0; a < 2 ; a++)
26    {
27        for(var b = 0 ; b < 2 ; b++)
28        {
29            for(var c = 0 ;c < 2 ;  c++)
30            {
31                for(var d = 0 ;  d < 2 ;  d++)
32                {
33                    //运算式的产生,并完成排序
34                    temp = math[a] + a1;
35                    temp = (b == 0)? math[b] + a2 + temp : temp + math[b] + a2  ;
36                    temp = (c == 0)? math[c] + a3 + temp : temp + math[c] + a3  ;
37                    temp = (d == 0)? math[d] + a4 + temp : temp + math[d] + a4  ;
38                    tempr = eval( temp );
39                if(least == 0 && tempr >= 0 ) 
40                {
41                        least = tempr; 
42                        result = temp; 
43                    }

44                  else if( least > tempr && tempr >= 0  )
45                  {
46                      least = tempr;
47                      result = temp;
48                    }

49                }
    //d
50            }
    //c
51        }
    //b
52    }
    //a
53    
54    //产生最后结果
55    alert(result.substring(1,result.length) + "=" + least);
56}

57            
58//-->
59</script>
posted @ 2005-12-28 08:39  y9902  阅读(239)  评论(0)    收藏  举报