LoginSignup
0
0

More than 1 year has passed since last update.

stack machineを愛でる。 その8

Posted at

概要

stack machineが、好きだ。
練習問題、やってみた。

練習問題

fizzbuzzを、表示せよ。

考え方

剰余の求め方
iの3の剰余が0ならばskip0へ飛ぶ。

  push  "i"
  get
  push  "3"
  %
  push  "1"
  >
  if  skip0

サンプルコード

  push  "x"
  push  ""
  set
  push  "i"
  push  "0"
  set
loop  push  "i"
  push  "i"
  get
  ++
  set
  get
  push  "i"
  get
  push  "15"
  %
  push  "1"
  >
  if  skip2
  push  "i"
  get
  push  "5"
  %
  push  "1"
  >
  if  skip1
  push  "i"
  get
  push  "3"
  %
  push  "1"
  >
  if  skip0
  push  "x"
  push  "x"
  get
  push  "i"
  get
  add
  set
  push  "x"
  push  "x"
  get
  push  " "
  jp  skip3
skip0  push  "x"
  push  "x"
  get
  push  "fizz "
  jp  skip3
skip1  push  "x"
  push  "x"
  get
  push  "buzz "
  jp  skip3
skip2  push  "x"
  push  "x"
  get
  push  "fizzbuzz "
skip3  add
  set
  push  "i"
  get
  push  "100"
  >
  if  loop
  end


成果物

以上。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0