問題タブ [dc]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
dc - GNU dc (電卓) での分岐または if/else
GNU dc で分岐するにはどうすればよいでしょうか? OpenBSD の実装には、else-branch による条件分岐がありますが、GNU の実装にはありません... したがって、条件付きで 1 つのマクロを実行できますが、完了すると、コード内の同じ場所に戻ります。
スタックにセンチネル値を残すことで達成できるように思えますが、それはエラーが発生しやすいです (特に、dc は文字列比較を実行できないため、数字だけのセンチネルが残ります)。
たぶん q/Q と関係がありますか?
これは可能ですか?
bash - DCが出力を壊すのを防ぐ方法
「dc」コマンドを使用して、16 進数から 10 進数に変換しています
問題は、大きな数値で出力が壊れることです
この動作を防ぐにはどうすればよいですか? これを無効にするために渡すオプションまたは引数はありますか?
arrays - dc unix : 同じ配列インデックスに新しい値を格納した後でも初期値を保持する
のマンページにあるこの例を理解できませんdc
:
私にとって答えは2であるべきです:
1 0:a
ここでは、配列 の 0 番目の位置に 1 を格納しa
ます。0Sa
次に、 register のスタックに 0 をプッシュしますa
。2 0:a
ここでも、配列の 0 番目の位置に 2 をa
格納し、その位置に格納されていた前の 1 を上書きします。La
次に、レジスタのスタックに格納されている 0 をポップしa
て、メイン スタックにプッシュします。0;a
ここで再び 0 をメイン スタックにプッシュし、それをポップして配列インデックスとして使用し、配列の 0 番目の場所に格納されている 2a
をメイン スタックにプッシュします。p
ここで、メイン スタックの一番上にある 2 を出力します。したがって、答えは 2 になるはずです。
私は何が欠けていますか?
編集 :