학습 목표
- 구구단 프로그램 구현
- 단순 출력에서 코드를 간소화하는 방향으로 고도화
- 반복문, 조건문, 메서드, 클래스 사용
단순히 계산 및 출력. System.out.println 을 사용한다.
public class TimesTable {
public static void main(String[] args) {
// 2 times table
System.out.println(2 * 1);
System.out.println(2 * 2);
System.out.println(2 * 3);
System.out.println(2 * 4);
System.out.println(2 * 5);
System.out.println(2 * 6);
System.out.println(2 * 7);
System.out.println(2 * 8);
System.out.println(2 * 9);
// 3 times table
System.out.println(3 * 1);
System.out.println(3 * 2);
System.out.println(3 * 3);
System.out.println(3 * 4);
System.out.println(3 * 5);
System.out.println(3 * 6);
System.out.println(3 * 7);
System.out.println(3 * 8);
System.out.println(3 * 9);
}
}
4단에서 변수 사용법을 익힌다.
result 라는 변수를 지정하고, 데이터를 갱신하면서 print 하여 구현한다.
5단은 scanner 메서드를 사용하여 입력값을 받아 구현해본다.
number 라는 변수에 입력값을 받고 print 한다.
import java.util.Scanner;
public class TimesTable {
public static void main(String[] args) {
System.out.println("4 times table");
int result = 4 * 1;
System.out.println(result);
result = 4 * 2;
System.out.println(result);
result = 4 * 3;
System.out.println(result);
result = 4 * 4;
System.out.println(result);
result = 4 * 5;
System.out.println(result);
result = 4 * 6;
System.out.println(result);
result = 4 * 7;
System.out.println(result);
result = 4 * 8;
System.out.println(result);
result = 4 * 9;
System.out.println(result);
System.out.println("구구단 출력할 단은?");
Scanner scanner = new Scanner(System.in);
int number = scanner.nextInt();
System.out.println(number * 1);
System.out.println(number * 2);
System.out.println(number * 3);
System.out.println(number * 4);
System.out.println(number * 5);
System.out.println(number * 6);
System.out.println(number * 7);
System.out.println(number * 8);
System.out.println(number * 9);
}
}
public class TimesTable {
public static void main(String[] args) {
// 6단
int i = 1;
while (i < 10) {
System.out.println(6 * i);
i ++;
}
// 7단
for (int j=1; j<10; j++) {
System.out.println(7 * j);
}
}
}
import java.util.Scanner;
public class TimesTable {
public static void main(String[] args) {
System.out.println("구구단 출력할 단을 입력하세요.");
Scanner scanner = new Scanner(System.in);
int number = scanner.nextInt();
System.out.println("사용자가 입력한 값 : " + number);
if (number < 2 || number > 9) {
System.out.println("값을 잘못 입력했습니다.");
}
else {
for (int i=1; i < 10; i++) {
System.out.println(number * i);
}
}
}
}
public class TimesTable {
public static void main(String[] args) {
int[] result = new int[9];
for (int j=2; j<10; j++) {
for (int i=0; i<result.length; i++) {
result[i] = j * (i+1);
System.out.println(result[i]);
}
}
}
}
calculate 메서드 작성print 메서드 작성public class TimesTable {
// 1. calculate 메서드
public static int[] calculate(int times) {
int[] result = new int[9];
for (int i=0; i < result.length; i++) {
result[i] = times * (i+1);
}
return result;
}
// 2. print 메서드
public static void print(int[] result) {
for (int i=0; i < result.length; i++) {
System.out.println(result[i]);
}
}
// 3. 반복문으로 2단부터 9단까지 출력
public static void main(String[] args) {
for (int i=2; i<10; i++) {
print(calculate(i));
}
}
}
public class TimesTable {
// 1. calculate 메서드
public static int[] calculate(int times) {
int[] result = new int[9];
for (int i=0; i < result.length; i++) {
result[i] = times * (i+1);
}
return result;
}
// 2. print 메서드
public static void print(int[] result) {
for (int i=0; i < result.length; i++) {
System.out.println(result[i]);
}
}
public class TimesTableMain {
public static void main(String[] args) {
for (int i=2; i<10; i++) {
// 메서드를 가져올 클래스명을 명시
TimesTable.print(TimesTable.calculate(i));
}
}
}