반은 이해하고, 반은 얼레벌레 코드를 짠 것 같다.
특히 while 반복문과 for 반복문, if 조건문에서, 머리로 어느 정도 동작 원리는 이해했으니 익숙하지 않아 버벅대는 느낌으로 짠 것 같다.
이런 부분들이야말로 직접 타이핑으로 반복 연습이 많이 필요한 것 같다.
또 학습 시에 코드를 직접 친 것과는 별개로, 여기 Notion에 정리하는 것도 꽤나 노가다였다. 어느 정도 밸런스 선에서 상세하게 기술해야 하는지 아직까지 긴가민가한 면도 없지 않아 있는 데다, 완벽주의 성격 상 스터디로그에 내가 잘못 이해한 것과 애매하게 이해한 것들이 남는 것에 대해 관대하지 못한 부분이 알게 모르게 스트레스를 주는 것 같다.
나중에 더 공부해야 할 부분들도 체크를 해야 할텐데... 어떻게 체크해야 한 눈에 알 수 있을까...?? 아닌가?? 너무 쓸데없이 지엽적인 고민인가??
System.out.println(
프린트할 내용);
System
부분은 반드시 대문자로 시작!!public class Gugudan {
public static void main(String args[]) {
System.out.println("2단"); //"2단"이라는 문자열 출력
System.out.println(2 * 1); //2 * 1의 연산 결과값 출력
System.out.println(2 * 2); //2 * 2의 연산 결과값 출력
System.out.println(2 * 3); //2 * 3의 연산 결과값 출력
//중략
System.out.println(2 * 9); //2 * 9의 연산 결과값 출력
System.out.println(""); //공백 문자열을 한 줄로 잡아 출력
}
}
Ctrl + Alt + 위 or 아래 화살표
를 쓴다.public class Gugudan {
public static void main(String args[]) {
System.out.println("3단");
System.out.println(3 * 1); //이 줄에 커서를 대고 Duplication 단축키
System.out.println(3 * 2);
System.out.println(3 * 3);
//중략
System.out.println(3 * 9);
System.out.println("");
}
}
// ※ 클래스 및 메인 메소드 생략
//자료형 및 변수명 선언 후, 해당 변수에 초기값 대입
int a; //정수형 자료를 저장하기 위해 int, 변수명은 a
a = 1; //변수명 a에 해당하는 공간에 초기값 1 대입
System.out.println(a); //a에 할당된 정수 값 1 출력
//자료형 및 변수명 선언과 동시에 초기값 대입
int b = 2; //정수형 자료를 저장하기 위해 int, 변수명은 b, 초기값 2 대입
System.out.println(b); //b에 할당된 정수 값 2 출력
b = 3; //변수명 b에 해당하는 공간에 정수 값 3 대입(대체)
System.out.println(b); //b에 할당된 정수 값 3 출력
// ※ 클래스 및 메인 메소드 생략
// 4단 - int 변수 활용할 것
System.out.println("4단");
int result = 4 * 1; //정수형 변수 선언 w/ 변수명 result
System.out.println(result);
result = 4 * 2; //이미 선언된 result 변수값 바꾸기
System.out.println(result);
result = 4 * 3;
System.out.println(result);
//위 두 줄 선택 후 Ctrl+Alt+아래화살표로 선택 영역 duplicate
result = 4 * 4;
System.out.println(result);
//중략
result = 4 * 9;
System.out.println(result);
클래스 선언 전, 맨 위에 Scanner 기능을 import한다.
// 사용자에게 입력값을 받기 위한 Scanner 기능 import
**import java.util.Scanner;**
public class Gugudan {
public static void main(String args[]) {
//코드 생략
}
}
Scanner 명령을 사용하여, 원하는 변수에 사용자에게 직접 값을 받아 대입하도록 한다.
// ※ 클래스 및 메인 메소드 생략
Scanner x = new Scanner(System.in); //사용자에게 값을 받아 x에 대입
int c = x.nextInt(); //x의 값을 정수형으로 바꿔 정수형 변수 c에 대입
System.out.println(c); //변수 c에 할당된 값, 즉 사용자가 입력한 값 출력
코드 실행(Ctrl+F11
)하여 콘솔에서 숫자 5
를 입력하여 결과를 확인한다.
// ※ 클래스 및 메인 메소드 생략
// 5단 - 사용자에게 입력값을 받아(Scanner) 구현해보기
System.out.println("몇 단??");
Scanner scanned = new Scanner(System.in);
int number = scanned.nextInt();
System.out.println(number + "단");
System.out.println(number * 1);
System.out.println(number * 2);
//중략
System.out.println(number * 9);
System.out.println(6 * n);
)을 일정 규칙을 통해 프로그램이 자동으로 반복할 수 있도록 명령할 수도 있다.while
이 있다.기본 구조는 while (
반복 조건 제시) {
반복 실행할 명령}
이 된다.
// ※ 클래스 및 메인 메소드 생략
int d = 1; //정수형 변수 d의 초기값 1 대입
while (d < 5) { //d가 5보다 작을 때 아래의 두 줄을 순차대로 반복 실행
System.out.println(d); //d의 값 출력
d++; //d의 값을 1 증가시키기
} //반복문 종료
/* 아래와 같은 값이 출력될 것이다.
1
2
3
4
*/
// ※ 클래스 및 메인 메소드 생략
// 6단 - while 반복문을 사용하여 코드 줄 수를 줄여보기
System.out.println("6단");
int i = 1; //단 수 x "몇" <- 1 ~ 9까지의 index 변수 i의 초기값 설정
while (i < 10) { //i < 10 조건 하에 반복 실행(즉, 1 ~ 9)
System.out.println(6 * i); //곱셈 결과 출력
i++; //i 값을 1 증가
} //반복문 종료
while
반복문으로 9줄짜리 한 단의 구구단을 5줄로 줄였다.for
반복문을 사용해서 좀 더 간단한 명령으로 줄여보자.for(
반복 횟수 제시) {
반복 실행할 명령}
이 된다.// ※ 클래스 및 메인 메소드 생략
// 7단 - for 반복문을 사용하여 코드 줄 수를 좀 더 줄여보기
System.out.println("7단");
for (int j = 1; j < 10; j++) { //반복 횟수로써 변수 j의 초기값 및 반복 한정 횟수(9회) 지정 후 반복문 시작
System.out.println(7 * j);
} //반복문 종료
if
, else if
, else
조건문이 있다.if(
조건 1) {
조건 1일 때 명령} else if(
조건2) {
조건 2일 때 명령} else {
제시된 어느 조건에도 해당하지 않을 때 명령}
이 된다.// ※ 클래스 및 메인 메소드 생략
// 8, 9단 - 조건문을 사용하여 값 입력 범위를 제한시켜보기
System.out.println("이번엔 또 몇 단??");
Scanner scannedAgain = new Scanner(System.in);
int numberAgain = scannedAgain.nextInt();
if (numberAgain < 2) { //입력값이 2 이하일 때 아래 명령 실행
System.out.println("2 이상의 값을 입력해주십시오.");//사용자에게 에러 메시지 출력
} else if (numberAgain > 9) { //입력값이 2 이하가 아니지만, 9 이상일 때 아래 명령 실행
System.out.println("9 이하의 값을 입력해주십시오.");//사용자에게 에러 메시지 출력
} else { //위의 어느 특정 조건도 해당하지 않을 때 실행
System.out.println(numberAgain + "단");
for (int k = 1; k < 10; k++) {
System.out.println(numberAgain * k);
} //반복문 종료
} //조건문 종료