2017-08-13 18 views
1

私は検索し、stackoverflowと他のサイトで与えられたすべての可能な答えを試みたが、私は[row_no] .length.Iを使用して列の長さを取得することができません。 2つのループで2次元マトリックスを印刷すると、すべてが正しく印刷されます。 私のコードチャンクはここにある: -javascriptで2次元行列の列長を取得できませんか?

var a=[],i,j,s='',k=0; 
for(var i=0;i<4;i++) 
{ 
    s=readline().split(" "); 
    a[i]=[]; 

    for(var j=0;j<s.length;j++) 
    { 
     a[i][j]=s[j]; 
    } 
} 

int型COL = [3] .LENGTH; // ideone.comにランタイムエラーを与えます。

私はまた、自分のコードへのリンクを与えています: - https://ideone.com/eExitl

このコードは2d行列を正しく出力しますが、[row_no] .lengthは実行時エラーを出します。

for(i=0;i<a.length;i++) 
{ 
    print(a[i].length); 
    for(j=0;j<a[i].length;j++) 
    s+=a[i][j]+' '; 
    print(s); 
    s=''; 
} 

ありがとうございます!!!

+0

どこで定義されていますか? –

+0

@ ChrisCousins、それは私が書いたループは、行列を正しく取っていますが、私は[0] .lengthを出力すると間違った出力を返します。私のコードリンクは:-https://ideone.com/aRMD7F。一度それを訪問してください。 –

答えて

0

いくつかのコーディング習慣は失われにくいです。

int col=a[3].length; 

int? javascriptでは、他の強く型付けされた言語とは対照的に、あなたが確かに知っているように型を直接設定することはありません。あなたは確かにvarまたはletを意味します:

let col=a[3].length; 
+0

、間違って申し訳ありませんが、ここではintを使用していますが、まだvarを使用しています。正しい出力が得られないようにしてください。-https://ideone.com/aRMD7F –

+0

@SahilAggarwal入力にスペースが多すぎます。分割はあまりにも多くの要素をもたらす。それを見てみてください(こちら)(http://ideone.com/f5ZDK1) – Isac

+0

、私はコンソールからの入力を取っている間にすべてのスペースを排除する方がよいでしょう。 –

関連する問題