Notice
Recent Posts
Recent Comments
Link
«   2024/11   »
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
Tags more
Archives
Today
Total
관리 메뉴

어? 이게 되네

2022.03.30. 수요일 이공계 전문기술 연수사업 3일차 본문

TIL

2022.03.30. 수요일 이공계 전문기술 연수사업 3일차

토끼귀에진주귀걸이 2022. 3. 31. 09:29

오늘 배운 것

제어문
ㄴ프로그램의 흐름을 제어하기 위한 문장들
선택문, 반복문, break,continue

---------------------------------------------
선택문
ㄴ상황에 따라 실행코자 하는 명령어들을 선택시킬 때 사용하는 문장
ㄴ종류는 if와 switch가 있음

----------------------------------------------
switch의 구조

switch(항){
case 값1:
명령어(들);
case 값2:
명령어(들);
case 값3:
명령어(들);
....
case 값n:
명령어(들);
default:
명령어(들);
}

항에는 변수가 오거나 변수를 이용한 수식이 오거나 메소드 호출문이 올 수 있음.
반드시 각각의 case문 끝에 break가 있어야 하는 것은 아님.
해결해야 할 문제에 따라서 적절한 곳에 break를 둘 수 있음.
각각 케이스의 값이 순서대로 올 필요는 없음.
하지만 케이스의 값이 중복되어선 안됨.
같은 처리를 하는 케이스들을 한 줄로 표현할 수 있음.

------------------------------------------------------------------------------------------------------------

반복문

ㄴ특정 명령어들을 조건을 만족할 동안 계속해서 반복 실행코자 하는 문장을 말함.

ㄴ종류는 for, while, do~while 세 가지가 있음.

------------------------------------------------------------------------------------------------------------

반복문 - for 문의 형태

for(조건식1;조건식2;조건식3){

    반복 실행시킬 명령어(들)

}

 

반복실행시킬 명령어가 한 개밖에 없으면 중괄호를 생략할 수 있음.

그러나 반복실행시킬 명령어가 두 개 이상이면 반드시 중괄호로 묶어줘야함.

조건식1 : 초기값

조건식2 : 최종조건식

조건식3: 증감식

 

반복문에서 필요한 변수를 미리 선언할 수도 있고 필요한 곳에서 바로 선언하여 사용할 수도 있음.
또, 필요하다면 반복문에서 선택문을 표현할 수 있음.

------------------------------------------------------------------------------------------------------------------

중첩반복문

ㄴ반복문 안에 또 다른 반복문이 올 수 있음.

 

중첩반복문의 구조

for(int i=1; i<=3; i++){

   명령어;

}

위의 반복문은 명령어가 3번 동작함.

i가 각각 1,2,3일 때 동작함.

 

for(int i=1; i<=3; i++){

   for(int j=1; j<=4; j++){

      명령어

   }

}

위의 반복문은 명령어가 12번 동작함

---------------------------------------------------------------------------------------------------------

String의 문자열이 정확히 일치하는지 판별하고 싶을 때는

(String으로 선언한 문자열변수).equals("판별할 문자열")기능을 사용함.

 

 

오늘 헷갈린 것

  • 사용자에게 양수인 정수 n을 입력받아서 짝수의 갯수, 짝수의 합, 홀수의 갯수, 홀수의 합을 for문 출력해서 간단하게 구하는 방법이 떠오르질 않아서 당황했음ㅠ
  • 변수를 if문이나 for문 밖에서 정의/선언하는지 안에서 정의/선언하는지에 따라 오류가 날 수 있음을 깨달았다. 아직 정확하게 숙지한 건 아니지만 더 알아봐야겠다.
  • for문 (반복문) 탈출 후에 선언한 변수 i가 뭘로 찍히는지 정확히 판별하는 것이 아직도 헷갈린다.
  • 자바에서 스트링의 기능 중에 charAt(); 기능 다시 숙지하기.
  • 변수가 있고 선언을 한 후에 초깃값을 설정해야 비로소 그 변수가 무엇인지 정의내릴 수 있음

 

오늘 한 생각

오늘은 분명 피곤한데 잠이 안와서 잠을 조금 설쳤더니 더 피로가 누적된 기분이다.

그래서 그런지 센터 와서 코드 치는데 좀 집중이 안된다. ㅠㅠ 앞에 분 키보드 소리도 거슬리기도 하고..ㅎ(핑계)

그리고 컴퓨터적으로 사고하는 것이 아직은 좀 익숙하지 않다. ㅠ 수학과의 고질병.. 공식병..

최대한 코드를 칠 때 어떻게 하면 간단하게 칠 수 있는지 고민하고 치는 연습이 많이많이 필요하다.

그리고 생각보다 기록은 정말정말 중요한 것 같다.

다른 사람들의 블로그를 참고하면서 나도 하루하루 배운 것들 꼼꼼하게 기록해놓는 습관을 들여야겠다.