From 46d4fa5e9db24f8ea89a61742cf6bbba982188d5 Mon Sep 17 00:00:00 2001 From: Yadunand Prem Date: Thu, 15 Sep 2022 11:21:56 +0800 Subject: [PATCH] feat: add Lab4 --- Array.java => Lab1/Array.java | 0 ArrayTest.java => Lab1/ArrayTest.java | 0 ArrivalEvent.java => Lab1/ArrivalEvent.java | 0 CS2030STest.java => Lab1/CS2030STest.java | 0 Customer.java => Lab1/Customer.java | 0 .../DepartureEvent.java | 0 Event.java => Lab1/Event.java | 0 .../JoinCounterQueueEvent.java | 0 .../JoinShopQueueEvent.java | 0 Lab1.java => Lab1/Lab1.java | 0 Lab2.java => Lab1/Lab2.java | 0 Lab3.java => Lab1/Lab3.java | 0 Makefile => Lab1/Makefile | 0 Queue.java => Lab1/Queue.java | 0 QueueTest.java => Lab1/QueueTest.java | 0 .../ServiceBeginEvent.java | 0 .../ServiceCounter.java | 0 .../ServiceEndEvent.java | 0 Shop.java => Lab1/Shop.java | 0 .../ShopSimulation.java | 0 Simulation.java => Lab1/Simulation.java | 0 Simulator.java => Lab1/Simulator.java | 0 {inputs => Lab1/inputs}/Lab1.1.in | 0 {inputs => Lab1/inputs}/Lab1.2.in | 0 {inputs => Lab1/inputs}/Lab1.3.in | 0 {inputs => Lab1/inputs}/Lab1.4.in | 0 {inputs => Lab1/inputs}/Lab1.5.in | 0 {inputs => Lab1/inputs}/Lab2.1.in | 0 {inputs => Lab1/inputs}/Lab2.10.in | 0 {inputs => Lab1/inputs}/Lab2.2.in | 0 {inputs => Lab1/inputs}/Lab2.3.in | 0 {inputs => Lab1/inputs}/Lab2.4.in | 0 {inputs => Lab1/inputs}/Lab2.5.in | 0 {inputs => Lab1/inputs}/Lab2.6.in | 0 {inputs => Lab1/inputs}/Lab2.7.in | 0 {inputs => Lab1/inputs}/Lab2.8.in | 0 {inputs => Lab1/inputs}/Lab2.9.in | 0 {inputs => Lab1/inputs}/Lab3.1.in | 0 {inputs => Lab1/inputs}/Lab3.10.in | 0 {inputs => Lab1/inputs}/Lab3.11.in | 0 {inputs => Lab1/inputs}/Lab3.12.in | 0 {inputs => Lab1/inputs}/Lab3.13.in | 0 {inputs => Lab1/inputs}/Lab3.14.in | 0 {inputs => Lab1/inputs}/Lab3.15.in | 0 {inputs => Lab1/inputs}/Lab3.2.in | 0 {inputs => Lab1/inputs}/Lab3.3.in | 0 {inputs => Lab1/inputs}/Lab3.4.in | 0 {inputs => Lab1/inputs}/Lab3.5.in | 0 {inputs => Lab1/inputs}/Lab3.6.in | 0 {inputs => Lab1/inputs}/Lab3.7.in | 0 {inputs => Lab1/inputs}/Lab3.8.in | 0 {inputs => Lab1/inputs}/Lab3.9.in | 0 {outputs => Lab1/outputs}/ArrayTest.out | 0 {outputs => Lab1/outputs}/Lab1.1.out | 0 {outputs => Lab1/outputs}/Lab1.2.out | 0 {outputs => Lab1/outputs}/Lab1.3.out | 0 {outputs => Lab1/outputs}/Lab1.4.out | 0 {outputs => Lab1/outputs}/Lab1.5.out | 0 {outputs => Lab1/outputs}/Lab2.1.out | 0 {outputs => Lab1/outputs}/Lab2.10.out | 0 {outputs => Lab1/outputs}/Lab2.2.out | 0 {outputs => Lab1/outputs}/Lab2.3.out | 0 {outputs => Lab1/outputs}/Lab2.4.out | 0 {outputs => Lab1/outputs}/Lab2.5.out | 0 {outputs => Lab1/outputs}/Lab2.6.out | 0 {outputs => Lab1/outputs}/Lab2.7.out | 0 {outputs => Lab1/outputs}/Lab2.8.out | 0 {outputs => Lab1/outputs}/Lab2.9.out | 0 {outputs => Lab1/outputs}/Lab3.1.out | 0 {outputs => Lab1/outputs}/Lab3.10.out | 0 {outputs => Lab1/outputs}/Lab3.11.out | 0 {outputs => Lab1/outputs}/Lab3.12.out | 0 {outputs => Lab1/outputs}/Lab3.13.out | 0 {outputs => Lab1/outputs}/Lab3.14.out | 0 {outputs => Lab1/outputs}/Lab3.15.out | 0 {outputs => Lab1/outputs}/Lab3.2.out | 0 {outputs => Lab1/outputs}/Lab3.3.out | 0 {outputs => Lab1/outputs}/Lab3.4.out | 0 {outputs => Lab1/outputs}/Lab3.5.out | 0 {outputs => Lab1/outputs}/Lab3.6.out | 0 {outputs => Lab1/outputs}/Lab3.7.out | 0 {outputs => Lab1/outputs}/Lab3.8.out | 0 {outputs => Lab1/outputs}/Lab3.9.out | 0 {outputs => Lab1/outputs}/QueueTest.out | 0 test.sh => Lab1/test.sh | 5 +- Lab4/Action.java | 11 + Lab4/Actionable.java | 11 + Lab4/Applicable.java | 12 + Lab4/CS2030STest.java | 75 ++++++ Lab4/Immutator.java | 11 + Lab4/Immutatorable.java | 12 + Lab4/Improbable.java | 9 + Lab4/IsModEq.java | 12 + Lab4/Lab4.java | 247 ++++++++++++++++++ Lab4/Lab4.pdf | Bin 0 -> 178403 bytes Lab4/Print.java | 9 + Lab4/Probably.java | 96 +++++++ Lab4/Test1.java | 35 +++ Lab4/Test2.java | 45 ++++ Lab4/Test3.java | 57 ++++ Lab4/Test4.java | 54 ++++ Lab4/Test5.java | 48 ++++ Lab4/Test6.java | 65 +++++ Lab4/TestProbably.java | 61 +++++ Lab4/inputs/Lab4.1.in | 1 + Lab4/inputs/Lab4.2.in | 1 + Lab4/inputs/Lab4.3.in | 1 + Lab4/inputs/Lab4.4.in | 1 + Lab4/inputs/Lab4.5.in | 1 + Lab4/inputs/Lab4.6.in | 1 + Lab4/outputs/Lab4.1.out | 2 + Lab4/outputs/Lab4.2.out | 3 + Lab4/outputs/Lab4.3.out | 8 + Lab4/outputs/Lab4.4.out | 7 + Lab4/outputs/Lab4.5.out | 5 + Lab4/outputs/Lab4.6.out | 8 + 116 files changed, 912 insertions(+), 2 deletions(-) rename Array.java => Lab1/Array.java (100%) rename ArrayTest.java => Lab1/ArrayTest.java (100%) rename ArrivalEvent.java => Lab1/ArrivalEvent.java (100%) rename CS2030STest.java => Lab1/CS2030STest.java (100%) rename Customer.java => Lab1/Customer.java (100%) rename DepartureEvent.java => Lab1/DepartureEvent.java (100%) rename Event.java => Lab1/Event.java (100%) rename JoinCounterQueueEvent.java => Lab1/JoinCounterQueueEvent.java (100%) rename JoinShopQueueEvent.java => Lab1/JoinShopQueueEvent.java (100%) rename Lab1.java => Lab1/Lab1.java (100%) rename Lab2.java => Lab1/Lab2.java (100%) rename Lab3.java => Lab1/Lab3.java (100%) rename Makefile => Lab1/Makefile (100%) rename Queue.java => Lab1/Queue.java (100%) rename QueueTest.java => Lab1/QueueTest.java (100%) rename ServiceBeginEvent.java => Lab1/ServiceBeginEvent.java (100%) rename ServiceCounter.java => Lab1/ServiceCounter.java (100%) rename ServiceEndEvent.java => Lab1/ServiceEndEvent.java (100%) rename Shop.java => Lab1/Shop.java (100%) rename ShopSimulation.java => Lab1/ShopSimulation.java (100%) rename Simulation.java => Lab1/Simulation.java (100%) rename Simulator.java => Lab1/Simulator.java (100%) rename {inputs => Lab1/inputs}/Lab1.1.in (100%) rename {inputs => Lab1/inputs}/Lab1.2.in (100%) rename {inputs => Lab1/inputs}/Lab1.3.in (100%) rename {inputs => Lab1/inputs}/Lab1.4.in (100%) rename {inputs => Lab1/inputs}/Lab1.5.in (100%) rename {inputs => Lab1/inputs}/Lab2.1.in (100%) rename {inputs => Lab1/inputs}/Lab2.10.in (100%) rename {inputs => Lab1/inputs}/Lab2.2.in (100%) rename {inputs => Lab1/inputs}/Lab2.3.in (100%) rename {inputs => Lab1/inputs}/Lab2.4.in (100%) rename {inputs => Lab1/inputs}/Lab2.5.in (100%) rename {inputs => Lab1/inputs}/Lab2.6.in (100%) rename {inputs => Lab1/inputs}/Lab2.7.in (100%) rename {inputs => Lab1/inputs}/Lab2.8.in (100%) rename {inputs => Lab1/inputs}/Lab2.9.in (100%) rename {inputs => Lab1/inputs}/Lab3.1.in (100%) rename {inputs => Lab1/inputs}/Lab3.10.in (100%) rename {inputs => Lab1/inputs}/Lab3.11.in (100%) rename {inputs => Lab1/inputs}/Lab3.12.in (100%) rename {inputs => Lab1/inputs}/Lab3.13.in (100%) rename {inputs => Lab1/inputs}/Lab3.14.in (100%) rename {inputs => Lab1/inputs}/Lab3.15.in (100%) rename {inputs => Lab1/inputs}/Lab3.2.in (100%) rename {inputs => Lab1/inputs}/Lab3.3.in (100%) rename {inputs => Lab1/inputs}/Lab3.4.in (100%) rename {inputs => Lab1/inputs}/Lab3.5.in (100%) rename {inputs => Lab1/inputs}/Lab3.6.in (100%) rename {inputs => Lab1/inputs}/Lab3.7.in (100%) rename {inputs => Lab1/inputs}/Lab3.8.in (100%) rename {inputs => Lab1/inputs}/Lab3.9.in (100%) rename {outputs => Lab1/outputs}/ArrayTest.out (100%) rename {outputs => Lab1/outputs}/Lab1.1.out (100%) rename {outputs => Lab1/outputs}/Lab1.2.out (100%) rename {outputs => Lab1/outputs}/Lab1.3.out (100%) rename {outputs => Lab1/outputs}/Lab1.4.out (100%) rename {outputs => Lab1/outputs}/Lab1.5.out (100%) rename {outputs => Lab1/outputs}/Lab2.1.out (100%) rename {outputs => Lab1/outputs}/Lab2.10.out (100%) rename {outputs => Lab1/outputs}/Lab2.2.out (100%) rename {outputs => Lab1/outputs}/Lab2.3.out (100%) rename {outputs => Lab1/outputs}/Lab2.4.out (100%) rename {outputs => Lab1/outputs}/Lab2.5.out (100%) rename {outputs => Lab1/outputs}/Lab2.6.out (100%) rename {outputs => Lab1/outputs}/Lab2.7.out (100%) rename {outputs => Lab1/outputs}/Lab2.8.out (100%) rename {outputs => Lab1/outputs}/Lab2.9.out (100%) rename {outputs => Lab1/outputs}/Lab3.1.out (100%) rename {outputs => Lab1/outputs}/Lab3.10.out (100%) rename {outputs => Lab1/outputs}/Lab3.11.out (100%) rename {outputs => Lab1/outputs}/Lab3.12.out (100%) rename {outputs => Lab1/outputs}/Lab3.13.out (100%) rename {outputs => Lab1/outputs}/Lab3.14.out (100%) rename {outputs => Lab1/outputs}/Lab3.15.out (100%) rename {outputs => Lab1/outputs}/Lab3.2.out (100%) rename {outputs => Lab1/outputs}/Lab3.3.out (100%) rename {outputs => Lab1/outputs}/Lab3.4.out (100%) rename {outputs => Lab1/outputs}/Lab3.5.out (100%) rename {outputs => Lab1/outputs}/Lab3.6.out (100%) rename {outputs => Lab1/outputs}/Lab3.7.out (100%) rename {outputs => Lab1/outputs}/Lab3.8.out (100%) rename {outputs => Lab1/outputs}/Lab3.9.out (100%) rename {outputs => Lab1/outputs}/QueueTest.out (100%) rename test.sh => Lab1/test.sh (87%) create mode 100644 Lab4/Action.java create mode 100644 Lab4/Actionable.java create mode 100644 Lab4/Applicable.java create mode 100644 Lab4/CS2030STest.java create mode 100644 Lab4/Immutator.java create mode 100644 Lab4/Immutatorable.java create mode 100644 Lab4/Improbable.java create mode 100644 Lab4/IsModEq.java create mode 100644 Lab4/Lab4.java create mode 100644 Lab4/Lab4.pdf create mode 100644 Lab4/Print.java create mode 100644 Lab4/Probably.java create mode 100644 Lab4/Test1.java create mode 100644 Lab4/Test2.java create mode 100644 Lab4/Test3.java create mode 100644 Lab4/Test4.java create mode 100644 Lab4/Test5.java create mode 100644 Lab4/Test6.java create mode 100644 Lab4/TestProbably.java create mode 100644 Lab4/inputs/Lab4.1.in create mode 100644 Lab4/inputs/Lab4.2.in create mode 100644 Lab4/inputs/Lab4.3.in create mode 100644 Lab4/inputs/Lab4.4.in create mode 100644 Lab4/inputs/Lab4.5.in create mode 100644 Lab4/inputs/Lab4.6.in create mode 100644 Lab4/outputs/Lab4.1.out create mode 100644 Lab4/outputs/Lab4.2.out create mode 100644 Lab4/outputs/Lab4.3.out create mode 100644 Lab4/outputs/Lab4.4.out create mode 100644 Lab4/outputs/Lab4.5.out create mode 100644 Lab4/outputs/Lab4.6.out diff --git a/Array.java b/Lab1/Array.java similarity index 100% rename from Array.java rename to Lab1/Array.java diff --git a/ArrayTest.java b/Lab1/ArrayTest.java similarity index 100% rename from ArrayTest.java rename to Lab1/ArrayTest.java diff --git a/ArrivalEvent.java b/Lab1/ArrivalEvent.java similarity index 100% rename from ArrivalEvent.java rename to Lab1/ArrivalEvent.java diff --git a/CS2030STest.java b/Lab1/CS2030STest.java similarity index 100% rename from CS2030STest.java rename to Lab1/CS2030STest.java diff --git a/Customer.java b/Lab1/Customer.java similarity index 100% rename from Customer.java rename to Lab1/Customer.java diff --git a/DepartureEvent.java b/Lab1/DepartureEvent.java similarity index 100% rename from DepartureEvent.java rename to Lab1/DepartureEvent.java diff --git a/Event.java b/Lab1/Event.java similarity index 100% rename from Event.java rename to Lab1/Event.java diff --git a/JoinCounterQueueEvent.java b/Lab1/JoinCounterQueueEvent.java similarity index 100% rename from JoinCounterQueueEvent.java rename to Lab1/JoinCounterQueueEvent.java diff --git a/JoinShopQueueEvent.java b/Lab1/JoinShopQueueEvent.java similarity index 100% rename from JoinShopQueueEvent.java rename to Lab1/JoinShopQueueEvent.java diff --git a/Lab1.java b/Lab1/Lab1.java similarity index 100% rename from Lab1.java rename to Lab1/Lab1.java diff --git a/Lab2.java b/Lab1/Lab2.java similarity index 100% rename from Lab2.java rename to Lab1/Lab2.java diff --git a/Lab3.java b/Lab1/Lab3.java similarity index 100% rename from Lab3.java rename to Lab1/Lab3.java diff --git a/Makefile b/Lab1/Makefile similarity index 100% rename from Makefile rename to Lab1/Makefile diff --git a/Queue.java b/Lab1/Queue.java similarity index 100% rename from Queue.java rename to Lab1/Queue.java diff --git a/QueueTest.java b/Lab1/QueueTest.java similarity index 100% rename from QueueTest.java rename to Lab1/QueueTest.java diff --git a/ServiceBeginEvent.java b/Lab1/ServiceBeginEvent.java similarity index 100% rename from ServiceBeginEvent.java rename to Lab1/ServiceBeginEvent.java diff --git a/ServiceCounter.java b/Lab1/ServiceCounter.java similarity index 100% rename from ServiceCounter.java rename to Lab1/ServiceCounter.java diff --git a/ServiceEndEvent.java b/Lab1/ServiceEndEvent.java similarity index 100% rename from ServiceEndEvent.java rename to Lab1/ServiceEndEvent.java diff --git a/Shop.java b/Lab1/Shop.java similarity index 100% rename from Shop.java rename to Lab1/Shop.java diff --git a/ShopSimulation.java b/Lab1/ShopSimulation.java similarity index 100% rename from ShopSimulation.java rename to Lab1/ShopSimulation.java diff --git a/Simulation.java b/Lab1/Simulation.java similarity index 100% rename from Simulation.java rename to Lab1/Simulation.java diff --git a/Simulator.java b/Lab1/Simulator.java similarity index 100% rename from Simulator.java rename to Lab1/Simulator.java diff --git a/inputs/Lab1.1.in b/Lab1/inputs/Lab1.1.in similarity index 100% rename from inputs/Lab1.1.in rename to Lab1/inputs/Lab1.1.in diff --git a/inputs/Lab1.2.in b/Lab1/inputs/Lab1.2.in similarity index 100% rename from inputs/Lab1.2.in rename to Lab1/inputs/Lab1.2.in diff --git a/inputs/Lab1.3.in b/Lab1/inputs/Lab1.3.in similarity index 100% rename from inputs/Lab1.3.in rename to Lab1/inputs/Lab1.3.in diff --git a/inputs/Lab1.4.in b/Lab1/inputs/Lab1.4.in similarity index 100% rename from inputs/Lab1.4.in rename to Lab1/inputs/Lab1.4.in diff --git a/inputs/Lab1.5.in b/Lab1/inputs/Lab1.5.in similarity index 100% rename from inputs/Lab1.5.in rename to Lab1/inputs/Lab1.5.in diff --git a/inputs/Lab2.1.in b/Lab1/inputs/Lab2.1.in similarity index 100% rename from inputs/Lab2.1.in rename to Lab1/inputs/Lab2.1.in diff --git a/inputs/Lab2.10.in b/Lab1/inputs/Lab2.10.in similarity index 100% rename from inputs/Lab2.10.in rename to Lab1/inputs/Lab2.10.in diff --git a/inputs/Lab2.2.in b/Lab1/inputs/Lab2.2.in similarity index 100% rename from inputs/Lab2.2.in rename to Lab1/inputs/Lab2.2.in diff --git a/inputs/Lab2.3.in b/Lab1/inputs/Lab2.3.in similarity index 100% rename from inputs/Lab2.3.in rename to Lab1/inputs/Lab2.3.in diff --git a/inputs/Lab2.4.in b/Lab1/inputs/Lab2.4.in similarity index 100% rename from inputs/Lab2.4.in rename to Lab1/inputs/Lab2.4.in diff --git a/inputs/Lab2.5.in b/Lab1/inputs/Lab2.5.in similarity index 100% rename from inputs/Lab2.5.in rename to Lab1/inputs/Lab2.5.in diff --git a/inputs/Lab2.6.in b/Lab1/inputs/Lab2.6.in similarity index 100% rename from inputs/Lab2.6.in rename to Lab1/inputs/Lab2.6.in diff --git a/inputs/Lab2.7.in b/Lab1/inputs/Lab2.7.in similarity index 100% rename from inputs/Lab2.7.in rename to Lab1/inputs/Lab2.7.in diff --git a/inputs/Lab2.8.in b/Lab1/inputs/Lab2.8.in similarity index 100% rename from inputs/Lab2.8.in rename to Lab1/inputs/Lab2.8.in diff --git a/inputs/Lab2.9.in b/Lab1/inputs/Lab2.9.in similarity index 100% rename from inputs/Lab2.9.in rename to Lab1/inputs/Lab2.9.in diff --git a/inputs/Lab3.1.in b/Lab1/inputs/Lab3.1.in similarity index 100% rename from inputs/Lab3.1.in rename to Lab1/inputs/Lab3.1.in diff --git a/inputs/Lab3.10.in b/Lab1/inputs/Lab3.10.in similarity index 100% rename from inputs/Lab3.10.in rename to Lab1/inputs/Lab3.10.in diff --git a/inputs/Lab3.11.in b/Lab1/inputs/Lab3.11.in similarity index 100% rename from inputs/Lab3.11.in rename to Lab1/inputs/Lab3.11.in diff --git a/inputs/Lab3.12.in b/Lab1/inputs/Lab3.12.in similarity index 100% rename from inputs/Lab3.12.in rename to Lab1/inputs/Lab3.12.in diff --git a/inputs/Lab3.13.in b/Lab1/inputs/Lab3.13.in similarity index 100% rename from inputs/Lab3.13.in rename to Lab1/inputs/Lab3.13.in diff --git a/inputs/Lab3.14.in b/Lab1/inputs/Lab3.14.in similarity index 100% rename from inputs/Lab3.14.in rename to Lab1/inputs/Lab3.14.in diff --git a/inputs/Lab3.15.in b/Lab1/inputs/Lab3.15.in similarity index 100% rename from inputs/Lab3.15.in rename to Lab1/inputs/Lab3.15.in diff --git a/inputs/Lab3.2.in b/Lab1/inputs/Lab3.2.in similarity index 100% rename from inputs/Lab3.2.in rename to Lab1/inputs/Lab3.2.in diff --git a/inputs/Lab3.3.in b/Lab1/inputs/Lab3.3.in similarity index 100% rename from inputs/Lab3.3.in rename to Lab1/inputs/Lab3.3.in diff --git a/inputs/Lab3.4.in b/Lab1/inputs/Lab3.4.in similarity index 100% rename from inputs/Lab3.4.in rename to Lab1/inputs/Lab3.4.in diff --git a/inputs/Lab3.5.in b/Lab1/inputs/Lab3.5.in similarity index 100% rename from inputs/Lab3.5.in rename to Lab1/inputs/Lab3.5.in diff --git a/inputs/Lab3.6.in b/Lab1/inputs/Lab3.6.in similarity index 100% rename from inputs/Lab3.6.in rename to Lab1/inputs/Lab3.6.in diff --git a/inputs/Lab3.7.in b/Lab1/inputs/Lab3.7.in similarity index 100% rename from inputs/Lab3.7.in rename to Lab1/inputs/Lab3.7.in diff --git a/inputs/Lab3.8.in b/Lab1/inputs/Lab3.8.in similarity index 100% rename from inputs/Lab3.8.in rename to Lab1/inputs/Lab3.8.in diff --git a/inputs/Lab3.9.in b/Lab1/inputs/Lab3.9.in similarity index 100% rename from inputs/Lab3.9.in rename to Lab1/inputs/Lab3.9.in diff --git a/outputs/ArrayTest.out b/Lab1/outputs/ArrayTest.out similarity index 100% rename from outputs/ArrayTest.out rename to Lab1/outputs/ArrayTest.out diff --git a/outputs/Lab1.1.out b/Lab1/outputs/Lab1.1.out similarity index 100% rename from outputs/Lab1.1.out rename to Lab1/outputs/Lab1.1.out diff --git a/outputs/Lab1.2.out b/Lab1/outputs/Lab1.2.out similarity index 100% rename from outputs/Lab1.2.out rename to Lab1/outputs/Lab1.2.out diff --git a/outputs/Lab1.3.out b/Lab1/outputs/Lab1.3.out similarity index 100% rename from outputs/Lab1.3.out rename to Lab1/outputs/Lab1.3.out diff --git a/outputs/Lab1.4.out b/Lab1/outputs/Lab1.4.out similarity index 100% rename from outputs/Lab1.4.out rename to Lab1/outputs/Lab1.4.out diff --git a/outputs/Lab1.5.out b/Lab1/outputs/Lab1.5.out similarity index 100% rename from outputs/Lab1.5.out rename to Lab1/outputs/Lab1.5.out diff --git a/outputs/Lab2.1.out b/Lab1/outputs/Lab2.1.out similarity index 100% rename from outputs/Lab2.1.out rename to Lab1/outputs/Lab2.1.out diff --git a/outputs/Lab2.10.out b/Lab1/outputs/Lab2.10.out similarity index 100% rename from outputs/Lab2.10.out rename to Lab1/outputs/Lab2.10.out diff --git a/outputs/Lab2.2.out b/Lab1/outputs/Lab2.2.out similarity index 100% rename from outputs/Lab2.2.out rename to Lab1/outputs/Lab2.2.out diff --git a/outputs/Lab2.3.out b/Lab1/outputs/Lab2.3.out similarity index 100% rename from outputs/Lab2.3.out rename to Lab1/outputs/Lab2.3.out diff --git a/outputs/Lab2.4.out b/Lab1/outputs/Lab2.4.out similarity index 100% rename from outputs/Lab2.4.out rename to Lab1/outputs/Lab2.4.out diff --git a/outputs/Lab2.5.out b/Lab1/outputs/Lab2.5.out similarity index 100% rename from outputs/Lab2.5.out rename to Lab1/outputs/Lab2.5.out diff --git a/outputs/Lab2.6.out b/Lab1/outputs/Lab2.6.out similarity index 100% rename from outputs/Lab2.6.out rename to Lab1/outputs/Lab2.6.out diff --git a/outputs/Lab2.7.out b/Lab1/outputs/Lab2.7.out similarity index 100% rename from outputs/Lab2.7.out rename to Lab1/outputs/Lab2.7.out diff --git a/outputs/Lab2.8.out b/Lab1/outputs/Lab2.8.out similarity index 100% rename from outputs/Lab2.8.out rename to Lab1/outputs/Lab2.8.out diff --git a/outputs/Lab2.9.out b/Lab1/outputs/Lab2.9.out similarity index 100% rename from outputs/Lab2.9.out rename to Lab1/outputs/Lab2.9.out diff --git a/outputs/Lab3.1.out b/Lab1/outputs/Lab3.1.out similarity index 100% rename from outputs/Lab3.1.out rename to Lab1/outputs/Lab3.1.out diff --git a/outputs/Lab3.10.out b/Lab1/outputs/Lab3.10.out similarity index 100% rename from outputs/Lab3.10.out rename to Lab1/outputs/Lab3.10.out diff --git a/outputs/Lab3.11.out b/Lab1/outputs/Lab3.11.out similarity index 100% rename from outputs/Lab3.11.out rename to Lab1/outputs/Lab3.11.out diff --git a/outputs/Lab3.12.out b/Lab1/outputs/Lab3.12.out similarity index 100% rename from outputs/Lab3.12.out rename to Lab1/outputs/Lab3.12.out diff --git a/outputs/Lab3.13.out b/Lab1/outputs/Lab3.13.out similarity index 100% rename from outputs/Lab3.13.out rename to Lab1/outputs/Lab3.13.out diff --git a/outputs/Lab3.14.out b/Lab1/outputs/Lab3.14.out similarity index 100% rename from outputs/Lab3.14.out rename to Lab1/outputs/Lab3.14.out diff --git a/outputs/Lab3.15.out b/Lab1/outputs/Lab3.15.out similarity index 100% rename from outputs/Lab3.15.out rename to Lab1/outputs/Lab3.15.out diff --git a/outputs/Lab3.2.out b/Lab1/outputs/Lab3.2.out similarity index 100% rename from outputs/Lab3.2.out rename to Lab1/outputs/Lab3.2.out diff --git a/outputs/Lab3.3.out b/Lab1/outputs/Lab3.3.out similarity index 100% rename from outputs/Lab3.3.out rename to Lab1/outputs/Lab3.3.out diff --git a/outputs/Lab3.4.out b/Lab1/outputs/Lab3.4.out similarity index 100% rename from outputs/Lab3.4.out rename to Lab1/outputs/Lab3.4.out diff --git a/outputs/Lab3.5.out b/Lab1/outputs/Lab3.5.out similarity index 100% rename from outputs/Lab3.5.out rename to Lab1/outputs/Lab3.5.out diff --git a/outputs/Lab3.6.out b/Lab1/outputs/Lab3.6.out similarity index 100% rename from outputs/Lab3.6.out rename to Lab1/outputs/Lab3.6.out diff --git a/outputs/Lab3.7.out b/Lab1/outputs/Lab3.7.out similarity index 100% rename from outputs/Lab3.7.out rename to Lab1/outputs/Lab3.7.out diff --git a/outputs/Lab3.8.out b/Lab1/outputs/Lab3.8.out similarity index 100% rename from outputs/Lab3.8.out rename to Lab1/outputs/Lab3.8.out diff --git a/outputs/Lab3.9.out b/Lab1/outputs/Lab3.9.out similarity index 100% rename from outputs/Lab3.9.out rename to Lab1/outputs/Lab3.9.out diff --git a/outputs/QueueTest.out b/Lab1/outputs/QueueTest.out similarity index 100% rename from outputs/QueueTest.out rename to Lab1/outputs/QueueTest.out diff --git a/test.sh b/Lab1/test.sh similarity index 87% rename from test.sh rename to Lab1/test.sh index f0aa4ff..6c8c075 100755 --- a/test.sh +++ b/Lab1/test.sh @@ -34,7 +34,7 @@ do else out=$(mktemp --suffix=$PROG) fi - java $PROG < inputs/$PROG.$i.in | head -c 50MB > $out + java $PROG < inputs/$PROG.$i.in > $out status="$?" if [ "$status" -ne "0" ] then @@ -72,5 +72,6 @@ then echo "$PROG: passed everything 🎉" fi # Run style checker -java -jar ~cs2030s/bin/checkstyle.jar -c ~cs2030s/bin/cs2030_checks.xml *.java +#java -jar ~cs2030s/bin/checkstyle.jar -c ~cs2030s/bin/cs2030_checks.xml *.java +java -jar ./checkstyle.jar -c ./cs2030_checks.xml *.java # vim:noexpandtab:sw=4:ts=4 diff --git a/Lab4/Action.java b/Lab4/Action.java new file mode 100644 index 0000000..9583f32 --- /dev/null +++ b/Lab4/Action.java @@ -0,0 +1,11 @@ +/** + * The Action interface that can be called + * on an object of type T to act. + * + * Contains a single abstract method call. + * + * CS2030S Lab 4 + * AY22/23 Semester 1 + * + * @author Put Your Name (Lab Group) + */ diff --git a/Lab4/Actionable.java b/Lab4/Actionable.java new file mode 100644 index 0000000..a9e8046 --- /dev/null +++ b/Lab4/Actionable.java @@ -0,0 +1,11 @@ +/** + * The Actionable interface that can + * act when given an action. + * + * Contains a single abstract method act. + * + * CS2030S Lab 4 + * AY22/23 Semester 1 + * + * @author Put Your Name (Lab Group) + */ diff --git a/Lab4/Applicable.java b/Lab4/Applicable.java new file mode 100644 index 0000000..36567f1 --- /dev/null +++ b/Lab4/Applicable.java @@ -0,0 +1,12 @@ +/** + * The Applicable interface that can probably + * transform if given something that is + * probably an Immutator. + * + * Contains a single abstract method apply. + * + * CS2030S Lab 4 + * AY22/23 Semester 1 + * + * @author Put Your Name (Lab Group) + */ diff --git a/Lab4/CS2030STest.java b/Lab4/CS2030STest.java new file mode 100644 index 0000000..b1d12ea --- /dev/null +++ b/Lab4/CS2030STest.java @@ -0,0 +1,75 @@ +import java.net.URI; +import java.util.List; +import javax.tools.DiagnosticCollector; +import javax.tools.SimpleJavaFileObject; +import javax.tools.ToolProvider; +import java.io.PrintStream; +import java.io.ByteArrayOutputStream; + +class CS2030STest { + + private static final String ANSI_RESET = "\u001B[0m"; + private static final String ANSI_RED = "\u001B[31m"; + private static final String ANSI_GREEN = "\u001B[32m"; + + public void expect(String test, Object output, Object expect) { + System.out.print(test); + if ((expect == null && output == null) || output.equals(expect)) { + System.out.println(".. " + ANSI_GREEN + "ok" + ANSI_RESET); + } else { + System.out.println(".. " + ANSI_RED + "failed" + ANSI_RESET); + System.out.println(" expected: " + expect); + System.out.println(" got this: " + output); + } + } + + public static String clean(String txt) { + String res = ""; + for (int i=0; i(), null, null, + List.of(new JavaSourceFromString(statement))) + .call(); + + if (noError != success) { + System.out.println(".. " + ANSI_RED + "failed" + ANSI_RESET); + if (!success) { + System.out.println(" expected compilation error but it compiles fine."); + } else { + System.out.println(" expected the statement to compile without errors but it does not."); + } + } else { + System.out.println(".. " + ANSI_GREEN + "ok" + ANSI_RESET); + } + } +} diff --git a/Lab4/Immutator.java b/Lab4/Immutator.java new file mode 100644 index 0000000..e9f7439 --- /dev/null +++ b/Lab4/Immutator.java @@ -0,0 +1,11 @@ +/** + * The Immutator interface that can transform + * to type T2, an object of type T1. + * + * Contains a single abstract method invoke. + * + * CS2030S Lab 4 + * AY22/23 Semester 1 + * + * @author Put Your Name (Lab Group) + */ diff --git a/Lab4/Immutatorable.java b/Lab4/Immutatorable.java new file mode 100644 index 0000000..84c17e0 --- /dev/null +++ b/Lab4/Immutatorable.java @@ -0,0 +1,12 @@ +/** + * The Immutatorable interface that can + * transform when given something that is + * Immutator. + * + * Contains a single abstract method transform. + * + * CS2030S Lab 4 + * AY22/23 Semester 1 + * + * @author Put Your Name (Lab Group) + */ diff --git a/Lab4/Improbable.java b/Lab4/Improbable.java new file mode 100644 index 0000000..e1fbb21 --- /dev/null +++ b/Lab4/Improbable.java @@ -0,0 +1,9 @@ +/** + * A generic Immutator that takes in an object + * that is T and returns an object that is probably T. + * + * CS2030S Lab 4 + * AY22/23 Semester 1 + * + * @author Put Your Name (Lab Group) + */ diff --git a/Lab4/IsModEq.java b/Lab4/IsModEq.java new file mode 100644 index 0000000..0011860 --- /dev/null +++ b/Lab4/IsModEq.java @@ -0,0 +1,12 @@ +/** + * A non-generic Immutator with parameter + * div and mod that takes in an integer val + * and return the boolean value by checking + * if the given value is equal to mod when + * divided by div. + * + * CS2030S Lab 4 + * AY22/23 Semester 1 + * + * @author Put Your Name (Lab Group) + */ diff --git a/Lab4/Lab4.java b/Lab4/Lab4.java new file mode 100644 index 0000000..e6cb03b --- /dev/null +++ b/Lab4/Lab4.java @@ -0,0 +1,247 @@ +import java.util.Scanner; +import java.io.PrintStream; +import java.io.ByteArrayOutputStream; + +/** + * The main class for CS2030S Lab 4. + * + * @author Wei Tsang + * @version CS2030S AY21/22 Semester 2 + */ +class Lab4 { + + /** + * Inner class for testing. + */ + static class Incr implements Immutator { + public Integer invoke(Integer t1) { + return t1 + 1; + } + } + /** + * Inner class for testing. + */ + static class Length implements Immutator { + public Integer invoke(String t1) { + return t1.length(); + } + } + + /** + * Helper method to clean a string from + * any newline. + * + * @param txt Input string. + * @return The cleaned string. + */ + public static String clean(String txt) { + String res = ""; + for (int i=0; i().invoke(1).toString()); + System.out.println(new Improbable().invoke(null).toString()); + System.out.println(new Improbable().invoke(1).transform(new Incr()).toString()); + System.out.println(new Improbable<>().invoke(new Improbable().invoke(1)).toString()); + } catch(Exception e) { + System.out.println("Error occurred"); + } + } + + /** + * Test #4. + */ + public static void test4() { + try { + System.out.println(Probably.just(4).transform(new Incr()).toString()); + System.out.println(Probably.just(4).transform(new Incr()).transform(new Incr()).toString()); + System.out.println(Probably.just("string").transform(new Length()).toString()); + System.out.println(Probably.just("string").transform(new Length()).transform(new Incr()).toString()); + + System.out.println(Probably.none().transform(new Incr()).toString()); + System.out.println(Probably.none().transform(new Length()).toString()); + System.out.println(Probably.just(null).transform(new Length()).transform(new Incr()).toString()); + } catch(Exception e) { + System.out.println("Error occurred"); + } + } + + /** + * Test #5. + */ + public static void test5() { + Probably> justIncr = Probably.just(new Incr()); + Probably> justLength = Probably.just(new Length()); + Probably> noIncr = Probably.none(); + Probably> noLength = Probably.none(); + + try { + System.out.println(Probably.just(17).check(new IsModEq(3,2)).toString()); + System.out.println(Probably.just(18).check(new IsModEq(3,2)).toString()); + + System.out.println(Probably.just(16).transform(new Incr()).check(new IsModEq(3,2)).toString()); + System.out.println(Probably.just("string").transform(new Length()).transform(new Incr()).transform(new Incr()).check(new IsModEq(3,2)).toString()); + System.out.println(Probably.just(null).check(new IsModEq(0,2)).toString()); + } catch(Exception e) { + System.out.println("Error occurred"); + } + } + + /** + * Test #6. + */ + public static void test6() { + Probably> justIncr = Probably.just(new Incr()); + Probably> justLength = Probably.just(new Length()); + Probably> noIncr = Probably.none(); + Probably> noLength = Probably.none(); + + try { + System.out.println(Probably.just(17).apply(justIncr).toString()); + System.out.println(Probably.none().apply(justIncr).toString()); + System.out.println(Probably.just(17).apply(noIncr).toString()); + System.out.println(Probably.none().apply(noIncr).toString()); + + System.out.println(Probably.just("string").apply(justLength).toString()); + System.out.println(Probably.none().apply(justLength).toString()); + System.out.println(Probably.just("string").apply(noLength).toString()); + System.out.println(Probably.none().apply(noLength).toString()); + } catch(Exception e) { + System.out.println("Error occurred"); + } + } +} diff --git a/Lab4/Lab4.pdf b/Lab4/Lab4.pdf new file mode 100644 index 0000000000000000000000000000000000000000..976400e8c7bdb9210aa955f3b9ad431a74b98607 GIT binary patch literal 178403 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 W+PO^Pd(~1yt5` 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 literal 0 HcmV?d00001 diff --git a/Lab4/Print.java b/Lab4/Print.java new file mode 100644 index 0000000..bbed090 --- /dev/null +++ b/Lab4/Print.java @@ -0,0 +1,9 @@ +/** + * A non-generic Action to print the String + * representation of the object. + * + * CS2030S Lab 4 + * AY22/23 Semester 1 + * + * @author Put Your Name (Lab Group) + */ diff --git a/Lab4/Probably.java b/Lab4/Probably.java new file mode 100644 index 0000000..c27887a --- /dev/null +++ b/Lab4/Probably.java @@ -0,0 +1,96 @@ +/** + * This class implements something that + * probably is just a value but may be nothing. + * We will never return null in this class, but + * we may return something that contains nothing + * where the nothing is a null. + * + * @author XXX + * @version CS2030S AY22/23 Semester 1 + */ +class Probably { + private final T value; + + private static final Probably NONE = new Probably<>(null); + + /** + * Private constructor, can only be invoked inside. + * This is called a factory method. We can only + * create this using the two public static method. + * + * @return The shared NOTHING. + */ + private Probably(T value) { + this.value = value; + } + + /** + * It is probably nothing, no value inside. + * + * @return The shared NOTHING. + */ + public static Probably none() { + @SuppressWarnings("unchecked") + Probably res = (Probably) NONE; + return res; + } + + /** + * It is probably just the given value. + * Unless the value is null, then nothing is + * given again. + * + * @param value Probably this is the value + * unless it is null then we say + * that there is no + * @return The given value or nothing but + * never null. + */ + public static Probably just(T value) { + if (value == null) { + return none(); + } + return (Probably) new Probably<>(value); + } + + /** + * Check for equality between something that + * is probably a value but maybe nothing. + * + * @param obj The other value to be compared. + * @return True if the two values are equal, + * false otherwise. + */ + @Override + public boolean equals(Object obj) { + if (obj == this) { + return true; + } + if (obj instanceof Probably) { + Probably some = (Probably) obj; + if (this.value == some.value) { + return true; + } + if (this.value == null || some.value == null) { + return false; + } + return this.value.equals(some.value); + } + return false; + } + + /** + * String representation of something that + * is probably a value but maybe nothing. + * + * @return The string representation. + */ + @Override + public String toString() { + if (this.value == null) { + return "<>"; + } else { + return "<" + this.value.toString() + ">"; + } + } +} \ No newline at end of file diff --git a/Lab4/Test1.java b/Lab4/Test1.java new file mode 100644 index 0000000..5dd514b --- /dev/null +++ b/Lab4/Test1.java @@ -0,0 +1,35 @@ +import java.io.PrintStream; +import java.io.ByteArrayOutputStream; + +class Test1 { + public static void main(String[] args) { + CS2030STest we = new CS2030STest(); + + PrintStream old = System.out; + ByteArrayOutputStream baos; + PrintStream ps; + + baos = new ByteArrayOutputStream(); + ps = new PrintStream(baos); + System.setOut(ps); + + new Print().call(17); + we.expectPrint("new Print().call(17)", + "17", + baos, + old); + + baos = new ByteArrayOutputStream(); + ps = new PrintStream(baos); + System.setOut(ps); + + new Print().call("string"); + we.expectPrint("new Print().call(\"string\")", + "string", + baos, + old); + + we.showStat(); + we.print(); + } +} \ No newline at end of file diff --git a/Lab4/Test2.java b/Lab4/Test2.java new file mode 100644 index 0000000..e1e22e7 --- /dev/null +++ b/Lab4/Test2.java @@ -0,0 +1,45 @@ +import java.io.PrintStream; +import java.io.ByteArrayOutputStream; + +class Test2 { + public static void main(String[] args) { + CS2030STest we = new CS2030STest(); + + PrintStream old = System.out; + ByteArrayOutputStream baos; + PrintStream ps; + + baos = new ByteArrayOutputStream(); + ps = new PrintStream(baos); + System.setOut(ps); + + Probably.just(4).act(new Print()); + we.expectPrint("Probably.just(4).act(new Print())", + "4", + baos, + old); + + baos = new ByteArrayOutputStream(); + ps = new PrintStream(baos); + System.setOut(ps); + + Probably.just("string").act(new Print()); + we.expectPrint("Probably.just(\"string\").act(new Print())", + "string", + baos, + old); + + baos = new ByteArrayOutputStream(); + ps = new PrintStream(baos); + System.setOut(ps); + + Probably.none().act(new Print()); + we.expectPrint("Probably.none().act(new Print())", + "", + baos, + old); + + we.showStat(); + we.print(); + } +} \ No newline at end of file diff --git a/Lab4/Test3.java b/Lab4/Test3.java new file mode 100644 index 0000000..421fc63 --- /dev/null +++ b/Lab4/Test3.java @@ -0,0 +1,57 @@ +class Test3 { + public static void main(String[] args) { + CS2030STest we = new CS2030STest(); + + class Incr implements Immutator { + public Integer invoke(Integer t1) { + return t1 + 1; + } + } + class Length implements Immutator { + public Integer invoke(String t1) { + return t1.length(); + } + } + + we.prefix("jshell> class Incr implements Immutator {"); + we.prefix(" ...> public Integer invoke(Integer t1) {"); + we.prefix(" ...> return t1 + 1;"); + we.prefix(" ...> }"); + we.prefix(" ...> }"); + + we.prefix("jshell> class Length implements Immutator {"); + we.prefix(" ...> public Integer invoke(String t1) {"); + we.prefix(" ...> return t1.length();"); + we.prefix(" ...> }"); + we.prefix(" ...> }"); + + we.expect("new Incr().invoke(4)", + new Incr().invoke(4).toString(), + "5"); + we.expect("new Incr().invoke(new Incr().invoke(4))", + new Incr().invoke(new Incr().invoke(4)).toString(), + "6"); + we.expect("new Length().invoke(\"string\")", + new Length().invoke("string").toString(), + "6"); + we.expect("new Incr().invoke(new Length().invoke(\"string\"))", + new Incr().invoke(new Length().invoke("string")).toString(), + "7"); + + we.expect("new Improbable<>().invoke(1)", + new Improbable().invoke(1).toString(), + "<1>"); + we.expect("new Improbable().invoke(null)", + new Improbable().invoke(null).toString(), + "<>"); + we.expect("new Improbable().invoke(1).transform(new Incr())", + new Improbable().invoke(1).transform(new Incr()).toString(), + "<2>"); + we.expect("new Improbable<>().invoke(new Improbable<>().invoke(1))", + new Improbable<>().invoke(new Improbable().invoke(1)).toString(), + "<<1>>"); + + we.showStat(); + we.print(); + } +} \ No newline at end of file diff --git a/Lab4/Test4.java b/Lab4/Test4.java new file mode 100644 index 0000000..cde82dd --- /dev/null +++ b/Lab4/Test4.java @@ -0,0 +1,54 @@ +class Test4 { + public static void main(String[] args) { + CS2030STest we = new CS2030STest(); + + class Incr implements Immutator { + public Integer invoke(Integer t1) { + return t1 + 1; + } + } + class Length implements Immutator { + public Integer invoke(String t1) { + return t1.length(); + } + } + + we.prefix("jshell> class Incr implements Immutator {"); + we.prefix(" ...> public Integer invoke(Integer t1) {"); + we.prefix(" ...> return t1 + 1;"); + we.prefix(" ...> }"); + we.prefix(" ...> }"); + + we.prefix("jshell> class Length implements Immutator {"); + we.prefix(" ...> public Integer invoke(String t1) {"); + we.prefix(" ...> return t1.length();"); + we.prefix(" ...> }"); + we.prefix(" ...> }"); + + we.expect("Probably.just(4).transform(new Incr())", + Probably.just(4).transform(new Incr()).toString(), + "<5>"); + we.expect("Probably.just(4).transform(new Incr()).transform(new Incr())", + Probably.just(4).transform(new Incr()).transform(new Incr()).toString(), + "<6>"); + we.expect("Probably.just(\"string\").transform(new Length())", + Probably.just("string").transform(new Length()).toString(), + "<6>"); + we.expect("Probably.just(\"string\").transform(new Length()).transform(new Incr())", + Probably.just("string").transform(new Length()).transform(new Incr()).toString(), + "<7>"); + + we.expect("Probably.none().transform(new Incr())", + Probably.none().transform(new Incr()).toString(), + "<>"); + we.expect("Probably.none().transform(new Length())", + Probably.none().transform(new Length()).toString(), + "<>"); + we.expect("Probably.just(null).transform(new Length()).transform(new Incr())", + Probably.just(null).transform(new Length()).transform(new Incr()).toString(), + "<>"); + + we.showStat(); + we.print(); + } +} \ No newline at end of file diff --git a/Lab4/Test5.java b/Lab4/Test5.java new file mode 100644 index 0000000..244174f --- /dev/null +++ b/Lab4/Test5.java @@ -0,0 +1,48 @@ +class Test5 { + public static void main(String[] args) { + CS2030STest we = new CS2030STest(); + + class Incr implements Immutator { + public Integer invoke(Integer t1) { + return t1 + 1; + } + } + class Length implements Immutator { + public Integer invoke(String t1) { + return t1.length(); + } + } + + we.prefix("jshell> class Incr implements Immutator {"); + we.prefix(" ...> public Integer invoke(Integer t1) {"); + we.prefix(" ...> return t1 + 1;"); + we.prefix(" ...> }"); + we.prefix(" ...> }"); + + we.prefix("jshell> class Length implements Immutator {"); + we.prefix(" ...> public Integer invoke(String t1) {"); + we.prefix(" ...> return t1.length();"); + we.prefix(" ...> }"); + we.prefix(" ...> }"); + + we.expect("Probably.just(17).check(new IsModEq(3,2)) // 17 % 3 is equal to 2", + Probably.just(17).check(new IsModEq(3,2)).toString(), + "<17>"); + we.expect("Probably.just(18).check(new IsModEq(3,2)) // 18 % 3 is not equal to 2", + Probably.just(18).check(new IsModEq(3,2)).toString(), + "<>"); + + we.expect("Probably.just(16).transform(new Incr()).check(new IsModEq(3,2)) // 17 % 3 is not equal to 2", + Probably.just(16).transform(new Incr()).check(new IsModEq(3,2)).toString(), + "<17>"); + we.expect("Probably.just(\"string\").transform(new Length()).check(new IsModEq(3,2))", + Probably.just("string").transform(new Length()).transform(new Incr()).transform(new Incr()).check(new IsModEq(3,2)).toString(), + "<8>"); + we.expect("Probably.just(null).check(new IsModEq(0,2))", + Probably.just(null).check(new IsModEq(0,2)).toString(), + "<>"); + + we.showStat(); + we.print(); + } +} \ No newline at end of file diff --git a/Lab4/Test6.java b/Lab4/Test6.java new file mode 100644 index 0000000..895cd6f --- /dev/null +++ b/Lab4/Test6.java @@ -0,0 +1,65 @@ +class Test6 { + public static void main(String[] args) { + CS2030STest we = new CS2030STest(); + + class Incr implements Immutator { + public Integer invoke(Integer t1) { + return t1 + 1; + } + } + class Length implements Immutator { + public Integer invoke(String t1) { + return t1.length(); + } + } + + Probably> justIncr = Probably.just(new Incr()); + Probably> justLength = Probably.just(new Length()); + Probably> noIncr = Probably.none(); + Probably> noLength = Probably.none(); + + we.prefix("jshell> class Incr implements Immutator {"); + we.prefix(" ...> public Integer invoke(Integer t1) {"); + we.prefix(" ...> return t1 + 1;"); + we.prefix(" ...> }"); + + we.prefix("jshell> class Length implements Immutator {"); + we.prefix(" ...> public Integer invoke(String t1) {"); + we.prefix(" ...> return t1.length();"); + we.prefix(" ...> }"); + + we.prefix("jshell> Probably> justIncr = Probably.just(new Incr());"); + we.prefix("jshell> Probably> justLength = Probably.just(new Length());"); + we.prefix("jshell> Probably> noIncr = Probably.none();"); + we.prefix("jshell> Probably> noLength = Probably.none();"); + + we.expect("Probably.just(17).apply(justIncr)", + Probably.just(17).apply(justIncr).toString(), + "<18>"); + we.expect("Probably.none().apply(justIncr)", + Probably.none().apply(justIncr).toString(), + "<>"); + we.expect("Probably.just(17).apply(noIncr)", + Probably.just(17).apply(noIncr).toString(), + "<>"); + we.expect("Probably.none().apply(noIncr)", + Probably.none().apply(noIncr).toString(), + "<>"); + + we.expect("Probably.just(\"string\").apply(justLength)", + Probably.just("string").apply(justLength).toString(), + "<6>"); + we.expect("Probably.none().apply(justLength)", + Probably.none().apply(justLength).toString(), + "<>"); + we.expect("Probably.just(\"string\").apply(noLength)", + Probably.just("string").apply(noLength).toString(), + "<>"); + we.expect("Probably.none().apply(noLength)", + Probably.none().apply(noLength).toString(), + "<>"); + + we.showStat(); + we.print(); + } +} \ No newline at end of file diff --git a/Lab4/TestProbably.java b/Lab4/TestProbably.java new file mode 100644 index 0000000..a7481b5 --- /dev/null +++ b/Lab4/TestProbably.java @@ -0,0 +1,61 @@ +class TestProbably { + public static void main(String[] args) { + CS2030STest we = new CS2030STest(); + + we.expect("Probably.just(4)", + Probably.just(4).toString(), + "<4>"); + we.expect("Probably.just(Probably.just(0))", + Probably.just(Probably.just(0)).toString(), + "<<0>>"); + we.expect("Probably.just(Probably.just(Probably.just(\"null\")))", + Probably.just(Probably.just(Probably.just("null"))).toString(), + "<<>>"); + we.expect("Probably.just(Probably.just(Probably.none()))", + Probably.just(Probably.just(Probably.none())).toString(), + "<<<>>>"); + we.expect("Probably.just(Probably.just(null))", + Probably.just(Probably.just(null)).toString(), + "<<>>"); + + we.expect("Probably.just(4).equals(Probably.just(4))", + Probably.just(4).equals(Probably.just(4)), + true); + we.expect("Probably.just(4).equals(4)", + Probably.just(4).equals(4), + false); + we.expect("Probably.just(Probably.just(0)).equals(Probably.just(0))", + Probably.just(Probably.just(0)).equals(Probably.just(0)), + false); + we.expect("Probably.just(Probably.just(0)).equals(Probably.just(Probably.just(0)))", + Probably.just(Probably.just(0)).equals(Probably.just(Probably.just(0))), + true); + + we.expect("Probably.just(\"string\")", + Probably.just("string").toString(), + ""); + + we.expect("Probably.just(\"string\").equals(Probably.just(4))", + Probably.just("string").equals(Probably.just(4)), + false); + we.expect("Probably.just(\"string\").equals(Probably.just(\"null\"))", + Probably.just("string").equals(Probably.just("null")), + false); + + we.expect("Probably.just(null)", + Probably.just(null).toString(), + "<>"); + we.expect("Probably.none()", + Probably.none().toString(), + "<>"); + we.expect("Probably.none().equals(Probably.just(null))", + Probably.none().equals(Probably.just(null)), + true); + we.expect("Probably.none() == Probably.just(null)", + Probably.none() == Probably.just(null), + true); + + we.showStat(); + we.print(); + } +} \ No newline at end of file diff --git a/Lab4/inputs/Lab4.1.in b/Lab4/inputs/Lab4.1.in new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/Lab4/inputs/Lab4.1.in @@ -0,0 +1 @@ +1 diff --git a/Lab4/inputs/Lab4.2.in b/Lab4/inputs/Lab4.2.in new file mode 100644 index 0000000..0cfbf08 --- /dev/null +++ b/Lab4/inputs/Lab4.2.in @@ -0,0 +1 @@ +2 diff --git a/Lab4/inputs/Lab4.3.in b/Lab4/inputs/Lab4.3.in new file mode 100644 index 0000000..00750ed --- /dev/null +++ b/Lab4/inputs/Lab4.3.in @@ -0,0 +1 @@ +3 diff --git a/Lab4/inputs/Lab4.4.in b/Lab4/inputs/Lab4.4.in new file mode 100644 index 0000000..b8626c4 --- /dev/null +++ b/Lab4/inputs/Lab4.4.in @@ -0,0 +1 @@ +4 diff --git a/Lab4/inputs/Lab4.5.in b/Lab4/inputs/Lab4.5.in new file mode 100644 index 0000000..7ed6ff8 --- /dev/null +++ b/Lab4/inputs/Lab4.5.in @@ -0,0 +1 @@ +5 diff --git a/Lab4/inputs/Lab4.6.in b/Lab4/inputs/Lab4.6.in new file mode 100644 index 0000000..1e8b314 --- /dev/null +++ b/Lab4/inputs/Lab4.6.in @@ -0,0 +1 @@ +6 diff --git a/Lab4/outputs/Lab4.1.out b/Lab4/outputs/Lab4.1.out new file mode 100644 index 0000000..a8f6cff --- /dev/null +++ b/Lab4/outputs/Lab4.1.out @@ -0,0 +1,2 @@ +17 +string diff --git a/Lab4/outputs/Lab4.2.out b/Lab4/outputs/Lab4.2.out new file mode 100644 index 0000000..b6f2c16 --- /dev/null +++ b/Lab4/outputs/Lab4.2.out @@ -0,0 +1,3 @@ +4 +string + diff --git a/Lab4/outputs/Lab4.3.out b/Lab4/outputs/Lab4.3.out new file mode 100644 index 0000000..d999cc6 --- /dev/null +++ b/Lab4/outputs/Lab4.3.out @@ -0,0 +1,8 @@ +5 +6 +6 +7 +<1> +<> +<2> +<<1>> diff --git a/Lab4/outputs/Lab4.4.out b/Lab4/outputs/Lab4.4.out new file mode 100644 index 0000000..b71df69 --- /dev/null +++ b/Lab4/outputs/Lab4.4.out @@ -0,0 +1,7 @@ +<5> +<6> +<6> +<7> +<> +<> +<> diff --git a/Lab4/outputs/Lab4.5.out b/Lab4/outputs/Lab4.5.out new file mode 100644 index 0000000..96d818e --- /dev/null +++ b/Lab4/outputs/Lab4.5.out @@ -0,0 +1,5 @@ +<17> +<> +<17> +<8> +<> diff --git a/Lab4/outputs/Lab4.6.out b/Lab4/outputs/Lab4.6.out new file mode 100644 index 0000000..7b7ea2e --- /dev/null +++ b/Lab4/outputs/Lab4.6.out @@ -0,0 +1,8 @@ +<18> +<> +<> +<> +<6> +<> +<> +<>