Tabliczka mnożenia
2017-04-03 / Krzysztof Kozłowski

Dwie pętle FOR wystarczą, by szybko zrobić sobie ściągawkę z tabliczką mnożenia.

W Idei tworzymy nową aplikację konsolową. W utworzonej metodzie main() dodajemy dwie pętle FOR i jedną instrukcję drukującą podany ciąg znaków na ekranie. Całość powinna wyglądać tak:

1
2
3
4
5
6
7
8
9
10
public class Main {

public static void main(String[] args) {
for (int i = 1; i <= 10; i++) {
for (int j = 1; j <= 10; j++) {
System.out.println(i + " * " + j + " = " + i * j);
}
}
}
}

Jak to działa? Pierwsza pętla – ta z licznikiem i – wykonuje się 10 razy (1 ≤ i ≤ 10). Wewnątrz niej znajduje się druga pętla, która również wykona się 10 razy (1 ≤ j ≤ 10). Czyli dla każdego jednego przebiegu pętli zewnętrznej, pętla wewnętrzna wykona się 10 razy. W efekcie instrukcja System.out.println() wykona się 10*10 czyli 100 razy.

Na ekran wyświetlamy ciąg:

1
i + " * " + j + " = " + i * j

Jak widać bierzemy kolejne wartości liczników i dodajemy do nich znak mnożenia (“*”) i równości (“=”). To jakby sklejanie całego napisu z małych kawałków. Dzięki temu otrzymujemy ładnie wyglądające działanie.

Np. jeśli i = 2, j = 4, to na ekranie zostanie wyświetlony ciąg 2 * 4 = 8

Wynik

Po uruchomieniu programu zobaczymy następujący wynik:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
1 * 1 = 1
1 * 2 = 2
1 * 3 = 3
1 * 4 = 4
1 * 5 = 5
1 * 6 = 6
1 * 7 = 7
1 * 8 = 8
1 * 9 = 9
1 * 10 = 10
2 * 1 = 2
2 * 2 = 4
2 * 3 = 6
2 * 4 = 8
2 * 5 = 10
2 * 6 = 12
2 * 7 = 14
2 * 8 = 16
2 * 9 = 18
2 * 10 = 20
3 * 1 = 3
3 * 2 = 6
3 * 3 = 9
3 * 4 = 12
3 * 5 = 15
3 * 6 = 18
3 * 7 = 21
3 * 8 = 24
3 * 9 = 27
3 * 10 = 30
4 * 1 = 4
4 * 2 = 8
4 * 3 = 12
4 * 4 = 16
4 * 5 = 20
4 * 6 = 24
4 * 7 = 28
4 * 8 = 32
4 * 9 = 36
4 * 10 = 40
5 * 1 = 5
5 * 2 = 10
5 * 3 = 15
5 * 4 = 20
5 * 5 = 25
5 * 6 = 30
5 * 7 = 35
5 * 8 = 40
5 * 9 = 45
5 * 10 = 50
6 * 1 = 6
6 * 2 = 12
6 * 3 = 18
6 * 4 = 24
6 * 5 = 30
6 * 6 = 36
6 * 7 = 42
6 * 8 = 48
6 * 9 = 54
6 * 10 = 60
7 * 1 = 7
7 * 2 = 14
7 * 3 = 21
7 * 4 = 28
7 * 5 = 35
7 * 6 = 42
7 * 7 = 49
7 * 8 = 56
7 * 9 = 63
7 * 10 = 70
8 * 1 = 8
8 * 2 = 16
8 * 3 = 24
8 * 4 = 32
8 * 5 = 40
8 * 6 = 48
8 * 7 = 56
8 * 8 = 64
8 * 9 = 72
8 * 10 = 80
9 * 1 = 9
9 * 2 = 18
9 * 3 = 27
9 * 4 = 36
9 * 5 = 45
9 * 6 = 54
9 * 7 = 63
9 * 8 = 72
9 * 9 = 81
9 * 10 = 90
10 * 1 = 10
10 * 2 = 20
10 * 3 = 30
10 * 4 = 40
10 * 5 = 50
10 * 6 = 60
10 * 7 = 70
10 * 8 = 80
10 * 9 = 90
10 * 10 = 100

Całkiem ładny efekt, jak na tylko trzy linijki kodu.

Uwaga

Na koniec mała uwaga: wyobraźmy sobie dwie instrukcje wyświetlające coś na ekranie:

1
2
System.out.println("2 * 4");
System.out.println(2 * 4);

Na pozór obie instrukcje niewiele różni. Jedyna różnica to znaki cudzysłowu użyte w pierwszej instrukcji.

Cudzysłów w Javie oznacza napis (ciąg znaków), więc zapis “2 * 4“ oznacza, że chcemy na ekranie wyświetlić dokładnie to, co znajduje się w cudzysłowach, czyli 5 znaków: 2, spacja, gwiazdka, spacja, 4.

Jeśli nie użyjemy znaków cudzysłowu, to dla Javy będzie to znaczyło tyle: wykonaj działanie 2 razy 4 i wyświetl na ekranie wynik tego działania, czyli 8.

PermaLink: https://java.kozlowski.photos/2017/04/tabliczka-mnozenia/