spidey12345 said:
0 1 2 3 4 5 6 7 ..... 25
1 2 3 4 5 6 7 8.... 25 0
2 3 4 5 6 7 8 9..24 25 0 1
3 4 5 6..... .................2
. 3
. .
. .
.. ..
25 0 1 2 3 4 5.... 24
[...]
anybody know how to generate this algorithm in java, please help.
Do you know how to generate the first row?
There is a relationship between the row number, and the offset used
within the row. Do you not see it? You can use the same code to
generate all 25 rows.
Also, do you know about Java's "remainder" operator?
That said, I don't think that it's necessary to actually generate all
of those rows in order to implement Vigenere.
i see that, but i want to generate a two dimensional array for a
reason, how would i do it?
Most programming is done by thinking about the problem, breaking it down into
smaller pieces until you have a small enough piece that you can work on.
i mean it would be nice for you to write the algorithm down,
This is one of those "give a fish" or "teach to fish" situations. Your question
is so elementary that if you are not willing to try and think about it a little
yourself then you are unlikely to ever get much further.
First reduce the problem to generating the first line in a one dimensional
array. Once you have done that it will be a lot easier to see how to extend it
to a two dimensional array.
Here's a start:
Class Vigenere {
public static void main(String[] args) {
int index = 0;
// Do something here that increments index in a loop until it reaches 25
int value = index;
System.out.println(index+": "+value);
// close the loop mentioned above
}
}
I haven't tried the above, type it in and get it working.
Then replace my comments with the appropriate Java statements.
Once you have that working, work out how to declare an array of integers and
replace the println with a statement that assigns a value to an element of an array.
Then try thinking about adding another loop corresponding to the other dimension
of your array. Think about your "offset" and how it could be applied to the
calculation of the value.
At each step you will have a working program that shows successful completion of
a small part of the problem.