자바를 잡아버려 (2)

지니·2022년 4월 21일
1

자바를 잡아버려!

목록 보기
2/4
post-thumbnail

지난 장에서는 자료형과 연산자 또 기본적이 조건문인 if 문을 배워 보았다
이제 컴퓨터에 명령을내리는 것에 조금 익숙 해졌기를 바라며
지난장 에서 사용한 변수에 대해서 좀더 알아볼 것 이다

변수

지난 자바잡(1) 에서 사용한 소스 코드를 보자

public static void main(String[] args) {
		
		int i = 1;
		if (i==0) {
			System.out.println("i변수의 값은 0입니다.");
		} else {
			System.out.println("i변수의 값은 0이 아닙니다.");
		}
		System.out.println("프로그램을 마칩니다.");
	}

정수형 변수 i에게 1 을 넣고 i 의 값에 따라 적당한 메세지를 화면에 표시하는 코딩을 만들었다
이 코딩에서 i는 변수인데 변수로 쓸수있는 단어는 다음과 같다

변수는

  • 숫자로 시작할수 없다
  • 몇몇 특수문자는 사용할수있으나 엔간하면 쓰지 않는다
  • Java 에서 이미 사용하고있는 예약어들은 사용할수없다

위에 제약 조건만 아니라면 아무거나 변수명으로 사용이 가능하다 하지만 다른사람들이 이해할수있도록 쉽고 일정한 룰을 가지고 쓰는것이 국룰이다

일반적으로 변수명을 아래와 같이 쓰는데

String FriendName = "홍길동";
int number = 5;
double cm = 3.2;

보자마자 영어가 너무 많고 컴퓨터는 어려운 명령어가 많구나 생각할수있는데
딱히 그런게 아니다 그냥 친절히 이름 써주는 거니까 무서워 하지말고 도전해보자

반복문

반복문은 여러번 컴퓨터에게 반복해서 일을 시키는 것을 편하게 하게 만들어진 문법이다
여러 반복문을 한번 살펴보자

while

while 반복문은 아래와 같이 사용된다

//반복조건
while (num <5)  // num 이 5보다 작을경우 반복영역을 실행
{
//반복영역
	System.out.println("i like Java" + num);
}

while 문은 반복 조건이 true 일 경우 반복영역의 내용을 계속 반복해서 돈다

소스 코드

	public static void main(String[] args) {
		
		int i = 0; // i는 0 이다
		while(i < 3 ) { // 만약 i 가 3보다 작다면
			System.out.println("i는 3보다 작은 값입니다.");
        }
    }

실행 결과

i는 3보다 작은 값입니다.
i는 3보다 작은 값입니다.
i는 3보다 작은 값입니다.
i는 3보다 작은 값입니다.
...

하지만 아래와 같이 조건을 다르게 주게 되면

소스 코드

public static void main(String[] args) {

	int i = 0; // i는 0이다
		while(i < 3) { // i 가 3보다 작다면
			System.out.println("i는 3보다 작은 값입니다.");
			i = i +1; // i 에게 1을 추가한다
		}
        
    }

실행 결과

i는 3보다 작은 값입니다.
i는 3보다 작은 값입니다.
i는 3보다 작은 값입니다.

i 값이 반복문의 사이에서 0부터 1씩 증가하기 떄문에 총 3회 실행 하게 된다

do while

do while 반복문은 while 반복문하고 거의 차이가 없지만 true/false 의 조건확인이 뒤에 있다는점이 다르다

do while 문은 아래와 같이 사용된다

do
{
	//반복영역
	System.out.println("I like Java" + num);
	num++;
			
	 //반복조건
} while (num <5);

do while 문은 조건확인이 뒤에 있기 떄문에 최소 1회는 실행이 된다
아래 소스코드를 확인해 보자

소스 코드

	public static void main(String[] args) {
    
		int i = 0; // i 는 0 이다
		do { // 해라
			System.out.println("i는 3보다 작은 값입니다.");
			i ++; // i 에게 1추가
		}while(i < 3); // i 가 3보다 작다면
    }

실행 결과

i는 3보다 작은 값입니다.
i는 3보다 작은 값입니다.
i는 3보다 작은 값입니다.

위에 while 문과 동일한 결과가 나오게 된다

while 문은 "만약 김봉산 키가 180cm 이상 이라면 적어줘" 같고
do while 문은 "김봉산 키 적어줘 근데 180cm 이상이라면!" 같은느낌

뭐가 다른지 모르겄다

for

for 반복문이 가장 많이 쓰이는 반복문이라고 한다

for 반복문은 3가지 영역으로 나눠져있는데 대괄호 안 숫자로 표현하겠다

for 문 은 아래와 같이 사용한다

for ([1]int num=0; [2]num<5; [3]num++;)
{
	[4]System.out.println("...");
}

[1] 처음에 변수값을 지정하는 부분
[2] 반복을 할지 말지 true/false 를 판단하는 반복 조건 부분
[3] 반복되는 부분 실행하고 나서 실행되는 부분
[4] 조건 부분이 true 일때 실행되는 부분

  • 즉 실행은 [1] = [2] = [4] - [3] 으로 [2]번의 조건이 false 가 될떄까지 반복한다

while 문과 for 문은 서로 똑같은걸 만들수가 있다 예를 들어

while문 소스 코드

int num=0; 
while(num <3); 
{
	System.out.println("..."); 
    num++; 
}

for문 소스 코드

for(int i5=0; i5<3; i5 = i5 +1) {
			System.out.println("i5는 3보다 작은 값입니다.");
            }

서로 다른거 같아도 똑같은 말을 하고있는거다

구구단 출력하기

이제까지 배운 반복문 for 문과 while 문을 사용하여 구구단을 만들어 보자

for문 구구단 만들기

	for(int i = 2; i <= 9; i++) { // i 는 2 이다 i 가 만약 9보다 작거나 같다면 아래를 실행 후 i에게 1을 추가한다
			for(int j = 1; j <= 9; j++) { // j는 1이다 만약 j가 9보다 작거나 같다면 아래를 실행 후 j에게 1을 추가한다
				int result = i * j; // result는 i 와 j 의 곱
				System.out.println(i + " * " + j + " = " + result);
	}

while문 구구단 만들기

		int i = 2; // i 는 2 이다
		while(i<=9) { // 만약 9보다 작거나 같다면
			int j = 1; // j는 1이다
			while(j<=9) { // 만약 j가 9보다 작거나 같다면 
				int result = i * j;  // result는 i 와 j 의 곱
				System.out.println(i + "*" + j + "=" + result);
				j = j +1; // j에게 1을 추가한다
			}
			i = i +1; //i에게 1을 추가한다
		}
    }

실행 결과

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
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
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
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
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
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
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
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

둘의 실행결과는 같다!

이제 46장 까지 넘어왔는데 처음 2시간동안 쓴게 날아가서 1시간을 또 써버렸다
처음 썻던 글도 기억이 안나고 체력도 다 떨어져서 정리가 좀 디테일이 굉장히 떨어져 버렸다

벨로그 죽여버리고 싶네 진짜

profile
대충 살고싶다

0개의 댓글