Results 1 to 9 of 9
  1. #1
    Toffer_15 is offline Member
    Join Date
    Jan 2013
    Location
    Salt Lake City, UT
    Posts
    5
    Rep Power
    0

    Default Printing multiple arrays help...

    Let me say first off that I am new to the forum and new to Java. I'm not looking for someone to write code for me, just some understanding. I'm in a basic Java class, and I need to make a table with the base range from 0 to 10, a squared range of the base, and a cubed range of the base. It should output like this:

    Base Square Cubed
    0 0 0
    1 1 1
    2 4 8
    3 9 27
    4 16 64
    etc. etc.

    This is what I have so far, I know it probably has beginner written all over it, but that is what I am.

    My problem is this: I can't seem to find a way to output my arrays, I've searched the forums and internet. I saw most answers saying I need to do a for loop. However, I haven't learned this and failed miserably when I tried. If this is the only way to print out multiple arrays, I'll just have to wait and learn, but I was hoping there was an easier way that I haven't found yet. Any help is appreciated. Thanks much
    Oh and I also tried Math.pow but couldn't figure out how to use it within arrays.


    Java Code:
    import java.util.Arrays;
    import java.util.Scanner;
    
    public class HW2e
    {
       public static void main( String[] args )
       {
          Scanner input = new Scanner( System.in );
    
          int x;
    		int y;
    		int z;
    		int[] A1;
    		int[] A2;
    		int[] A3;
    		
    		//User Input
          System.out.print( "Select the number you'd like the table to begin with: " );
          x = input.nextInt();
    						
    		//Base Range
    		y = x + 11;
    		A1 = new int[y];
    		A1[x] = x;
    		A1[x+1] = x + 1;
    		A1[x+2] = x + 2;
    		A1[x+3] = x + 3;
    		A1[x+4] = x + 4;
    		A1[x+5] = x + 5;
    		A1[x+6] = x + 6;
    		A1[x+7] = x + 7;
    		A1[x+8] = x + 8;
    		A1[x+9] = x + 9;
    		A1[x+10]= x + 10;
    		
    		//Squared Range
    		A2 = new int[y];
    		A2[x] = x*x;
    		A2[x+1] = (x+1)*(x+1);
    		A2[x+2] = (x+2)*(x+2);
    		A2[x+3] = (x+3)*(x+3);
    		A2[x+4] = (x+4)*(x+4);
    		A2[x+5] = (x+5)*(x+5);
    		A2[x+6] = (x+6)*(x+6);
    		A2[x+7] = (x+7)*(x+7);
    		A2[x+8] = (x+8)*(x+8);
    		A2[x+9] = (x+9)*(x+9);
    		A2[x+10]= (x+10)*(x+10);
    
    		//Cubed Range
    		A3 = new int[y];
    		A3[x] = x*x*x;
    		A3[x+1] = (x+1)*(x+1)*(x+1);
    		A3[x+2] = (x+2)*(x+2)*(x+2);
    		A3[x+3] = (x+3)*(x+3)*(x+3);
    		A3[x+4] = (x+4)*(x+4)*(x+4);
    		A3[x+5] = (x+5)*(x+5)*(x+5);
    		A3[x+6] = (x+6)*(x+6)*(x+6);
    		A3[x+7] = (x+7)*(x+7)*(x+7);
    		A3[x+8] = (x+8)*(x+8)*(x+8);
    		A3[x+9] = (x+9)*(x+9)*(x+9);
    		A3[x+10]= (x+10)*(x+10)*(x+10);
    		
    	
          System.out.println(A1, A2, A3);
    		//I know this is doesn't work
    		}
    }

  2. #2
    pbrockway2 is offline Moderator
    Join Date
    Feb 2009
    Location
    New Zealand
    Posts
    4,565
    Rep Power
    12

    Default Re: Printing multiple arrays help...

    Do you have to use arrays? I'm asking because although you can construct arrays, work out all of the output, then print it, it might be more straight forward to work one line at a time.

  3. #3
    Toffer_15 is offline Member
    Join Date
    Jan 2013
    Location
    Salt Lake City, UT
    Posts
    5
    Rep Power
    0

    Default Re: Printing multiple arrays help...

    Nope, the assignment is actually supposed to be working out all the calculations with a calculator then just printing out the answers in a table, but my professor will give extra credit if I use a user input. This was the easiest user input I could think of. So you're saying doing like a math.pow for each line? Then printing out the results?

  4. #4
    JosAH's Avatar
    JosAH is offline Moderator
    Join Date
    Sep 2008
    Location
    Voorschoten, the Netherlands
    Posts
    13,337
    Blog Entries
    7
    Rep Power
    20

    Default Re: Printing multiple arrays help...

    Think of it this way: you have a line 'i' (being at least zero); on that line you want to print the values i, i*i and i*i*i. You want to print N lines, so the smallest value for i is zero and the largest value is N-1; this begs for a simple loop:

    Java Code:
    for (int i= 0; i < N; i++)
       // print the content of line 'i'
    The value of N can be defined by use input, by a calculation or whatever; it doesn't change this loop and you don't need arrays either.

    kind regards,

    Jos
    cenosillicaphobia: the fear for an empty beer glass

  5. #5
    pbrockway2 is offline Moderator
    Join Date
    Feb 2009
    Location
    New Zealand
    Posts
    4,565
    Rep Power
    12

    Default Re: Printing multiple arrays help...

    Sorry - I didn't see your response.

    First, as Jos says, each line just consists of printing three numbers i, i*i and i*i*i where i is some number. Now you could ask the user where they want to start and then give them 10 lines with ten println() statements. In fact if you are unused to for loops that might be a good place to start. (post back if you try that - or anything - and get stuck. Suggestions given here are just steps along the path of head banging, more head banging, and eventual success.)

    Eventually all ten println()s should be wrapped up into a single for loop... Because that's what for loops are for.

  6. #6
    Toffer_15 is offline Member
    Join Date
    Jan 2013
    Location
    Salt Lake City, UT
    Posts
    5
    Rep Power
    0

    Default Re: Printing multiple arrays help...

    Thank you Jos and pbrockway! I'm going to start working on the for loop, but if I still can't figure it out then I'll just println ten separate lines. Thanks again, and I'll post any success or failure on here.

  7. #7
    Toffer_15 is offline Member
    Join Date
    Jan 2013
    Location
    Salt Lake City, UT
    Posts
    5
    Rep Power
    0

    Default Re: Printing multiple arrays help...

    Alright new question. Now I have my loop setup and it works! but I was wondering where the i, i*i, i*i*i, calculations come into play? Would I need to write a nested loop?
    Also, is there a way to print the numbers vertically rather than horizontally?


    Java Code:
    import java.util.Arrays;
    import java.util.Scanner;
    
    public class HW2f
    {
       public static void main( String[] args )
       {
          Scanner input = new Scanner( System.in );
    
          int x;
    		int y;
    		int z;
    		
    		//User Input
          System.out.print( "Select the number you'd like the table to begin with: " );
          x = input.nextInt();
    		
          System.out.print( "Select the number you'd like the table to end with: " );
          y = input.nextInt();
    		
    		z = (y - x)+1;
    		
    		
    		for(int i = x; i<z; i++){
    			System.out.print(i);
    		   }
    		}
    }
    Last edited by Toffer_15; 01-24-2013 at 08:15 PM. Reason: forgot to post code...

  8. #8
    JosAH's Avatar
    JosAH is offline Moderator
    Join Date
    Sep 2008
    Location
    Voorschoten, the Netherlands
    Posts
    13,337
    Blog Entries
    7
    Rep Power
    20

    Default Re: Printing multiple arrays help...

    Simply change your print( ... ) statement to System.out.println(i+" "+i*i+" "+i*i*i); that's all ...

    kind regards,

    Jos
    cenosillicaphobia: the fear for an empty beer glass

  9. #9
    Toffer_15 is offline Member
    Join Date
    Jan 2013
    Location
    Salt Lake City, UT
    Posts
    5
    Rep Power
    0

    Default Re: Printing multiple arrays help...

    Okay I see now. I can use the print command to do calculations for me. Thank you Jos and pbrockway for the help. I'm going to leave the finished code for people like me to see. Thanks again.

    Java Code:
    import java.util.Scanner;
    
    public class HW2f
    {
       public static void main( String[] args )
       {
          Scanner input = new Scanner( System.in );
    
          int x;
    		int y;
    		
    		//User Input
          System.out.print( "Select the number you'd like the table to begin with: " );
          x = input.nextInt();
    		
          System.out.print( "Select the number you'd like the table to end with: " );
          y = input.nextInt();
    		
    		//Title Output
    		System.out.println   ("Base\tSquared\tCubed");
    		
    		//For Loop with calculated output
    		for(int i = x; i<=y; i++){
    			System.out.println(i+"\t"+i*i+"\t"+i*i*i);
    		   }
    		}
    }
    Last edited by Toffer_15; 01-24-2013 at 09:57 PM. Reason: finished code

Similar Threads

  1. Error while printing out arrays
    By cjgarcia in forum New To Java
    Replies: 1
    Last Post: 05-03-2012, 12:34 AM
  2. Printing multiple arrays in 1 dialog box
    By turbopenguin in forum New To Java
    Replies: 9
    Last Post: 04-19-2012, 08:18 AM
  3. Printing Two Dimensional Arrays with for loops
    By mcnam4119 in forum JCreator
    Replies: 3
    Last Post: 10-06-2010, 05:27 AM
  4. Printing value of boolean arrays
    By myst in forum New To Java
    Replies: 7
    Last Post: 06-02-2010, 08:44 PM
  5. Printing multiple user entries.
    By mConfused in forum Advanced Java
    Replies: 2
    Last Post: 04-09-2010, 12:44 PM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •