Adding zero to a single digit number, Is it possible?

java

Solution

Yes you can! You can use `String.format` to add zero padding to your output.

Example:

`String.format("%05d", 2)` would produce `00002`.

Some improvement on the current code:

I'm not sure why you intend to store the numbers inside an array (for practice purpose maybe), but that is not necessary as it goes from 1 to 10 anyway. Though if you want to do that, you don't need both `i` and `n`.

for (i=0; i<x.length; i++){
    x[i] = i+1;
    System.out.print(x[i] + " ");
}

Secondly, I'm sure you realize that you have a lot of duplicate code, and it's quite sequential. You can do that using 2 nested for loops, instead of having 10 single loops:

for (int row = 1; row <= 10; row++) {
    for (int col = 1; col <= 10; col++)
        System.out.print(String.format("%03d", row * col));
    System.out.println();
}

Problem

``` public class MultiplicationTable { public static void main (String[]a){ int[] x; x = new int[10]; int i; int n=0; for (i=0;i<x.length;i++){ n++; x[i]=n; System.out.print(x[i] + " "); } System.out.println(); for (i=0;i<x.length;i++) System.out.print(x[0] * x[i] + " "); System.out.println(); for (i=0;i<x.length;i++) System.out.print(x[1] * x[i] + " "); System.out.println(); for (i=0;i<x.length;i++) System.out.print(x[2] * x[i] + " "); System.out.println(); for (i=0;i<x.length;i++) System.out.print(x[3] * x[i] + " "); System.out.println(); for (i=0;i<x.length;i++) System.out.print(x[4] * x[i] + " "); System.out.println(); for (i=0;i<x.length;i++) System.out.print(x[5] * x[i] + " "); System.out.println(); for (i=0;i<x.length;i++) System.out.print(x[6] * x[i] + " "); System.out.println(); for (i=0;i<x.length;i++) System.out.print(x[7] * x[i] + " "); System.out.println(); for (i=0;i<x.length;i++) System.out.print(x[8] * x[i] + " "); System.out.println(); for (i=0;i<x.length;i++) System.out.print(x[9] * x[i] + " "); } } ``` This is a program that will display a Multiplication Table like this: 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10 2 4 6 8 10 12 14 16 18 20 3 6 9 12 15 18 21 24 27 30 4 8 12 16 20 24 28 32 36 40 5 10 15 20 25 30 35 40 45 50 6 12 18 24 30 36 42 48 54 60 7 14 21 28 35 42 49 56 63 70 8 16 24 32 40 48 56 64 72 80 9 18 27 36 45 54 63 72 81 90 10 20 30 40 50 60 70 80 90 100 =============================================================== It is running and correct but I want it to look like this one: 01 02 03 04 05 06 07 08 09 10 01 02 03 04 05 06 07 08 09 10 02 04 06 08 10 12 14 16 18 20 03 06 09 12 15 18 21 24 27 30 04 08 12 16 20 24 28 32 36 40 05 10 15 20 25 30 35 40 45 50 06 12 18 24 30 36 42 48 54 60 07 14 21 28 35 42 49 56 63 70 08 16 24 32 40 48 56 64 72 80 09 18 27 36 45 54 63 72 81 90 10 20 30 40 50 60 70 80 90 100 =============================================== Is there any way?

Original source