Language detail: dc
Coverage: 2.19%
|
number of '+' ratings |
contribution for coverage |
Unsolved challenges
- LL Golf Hole 9 - トラックバックを打つ (Nested Flatten)
- 文字列型日時ののN秒後時間取得 (Nested Flatten)
- LL Golf Hole 8 - 横向きのピラミッドを作る (Nested Flatten)
- LL Golf Hole 7 - バイト数を読みやすくする (Nested Flatten)
- LL Golf Hole 6 - 10進数を2進数に基数変換する (Nested Flatten)
codes
立方根の計算
(Nested
Flatten)
1 | [_1*]ss[q]sq[d2*rd*lar/+3/ddd**la-d0>sld>qlrx]sr[14kd0=q.1ddd*d**d**sddsa10/lrx]sc
|
dcのマクロ。dcを起動して投稿のマクロを入力後、例えば以下のようにすると三乗根を計算する。
10 lcxp
この問題では1000未満という条件があるので大丈夫だが、あまり大きい数を入れるとSegmentation faultで落ちる。自分を呼び出すことで繰り返しを実現しているので呼び出しが深くなることが問題と思われる。
1 | [_1*]ss[q]sq[d2*rd*lar/+3/ddd**la-d0>sld>qlrx]sr[13k.1d*dd*d**sddsa10/lrx]sc
|
与えられた数字のケタ数
(Nested
Flatten)
dcのマクロで。投稿のマクロを入力後、例えば次のように入力するとスタックのトップ二つに結果がプッシュされているのが見える。
2469 ldxf
入力は負の数でも良い。dcでは負数はマイナス記号ではなくアンダースコアで指定する。
_34567 ldxf
1 | [_1*]sn[Ll10r^q]sq[d10>q10/Ll1+sllax]sa[d0>n0sllax]sd
|



shg #2909() [ dc ] Rating0/0=0.00
いまごろだが問題を読み違えていたことに気付いたので訂正(一行目)。前のマクロでは位と最高位の数字を取り出していた。また、その目的だったとしても前の投稿は冗長だったので短かくしたものをついでに(二行目)。以下は実行例。数字のみの行は出力。
言語一覧へのdcの追加ありがとうございます。
Rating0/0=0.00-0+