marking1/collatz_test2.scala
author Christian Urban <urbanc@in.tum.de>
Wed, 07 Aug 2019 16:15:42 +0100
changeset 273 9cf4d3c3abd1
parent 267 10a2ef26a92c
child 281 32dfd2ca577b
permissions -rw-r--r--
updated
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
267
10a2ef26a92c updated myassert workaround
Christian Urban <urbanc@in.tum.de>
parents: 212
diff changeset
     1
def myassert(cond : => Boolean) = {
10a2ef26a92c updated myassert workaround
Christian Urban <urbanc@in.tum.de>
parents: 212
diff changeset
     2
  try {
10a2ef26a92c updated myassert workaround
Christian Urban <urbanc@in.tum.de>
parents: 212
diff changeset
     3
    assert(cond)
10a2ef26a92c updated myassert workaround
Christian Urban <urbanc@in.tum.de>
parents: 212
diff changeset
     4
  } catch { 
10a2ef26a92c updated myassert workaround
Christian Urban <urbanc@in.tum.de>
parents: 212
diff changeset
     5
    case _ : Throwable => System.exit(1)
10a2ef26a92c updated myassert workaround
Christian Urban <urbanc@in.tum.de>
parents: 212
diff changeset
     6
  }
10a2ef26a92c updated myassert workaround
Christian Urban <urbanc@in.tum.de>
parents: 212
diff changeset
     7
}
158
f60e0908f80b updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     8
267
10a2ef26a92c updated myassert workaround
Christian Urban <urbanc@in.tum.de>
parents: 212
diff changeset
     9
myassert(collatz_max(10) == (19, 9))
158
f60e0908f80b updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    10
267
10a2ef26a92c updated myassert workaround
Christian Urban <urbanc@in.tum.de>
parents: 212
diff changeset
    11
myassert(collatz_max(100) == (118, 97))
158
f60e0908f80b updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    12
267
10a2ef26a92c updated myassert workaround
Christian Urban <urbanc@in.tum.de>
parents: 212
diff changeset
    13
myassert(collatz_max(1000) == (178, 871))
158
f60e0908f80b updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    14
267
10a2ef26a92c updated myassert workaround
Christian Urban <urbanc@in.tum.de>
parents: 212
diff changeset
    15
myassert(collatz_max(10000) == (261, 6171))
10a2ef26a92c updated myassert workaround
Christian Urban <urbanc@in.tum.de>
parents: 212
diff changeset
    16
10a2ef26a92c updated myassert workaround
Christian Urban <urbanc@in.tum.de>
parents: 212
diff changeset
    17
myassert(collatz_max(100000) == (350, 77031))
158
f60e0908f80b updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    18
267
10a2ef26a92c updated myassert workaround
Christian Urban <urbanc@in.tum.de>
parents: 212
diff changeset
    19
myassert(collatz_max(1000000) == (524, 837799))
158
f60e0908f80b updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    20
267
10a2ef26a92c updated myassert workaround
Christian Urban <urbanc@in.tum.de>
parents: 212
diff changeset
    21
myassert(collatz_max(2) == (1, 2))
10a2ef26a92c updated myassert workaround
Christian Urban <urbanc@in.tum.de>
parents: 212
diff changeset
    22
10a2ef26a92c updated myassert workaround
Christian Urban <urbanc@in.tum.de>
parents: 212
diff changeset
    23
myassert(collatz_max(77000) == (339, 52527))