2

J には xor のように機能するプリミティブがあることは知っています~:が、これは実際にはnot equal to (!=)

xor =: 4 : '#.((#:x)~:(#:y))'動詞定義内では、ビットごとの xor のように機能させることができますが、これは数値のバイナリ表現が同じ長さの場合にのみ機能します。if ステートメントを使用して同じサイズのリストを作成し、ビットごとの xor を作成する完全な動詞を作成する以外にできることはありますか。

ご参考までに、私が質問しているのは、Java で作業していた Nim 解決プログラムを J で再作成したいからです。

4

1 に答える 1

2

J には、ビット単位で簡単に作業できるプリミティブがあります。そのプライマリはb.、ディクショナリのドキュメントに詳細が記載されています。特に興味のある xor 動詞は6 b.

使用例は、Rosetta Code エントリのBitwise Operationsにも記載されています。

于 2011-02-20T23:45:46.917 に答える