进制转换二、三、五、八、十、十六进制互换程序 要完成此效果需要两个步骤 第一步:把如下代码加入到<head>区域中 <SCRIPT LANGUAGE="JavaScript"> <!-- Begin var hex = new Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D", "E", "F"); function CKparseInt(n, r) { for (var i = 0; i < n.length; ++i) if (n.charAt(i) >= r) { alert("格式错"); return 0; } if (isNaN(M = parseInt(n, r))) alert ("格式错"); return M; } // decimal to any other base 2 to 16 function DecimaltoAnother(A, radix) { s = ""; while (A >= radix) { s += hex[A % radix]; // remainder A = Math.floor(A / radix); // quotient, rounded down } return transpose(s += hex[A]); } // string reversal function transpose(s) { N = s.length; for (i = 0,t = ""; i < N; i++) t += s.substring(N-i-1, N-i); // s.substring(from, to) return t; } // convert item.value using radix function EvalAny(item, r) { M = CKparseInt(item.value, r); // check this one for (var i = 0, MyForm = document.forms[0]; i < MyForm.length; ++i) // re-evaluate all MyForm.elements[i].value = DecimaltoAnother(M, MyForm.elements[i].name.substr(1,3)); } // End --> </script> 第二步:把如下代码加入到<body>区域中 <center> <h3>进制转换</h3> <br> <form method="post"> <table border=0 align=center> <tr> <td align=right> <p>二进制:</p> </td> <td><input name="b002" value="0" onChange="EvalAny(this, 2)" size=27></td> </tr> <tr> <td align=right>三进制:</td> <td><input name="t003" value="0" onChange="EvalAny(this, 3)" size=21></td> </tr> <tr> <td align=right>五进制:</td> <td><input name="q005" value="0" onChange="EvalAny(this, 5)" size=16></td> </tr> <tr> <td align=right>八进制:</td> <td><input name="o008" value="0" onChange="EvalAny(this, 8)" size=12></td> </tr> <tr> <td align=right>十进制:</td> <td><input name="d010" value="0" onChange="EvalAny(this, 10)" size=11></td> </tr> <tr> <td align=right>十六进制:</td> <td><input name="h016" value="0" onChange="EvalAny(this, 16)" size=8></td> </tr> </table> </form> </center> 载入中... 载入中...
Copyright © 2000-2006 Nkcn.Net 天津网站优化 All Rights Reserve.