簡體   English   中英

數字矩陣javascript

[英]Matrix of numbers javascript

我需要幫助JS中的函數,它按照給定的整數N打印矩陣,如下所示:

N = 2;
Matrix: 1 2
        2 3
N = 3;
Matrix: 1 2 3
        2 3 4
        3 4 5

我需要使用2個循環,但我無法弄清楚如何

function solve(args) {
  var n = args[0];  
}

PS:很抱歉將矩陣插入JS代碼,但這樣我可以看到結果。

這是邏輯

 function paintMatrix(n) { for (var i = 1; i <= n; i++) { var result = ""; for (var j = 1; j <= n; j++) { result += (i + j - 1); } console.log(result); } } paintMatrix(3); 

請考慮使用ES6 Array.fillArray.mapArray.join函數的以下簡短解決方案:

function printMatrix(size){
     if (size <= 1) console.log(size); // if 0/1 was passed in - outputs it as is
     var len = size, count = Array(size).fill(null), matrix = "";

     while (len--) matrix = count.map((v, k) => len + 1 + k).join(" ") +"\n" + matrix;
     console.log(matrix);
 }

 console.log("3 dimensional matrix:");
 printMatrix(3);

 console.log("5 dimensional matrix:");
 printMatrix(5);

輸出:

3 dimensional matrix:
1 2 3
2 3 4
3 4 5

5 dimensional matrix:
1 2 3 4 5
2 3 4 5 6
3 4 5 6 7
4 5 6 7 8
5 6 7 8 9
function doMatrix(n){
    var i=0;
    var ret = "";
    for(var x=1+i; x<=n; x++){
      for(var l=x; l<n+x; l++)
           ret += l;
       ret += "\n";
    }
    return ret;
}

https://jsfiddle.net/rksLjjzf/

function martix(number) {
    for (var y = 1; y<=number; y++) {
        for (var x = y; x<number + y; x++) {
            var n = x;
            print(n + '&nspb;');
        }
        print('<br />');
    }
}

其中“print”是將給定輸入寫入“某處”的函數

你可以嘗試這樣的事情:

 function createMatrix(len){ var result = []; for (var i=0; i<len; i++){ result.push(new Array(len).fill(i).map(function(item, index){ return item + index})); } return result; } console.log(createMatrix(3)) 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM