これは、Ubuntu Online、Fedora Online、Windowsオンラインエミュレーター、MACOSオンラインエミュレーターなどの複数の無料オンラインワークステーションの9つを使用してOnWorks無料ホスティングプロバイダーで実行できるコマンドdcplanXNUMXです。
プログラム:
NAME
dc-卓上計算機
SYNOPSIS
dc [ file ]
DESCRIPTION
Dc 任意精度の卓上計算機です。 通常、XNUMX進整数で動作します。
ただし、入力ベース、出力ベース、および小数桁数を指定することもできます。
維持されます。 の全体的な構造 dc スタッキング(逆ポーランド)計算機です。 もし
引数が指定され、入力はそのファイルから最後まで取得され、次に標準から取得されます
入力。 次の構造が認識されます。
number数値の値がスタックにプッシュされます。 数字は途切れのない文字列です
数字 0-9A-F or 0-9a-f。 小文字で始まるXNUMX進数
関連するコマンドと区別するために、文字の前にゼロを付ける必要があります
手紙で。 アンダースコアが前に付く場合があります _ 負の数を入力します。
数値には小数点が含まれる場合があります。
+-/ *%^
減算乗算除算剰余を加算するか、上のXNUMXつの値をべき乗します。
スタック。 XNUMXつのエントリがスタックからポップされます。 結果はスタックにプッシュされます
彼らの代わりに。 指数の小数部分は無視されます。
sx
Sx スタックの一番上をポップして、という名前のレジスタに格納します xここで、 x いずれか
キャラクター。 運用中 S 登録 x はスタックとして扱われ、値は
それを押した。
lx
Lx レジスタに値をプッシュします x スタックに。 登録簿 x 変更されません。 全て
レジスタはゼロ値で始まります。 運用中 L 登録 x として扱われます
スタックとその最上位の値がメインスタックにポップされます。
d スタックの最上位の値を複製します。
p スタックの一番上の値を出力します。 上限値は変更されません。 P 解釈する
スタックの一番上をテキスト文字列として削除し、印刷します。
f スタックに値を出力します。
q
Q プログラムを終了します。 文字列を実行する場合、再帰レベルはXNUMX倍になります。
運用中 Q スタックの最上位の値がポップされ、文字列が実行されます
レベルはその値によってポップされます。
x スタックの最上位要素を文字列として扱い、文字列として実行します
of dc コマンド。
X スタックの一番上の数字をそのスケールファクターに置き換えます。
[ ... ]
括弧で囲まれたテキスト文字列をスタックの一番上に置きます。
<x
>x
=x スタックの上位XNUMXつの要素をポップして比較します。 登録 x それらが実行された場合
記載された関係に従います。
v スタックの一番上の要素をその平方根に置き換えます。 既存のフラクショナル
引数の一部が考慮されますが、それ以外の場合、スケールファクターは
無視されます。
! 行の残りの部分をシェルコマンドとして解釈します。
c スタックをクリアします。
i スタックの最上位の値がポップされ、さらに入力するための数値ベースとして使用されます。
I スタックの一番上にある入力ベースを押します。
o スタックの最上位の値がポップされ、さらに番号ベースとして使用されます
出力。 10より大きいベースでは、各「桁」はXNUMX進数のグループとして出力されます。
O スタックの一番上にある出力ベースを押します。
k スタックの一番上をポップし、その値を非負のスケールファクターとして使用します。
適切な数の場所が出力に印刷され、
乗算、除算、およびべき乗。 スケールファクターの相互作用、
入力ベース、および出力ベースは、すべてを一緒に変更すれば合理的です。
z スタックレベルをスタックにプッシュします。
Z スタックの一番上の数字をその長さに置き換えます。
? 入力の行は、入力ソース(通常は端末)から取得され、実行されます。
; : によって使われた bc 配列操作用。
によって設定されたスケールファクター k 小数点の右側に保持される桁数を決定します
点。 もしも s 現在のスケールファクターです。 sa は第XNUMXオペランドのスケールであり、 sb は
秒のスケール、および b は(整数)第XNUMXオペランドであり、結果はに切り捨てられます
次のスケール。
+、-max(sa、sb)
* min(sa+sb 、max(s、sa、sb))
/ s
% 被除数=除数*商+剰余; 残りは配当の兆候があります
^ min(sa×|b|、max(s、sa))
v max(s、sa)
例
の最初のXNUMX個の値を出力します n!
[la1 + dsa * pla10> y] sy
0sa1
リックス
SOURCE
/src/cmd/dc.c
onworks.netサービスを使用してオンラインでdcplan9を使用する