aboutsummaryrefslogtreecommitdiff
path: root/challenge-120/james-smith/cesil
diff options
context:
space:
mode:
authordrbaggy <js5@sanger.ac.uk>2021-07-05 18:33:07 +0100
committerdrbaggy <js5@sanger.ac.uk>2021-07-05 18:33:07 +0100
commit4f307a5da9cefae66eea08ecf83d3a47e11ac9fa (patch)
treeb869aa91fca8048198e2f589735c5ca444eff9a5 /challenge-120/james-smith/cesil
parente0e48a4be0ef24804b201dc94461b472e9082221 (diff)
downloadperlweeklychallenge-club-4f307a5da9cefae66eea08ecf83d3a47e11ac9fa.tar.gz
perlweeklychallenge-club-4f307a5da9cefae66eea08ecf83d3a47e11ac9fa.tar.bz2
perlweeklychallenge-club-4f307a5da9cefae66eea08ecf83d3a47e11ac9fa.zip
added some code to format the test results nicely....
Diffstat (limited to 'challenge-120/james-smith/cesil')
-rw-r--r--challenge-120/james-smith/cesil/ch-2.ces110
1 files changed, 110 insertions, 0 deletions
diff --git a/challenge-120/james-smith/cesil/ch-2.ces b/challenge-120/james-smith/cesil/ch-2.ces
new file mode 100644
index 0000000000..193ca339d2
--- /dev/null
+++ b/challenge-120/james-smith/cesil/ch-2.ces
@@ -0,0 +1,110 @@
+ LINE
+ LOAD 0
+ STORE success
+ STORE tests
+Next IN
+ JINEG End
+ SUBTRACT 10
+ JINEG bl1
+ JUMP bl1e
+bl1 PRINT "0"
+bl1e ADD 10
+ OUT
+ STORE hr
+ PRINT ":"
+ IN
+ SUBTRACT 10
+ JINEG bl2
+ JUMP bl2e
+bl2 PRINT "0"
+bl2e ADD 10
+ OUT
+ STORE mn
+ IN
+ STORE ans
+ LOAD mn
+ PRINT " => "
+ MULTIPLY -11
+ DIVIDE 2
+ STORE t
+ LOAD hr
+ SUBTRACT 12
+ JINEG lt12
+ JUMP gt12
+lt12 ADD 12
+gt12 MULTIPLY 30
+ ADD t
+ JINEG lt0
+ JUMP gt0
+lt0 MULTIPLY -1
+gt0 SUBTRACT 180
+ JINEG ltx0
+ MULTIPLY -1
+ltx0 ADD 80
+ JINEG lt100
+ JUMP gt100
+lt100 PRINT " "
+ ADD 90
+ JINEG lt10
+ JUMP gt10
+lt10 PRINT " "
+gt10 SUBTRACT 90
+gt100 ADD 100
+ OUT
+ PRINT " : "
+ SUBTRACT ans
+ JIZERO Ok
+ PRINT "-- should be "
+ LOAD ans
+ OUT
+ PRINT "?"
+ JUMP Line
+Ok PRINT "OK"
+ LOAD success
+ ADD 1
+ STORE success
+Line LINE
+ LOAD tests
+ ADD 1
+ STORE tests
+ JUMP Next
+End LINE
+ PRINT "TESTS: "
+ LOAD success
+ OUT
+ PRINT " of "
+ LOAD tests
+ OUT
+ PRINT " passed"
+ LINE
+ LINE
+ HALT
+ %
+ 3
+ 18
+ 9
+ 4
+ 20
+ 10
+ 4
+ 40
+ 100
+ 3
+ 10
+ 35
+ 4
+ 0
+ 120
+ 8
+ 0
+ 120
+ 16
+ 0
+ 120
+ 18
+ 0
+ 180
+ 20
+ 0
+ 120
+ -1