DAY 14 연습문제, 배열

NA YE SOM·2023년 7월 17일
0

문제풀이
배열
-1차원
-2차원
-연습문제

SQL 응용평가
5교시에 문제 일부 베포(절반)
6교시에 시작
(부록에서 출제: 3문제)-> git 부록 예제

연습문제

1.


-> () 가 없더라도 먼저 연산함

2. while문 : 종료 조건 세우기

합계가 목표보다 언제 커지는지 확인

(1) total <= goal


-> 60원 누적

-> 회차 증가


-> final (상수처리)

변수이름 -> 대문자로 변경
(ctrl + shift + x)

3.



-> 2단 출력 : 단을 2로 고정시킴

4. 한줄에 8개씩 출력


-> n이 1로 고정되어있음
-> n을 바깥쪽으로 !

println vs print

-> 프린트 후에 줄을 바꿔줌


-> 공백 2개, 공백 1개

-> tab 키

-> 고정된 간격을 옮겨다닐 수 있는 것
(일반적으로 스페이스 4개, 스페이스 8개 띄어져있음)


-> 2단~9단 출력이 끝나고 난뒤 (줄바꿈 하기)


-> 출력 폭을 4자리로 만들기(숫자가 아니면 공백으로 채우기)

tab은 지우고


%d : 정수

%2d : 두자리 정수


-> 전체폭을 4자리로 맞춰야 해서 앞에 공백 2자리 생김



-> 숫자가 나타나는 정렬 위치 가 달라짐

-> 4자리 맞추지만 숫자랑 공백 어디에 배치하는지 순서 차이있음

  • 붙어 있으면 숫자가 앞으로, 없으면 숫자가 뒤로 감


-> dan * n 맞춰서 숫자를 먼저 출력하기

5.


6.



7. 공백,띄어쓰기 몇개인지 파악하기








row + 4

8.





배열

1.

  • 인덱스 번호를 매길때 : 번호를 2개 씀


-> 인덱스를 2개를 가지는 구조 (실제로는 한줄에 하나씩 있는것)
-> 길이가 4일 일차열 배열이 4개가 있다


-> 메모리 공간을 연속적으로 잡아주는 키워드 : new


[앞] 1차원 배열의 갯수
[뒤] 1차원 배열의 길이


-> 실제 구조는 따로따로 있음



-> 배열은 만들어 0으로 초기화됨

2.


2번 출력 후 줄바꾸기 (반복)

-> for문으로 바꾸기






-> i j 섞지 말기



2차원 배열의 초기화


-> 3행 2열

배열형 for문(1차형배열,2차형 배열)어떻게 쓰는지?


-> 모든 배열은 참조값으로 관리함
(해당 참조값 찾으면 데이터가 있음)


-> 1차원 배열 이름


-> 2번째 1차원 배열


-> 1번지에 가면 데이터가 몇개있는가? . length

a
a[0] 모두 배열

a.length == 3(행수)

a[i] -> 행번호


->3,2를 숫자로 적지 않고 배열로 바꿔서 적기

-> 행수, 열개수 숫자로 적지말고
(2차원 배열 : length 값이 2번 사용되어야 함)


advaneced for문 (사용법이 쉬운 for문), 인덱스 명시가 없는 for문

배열요소 ; 배열에 저장된 각각의 변수

-> 배열 a의 모든 요소를 순차적으로 number 넘기시오(인덱스 명시가 전혀 없는 for문)


-> 인덱스가 필요 없을때 사용하면 좋음
but 맹신하면 안됨(advanced for문으로 모든 1차열 배열 함수를 바꿀 수 없음: 쓸수 없는 경우에는 쓰면 안됨)
-> 배열요소가 변할때(배열에 저장된 값이 변할때) : advanced for문 사용할 수 없음


배열의 util을 저장하는 클래스 이름 : Arrays.


-> toString 아무거나 골라도 됨

-> 배열 a값은 변하지 않음


-> 배열의 요소를 number로 빼서 number를 늘린것
(배열은 늘지 않음) -> 배열의 요소를 변수로 복사해와서 쓰는 것(배열요소가 변하는 경우에 사용할 수 없음)
vs 일반 for문 : 배열에 직접 접근


-> 배열값을 바꾸지 않는 단순참조의 경우에는 괜찮음

2차원 배열


주소가 저장되는 타입 : 참조타입
-> int의 배열타입


-> int의 배열 타입
(a의데이터 꺼내면 일차원 배열임)


-> a의 첫번째 요소 : 배열타입

  • 2차원 배열은 웹개발에서 거의 쓰지 않는다
  • 2차원 배열은 게임개발에서 많이 씀(평면에서 이루어지는것)
    (ex) 테트리스

    -> 한줄을 없애는 조건: 모두 1로 되었을때
profile
개발자 velog

1개의 댓글

comment-user-thumbnail
2023년 7월 17일

저도 개발자인데 같이 교류 많이 해봐요 ㅎㅎ! 서로 화이팅합시다!

답글 달기