Hi everyone
First post on these forums and I'm hoping this will be a good spot to hang out.
I recently started on my new education here in Denmark which focuses on system development and obviously a large part of that is programming. I'm going through some of the initial programming excercises and were doing for loops atm.
We are using the book "Building Java Programs - A back to basics approach (2nd edition)" and im doing an excercise that goes like this:
4. Write a method called printSquare that accepts a minimum and maximum integer and prints a square of lines of
increasing numbers. The first line should start with the minimum, and each line that follows should start with the
next-higher number. The sequence of numbers on a line wraps back to the minimum after it hits the maximum. For
example, the call printSquare(3, 7);
should produce the following output:
34567
45673
56734
67345
73456
If the maximum passed is less than the minimum, the method produces no output.
Currently my code is looking like this, but I can't seem to get the last part right:
public class Opg4Kap3 { public static void main(String[] args) { printSquare(3, 7); } public static void printSquare(int a, int b) { for (int k=a ; k<=b ; k++) { System.out.print(k); for (int i=k+1 ; i<=b ; i++) { System.out.print(i); } for (int r=a ; r<=6 ; r++) { System.out.print(r); } System.out.println(); } } }
If you compile it and run it you can see I'm getting this output, which is close but no cigar:
345673456
45673456
5673456
673456
73456
We don't need to turn this in or anything so I'm not really interested in the final answer, was just hoping someone could give me a clue to the next step so I can finish it though, since it annoys me I can't get the last part right (or if I have to do something completely different to begin with?).
Also this is not supposed to be done with anything but a method and for loops so no if statement tips or anything.
Thanks in advance