2017-12-21 17 views
2

を使用してstdoutに、stdoutとディスプレイへの印刷値へのコマンドがあります。プリント値はJドキュメントのこのページではJプログラミング言語

これはのようなので、画面出力のための2のyの値でこれを呼び出すことが可能であろう示唆しているようだ、とstdoutのための4:

「123」1:2 2

しかし、私はこのコードを実行すると、私はエラーを取得する: "ランクエラー"。だから私の質問は、1:2プリミティブを使用して、画面や標準出力にデータ値を出力する方法です。

私は動詞echoの別の例から気付きましたが、これはうまくいくように見えますが、4を1:2に接続する必要があるのはなぜですか?

エコー '123' (1:2 & 4) '123'

ありがとう!

答えて

1

Jは右から左に読みますので、!:の右の引数を2 2として処理しているため、ランクエラーが発生しています。

'123' 1!:2 2 
|rank error 
| '123'1 !:2 2 

あなたは1!:2外国組み合わせの右引数になりたい2を単離することによって、この問題を解決することができます。

'123' 1!:2 (2) NB. Parenthesis to isolate the argument 
123 
123 
    '123' 1!:2 [ 2 NB. verb [ sends the 2 through to 1!:2 
123 
123 
    '123' (1!:2) 2 NB. or you can isolate the conjunction 
123 
123 
+1

「1!:2&2」 –

関連する問題