오늘 우연히 구구클래스라는 것을 알게 되었는데요. 해당 코드를 진짜로 한줄로 구현해볼 수 있지 않을까 하고 구현을 시도해보게 되었습니다.
그냥 구구단 코드인데... 자세한 추가적인 내용은 나무위키 (고마워요 나무위키) 를 참고하여 알게 되었습니다.
문론 숏코딩을 목적으로 최적화따위는 고려하지 않았습니다.
(출처: 나무위키)
public class GuguClass {
public static void main(String[] args) {
System.out.format("%n < gugu>%n");
for(int j=1; j<=9; j++) {
System.out.println();
for(int i=2; i<=5; i++) { // 2~ 5
System.out.format("%d X %d = %2d ", i, j, i * j);
}
}
System.out.println(); // 줄바꿈
for(int j=1; j<=9; j++) {
System.out.println();
for(int i=6; i<=9; i++) { // 6~ 9
System.out.format("%d X %d = %2d ", i, j, i * j);
}
}
System.out.println(); // 줄바꿈
}
}
한줄이라고 하기에는 많이 길ㄷ..
한 줄로 짤 코드를 누가 열 네 줄로 만들어놨어요?
import java.util.stream.IntStream;
public class GuguClass {
public static void main(String[] args) {
System.out.println("\t".repeat(6) + " < gugu>\n");
IntStream.range(1,20).forEach(i->IntStream.range(2,6).forEach(a->System.out.printf(i==10?"":"%d X %d = %2d"+(a%5==0?(i==9?"\n\n":"\n"):"\t\t"),a=i>10?a+4:a,i>10?i-10:i,(i>10?i-10:i)*a)));
}
}
< gugu>
2 X 1 = 2 3 X 1 = 3 4 X 1 = 4 5 X 1 = 5
2 X 2 = 4 3 X 2 = 6 4 X 2 = 8 5 X 2 = 10
2 X 3 = 6 3 X 3 = 9 4 X 3 = 12 5 X 3 = 15
2 X 4 = 8 3 X 4 = 12 4 X 4 = 16 5 X 4 = 20
2 X 5 = 10 3 X 5 = 15 4 X 5 = 20 5 X 5 = 25
2 X 6 = 12 3 X 6 = 18 4 X 6 = 24 5 X 6 = 30
2 X 7 = 14 3 X 7 = 21 4 X 7 = 28 5 X 7 = 35
2 X 8 = 16 3 X 8 = 24 4 X 8 = 32 5 X 8 = 40
2 X 9 = 18 3 X 9 = 27 4 X 9 = 36 5 X 9 = 45
6 X 1 = 6 7 X 1 = 7 8 X 1 = 8 9 X 1 = 9
6 X 2 = 12 7 X 2 = 14 8 X 2 = 16 9 X 2 = 18
6 X 3 = 18 7 X 3 = 21 8 X 3 = 24 9 X 3 = 27
6 X 4 = 24 7 X 4 = 28 8 X 4 = 32 9 X 4 = 36
6 X 5 = 30 7 X 5 = 35 8 X 5 = 40 9 X 5 = 45
6 X 6 = 36 7 X 6 = 42 8 X 6 = 48 9 X 6 = 54
6 X 7 = 42 7 X 7 = 49 8 X 7 = 56 9 X 7 = 63
6 X 8 = 48 7 X 8 = 56 8 X 8 = 64 9 X 8 = 72
6 X 9 = 54 7 X 9 = 63 8 X 9 = 72 9 X 9 = 81