pre_testing3/postfix_test9.scala
author Christian Urban <christian.urban@kcl.ac.uk>
Fri, 27 Nov 2020 00:55:24 +0000
changeset 373 0d29bc6ba639
parent 346 ed1b6b8c36e5
permissions -rw-r--r--
updated
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
346
ed1b6b8c36e5 updated
Christian Urban <christian.urban@kcl.ac.uk>
parents: 300
diff changeset
     1
import CW8b._
300
be9900ba65ff updated testing files
Christian Urban <urbanc@in.tum.de>
parents: 249
diff changeset
     2
249
65cb10f8014a updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     3
65cb10f8014a updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     4
assert(syard(split("3 + 4 * ( 2 - 1 )")) == List("3", "4", "2", "1", "-", "*", "+"))
65cb10f8014a updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     5
assert(syard(split("( ( ( 3 ) ) + ( ( 4 + ( 5 ) ) ) )")) == List("3", "4", "5", "+", "+"))
65cb10f8014a updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     6
assert(syard(split("5 + 7 / 2")) == List("5", "7", "2", "/", "+"))
65cb10f8014a updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     7
assert(syard(split("5 * 7 / 2")) == List("5", "7", "*", "2", "/"))
65cb10f8014a updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     8
assert(syard(split("3 + 4 * 8 / ( 5 - 1 ) ^ 2 ^ 3")) == List("3", "4", "8", "*", "5", "1", "-", "2", "3", "^", "^", "/", "+"))
65cb10f8014a updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     9
65cb10f8014a updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    10
65cb10f8014a updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    11
65cb10f8014a updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    12
assert(compute(syard(split("3 + 4 * ( 2 - 1 )"))) == 7)
65cb10f8014a updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    13
assert(compute(syard(split("10 + 12 * 33"))) == 406)
65cb10f8014a updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    14
assert(compute(syard(split("( 5 + 7 ) * 2"))) == 24)
65cb10f8014a updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    15
assert(compute(syard(split("5 + 7 / 2"))) == 8)
65cb10f8014a updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    16
assert(compute(syard(split("5 * 7 / 2"))) == 17)
65cb10f8014a updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    17
assert(compute(syard(split("9 + 24 / ( 7 - 3 )"))) == 15)
65cb10f8014a updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    18
assert(compute(syard(split("4 ^ 3 ^ 2"))) == 262144)
65cb10f8014a updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    19
assert(compute(syard(split("4 ^ ( 3 ^ 2 )"))) == 262144)
65cb10f8014a updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    20
assert(compute(syard(split("( 4 ^ 3 ) ^ 2"))) == 4096)
65cb10f8014a updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    21
assert(compute(syard(split("( 3 + 1 ) ^ 2 ^ 3"))) == 65536)