从J中的行读取输入

时间:2012-12-03 23:42:59

标签: input j

我是J的新手(为了好玩而学习它),我正在尝试从键盘读取数据。我试图制作一个读取字符串并反转它的小脚本:

|.(1!:1 3)

当我运行它时,我得到排名错误。 (我使用1!:1 3而不是定义动词,因为codegolf ......) 是否有一个命令可以检查1的等级!:1 3?

1 个答案:

答案 0 :(得分:2)

这是外国人常犯的错误。

外国1!:1的{​​{3}}没有帮助,因为它确实是:

1!:1 y      Read. y is a file name or a file number (produced by 1!:21); the 
result is a string of the file contents., e.g. 1!:1 <'abc.q'. The following 
values for y are also permitted:

1 read from the keyboard (does not work within a script)
3 read from standard input (stdin) 

因此,将y替换为3应该有效,对吗?嗯,不完全是因为你真正以书面形式提出的论点:

1!:1 3

是由1 3组成的数组。有点像给它:

1!:(1 3)

何时需要:

1!:1 (3)

对于代码高尔夫目的,请使用右括号:

1!:1]3