summaryrefslogtreecommitdiff
path: root/in_class/cse123-inclass9/RecursiveMystery.java
diff options
context:
space:
mode:
authorpants <niklasjo2004@gmail.com>2026-09-21 14:16:34 -0700
committerpants <niklasjo2004@gmail.com>2026-09-21 14:16:34 -0700
commit81ba9eb66f8284d8760012973f84cdbe617ceb94 (patch)
tree466432644e9e3fd66ee183ec53a1f10abb1b7faa /in_class/cse123-inclass9/RecursiveMystery.java
Diffstat (limited to 'in_class/cse123-inclass9/RecursiveMystery.java')
-rw-r--r--in_class/cse123-inclass9/RecursiveMystery.java38
1 files changed, 38 insertions, 0 deletions
diff --git a/in_class/cse123-inclass9/RecursiveMystery.java b/in_class/cse123-inclass9/RecursiveMystery.java
new file mode 100644
index 0000000..c4f9806
--- /dev/null
+++ b/in_class/cse123-inclass9/RecursiveMystery.java
@@ -0,0 +1,38 @@
+public class RecursiveMystery {
+ public static void main(String[] args) {
+ // mystery1(3);
+ // mystery2(4);
+ mystery3("taco");
+ }
+
+ public static void mystery1(int n) {
+ if (n <= 1) {
+ System.out.print(n);
+ } else {
+ mystery1(n / 2);
+ System.out.print(", " + n);
+ }
+ }
+
+ public static void mystery2(int n) {
+ if (n <= 0) {
+ System.out.print("*");
+ } else if (n % 2 == 0) {
+ System.out.print("(");
+ mystery2(n - 1);
+ System.out.print(")");
+ } else {
+ System.out.print("[");
+ mystery2(n - 1);
+ System.out.print("]");
+ }
+ }
+
+ public static void mystery3(String str) {
+ if (!str.isEmpty()) {
+ System.out.print(str.charAt(0));
+ mystery3(str.substring(1));
+ System.out.print(str.charAt(0));
+ }
+ }
+}