JavaScript系列:计算一个结果为30的加法智力题

用下面这段JavaScript代码可以计算出来
  1. function findTheThreeNum(numFix) {
  2. var a = ["1", "3", "5", "7", "9", "11", "13", "15", "30"];
  3. var numFixArray = convertToTheNumFix(a, numFix);
  4. var sum = numFixArray.pop();
  5. var result = new Array();
  6. for (var i = 0; i < numFixArray.length; ++i) {
  7. for (var j = 0; j < numFixArray.length; ++j) {
  8. for (var k = 0; k < numFixArray.length; ++k) {
  9. var tempSum = numFixArray[i] + numFixArray[j] + numFixArray[k];
  10. if (tempSum == sum)
  11. return [a[i], a[j], a[k]];
  12. }
  13. }
  14. }
  15. return null;
  16. }
  17. function showMultiNumFix() {
  18. for (var i = 2; i <= 100; ++i) {
  19. var result = findTheThreeNum(i);
  20. if (result != null) {
  21. document.writeln("<p> 如果是" + i + "进制, 是: " + result.toString()+ "</p>");
  22. }
  23. }
  24. }

结果如下:

如果是5进制, 是: 1,11,13

如果是7进制, 是: 1,11,15

如果是9进制, 是: 1,13,15

如果是11进制, 是: 1,15,15

如果是13进制, 是: 3,15,15

如果是15进制, 是: 5,15,15

如果是17进制, 是: 7,15,15

如果是19进制, 是: 9,15,15





posted @ 2016-03-23 21:44  拿走不谢  阅读(1202)  评论(0编辑  收藏  举报