Advertisement
alexanderankin

recursion attempt

Nov 24th, 2014
195
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.81 KB | None | 0 0
  1. import java.util.Arrays; // necessary to Sysout the arrays of ints in a human-readable fashion.
  2.  
  3. //import java.util.Scanner;
  4. //import java.lang.Math;
  5.  
  6. public class cse215 {
  7.     // public static Scanner s = new Scanner(System.in);
  8.  
  9.     // public static void main(String[] args) {
  10.     // int b = s.nextInt();
  11.     // System.out.println(hw(b));
  12.     // }
  13.     //                          // attempt: at using a scanner to read in NUMBER
  14.     // public static String hw(String a) {          // at using a string function instead of int[] array
  15.     // a += ;
  16.     //
  17.     // return "";
  18.     // }
  19.     public static final int NUMBER = 5;
  20.  
  21.     public static void main(String[] args) {
  22.  
  23.         // int a = s.nextInt();
  24.         // for (int i = 0; i < a; i++) {
  25.         // System.out.print(i);
  26.         // }
  27.         // for (int i = a; i > -1; i--) {       // attempt at using iteration instead of recursion
  28.         // System.out.print(i);
  29.         //
  30.         // }
  31.         int[] inputarray = new int[1];
  32.         inputarray[0] = NUMBER;
  33.         System.out.println(Arrays.toString(hw(inputarray)));
  34.     }
  35.  
  36.     public static int[] hw(int[] oldarr) {
  37.  
  38.         if (oldarr.length - 1 < NUMBER // && newarr[newarr.length - 1] !=
  39.                                         // NUMBER) {
  40.         ) {
  41.             int[] newarr = new int[oldarr.length + 1];
  42.             newarr[oldarr.length] = oldarr[oldarr.length - 1] - 1;
  43.             for (int i = 0; i < newarr.length; i++) {
  44.                 newarr[i] = i;
  45.             }
  46.             // System.out.println(Arrays.toString(newarr));
  47.             hw(newarr);
  48.             return newarr;
  49.         }
  50.  
  51.         else if (oldarr[oldarr.length - 1] != 0) {
  52.             int[] newarr = new int[oldarr.length + 1];
  53.             for (int i = 0; i < newarr.length - 1; i++) {
  54.                 newarr[i] = oldarr[i];
  55.  
  56.             }
  57.             newarr[newarr.length - 1] = oldarr[oldarr.length - 1] - 1;
  58.             // System.out.println(Arrays.toString(newarr));
  59.             hw(newarr);
  60.             return newarr;
  61.         }
  62.  
  63.         System.out.println(Arrays.toString(oldarr));
  64.         System.out.println("here is where it fails");
  65.         return oldarr;
  66.  
  67.     }
  68.  
  69. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement