inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음

문제와 풀이2

배열 문제 문의 드려요!

350

뚜만몬

작성한 질문수 2

0

 학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.


1. 강의 내용과 관련된 질문을 남겨주세요.
2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.
(자주 하는 질문 링크: https://bit.ly/3fX6ygx)
3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.
(질문 잘하기 메뉴얼 링크: 캡쳐1005.JPEG)

질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.
=========================================
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예/아니오)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)

[질문 내용]
이해가 안되서 질문 올립니다ㅠㅠ

1.주황색 줄표시 한 건 min과 max 값이 같다는건가요?ㅠ설명들었지만 이해가 안되서요. 아니면 배열 0번째 칸에 같이 숫자를 넣겠다는건가요? 같이 넣으면 따로 분리해서 인식하는건가요??

  1. 보라색 네모칸에 있는 for문 int i=1 은 왜 1로 초기화값을 줬을 까요?ㅠㅠ

  2. if (number[i] < min number) 이 조건은 배열 number i열에 있는 값이 minnumber보다 작은지 어케 알 수 있을까요? 위에 minnumber=maxnumbers[0] 선언해서 그런가요?ㅠㅠㅠ헝헝

java 객체지향

답변 2

0

OMG

안녕하세요. 뚜만몬님, 공식 서포터즈 OMG입니다.

1.

다음과 같은 1줄의 코드는

minNumber = maxNumber = numbers[0];

아래의 2줄의 초기화 과정과 동일합니다. 2줄로 초기화 하는 것을 1줄로 초기화하였습니다.

maxNumber = numbers[0];
minNumber = numbers[0];

numbers[0] 값을 maxNumberminNumber에 들어가는 것을 볼 수 있습니다.

 

2.

반복문의 시작이 0이 아닌 1부터 시작인 이유는

첫 데이터는 모두 동일하기 때문에, 그 다음의 숫자들부터 비교 확인하여 가장 큰 값, 가장 작은 값을 찾을 수 있기 때문입니다.

 

3.

if (number[i] < min number) 이 조건은 배열 number i열에 있는 값이 minnumber보다 작은지 어케 알 수 있을까요?

작은 지 알고 있는게 아니고, 값을 비교하여 작을 경우를 확인하려는 조건문입니다.

가장 작은 값을 세팅하기 위한 선행작업이라고 보시면 됩니다.

감사합니다.

0

김슬기

최소값, 최대값을 구할땐 배열 안 0번째 순서부터 차례차례 값을 비교하며 찾아가게 됩니다.

그러기 위해선 min과 max 모두 배열의 0번째인 numbers[0]값을 먼저 넣어 놓고

min의 경우 배열 0번째랑 1번째를 비교해 -> 배열 1번째가 더 작아? 그럼 1번째 값을 넣어 -> 1,2비교 ->2,3비교 ......

비교하다보면 제일 작은 혹은 큰 숫자를 찾아 min과 max에 담겠죠

주황색 줄을 풀어서 쓰면

int minNumber = numbers[0]

int maxNumber = numbers[0] 이고

코드 수를 줄이기 위해 위에 int minNumber,maxNumber선언 후

minNumber = maxNumber = numbers[0] 으로 초기화한겁니다

 

for문은 한번이라도 도는걸 줄이기 위해 1을 넣지 않았나 싶습니다.

어차피 배열 0과 1부터 비교를 할거니 배열 0과 배열 0을 비교하는건 의미가 없죠

 

3번질문이 비교하는 과정인겁니다 for문을 돌며 새로 갱신된 min값이 배열의 i번째보다 작아? 그럼 그걸 min에 넣을거니까요~

문제와 풀이4 문제점

0

49

2

문제풀이 시간마다 방향성

0

46

2

피라미드 문제 풀이

0

73

1

ScannerWhile3 예제 코드 질문

0

58

1

짝수 출력 문제 질문

0

53

1

Array 연습 문제 5번 질문입니다.

0

85

2

단축어가 이상하게 나옵니다

0

133

2

Sql강의

0

91

1

array 문제풀이 2번 질문입니다.

0

57

1

JAVA입문 / 메서드편 문제와 풀이2

0

48

1

인텔리제이 무료버젼이 통합되었다는데 30일 무료버전이면 어떻게 사용하나요

1

815

3

OperationEx3에서 꼭 boolean을 써야 하나요?

0

63

1

for, while문 작성

0

66

1

68강 ArrayEx6 클래스 질문

0

61

1

IO.println(String.format("Hello and welcome!"));

0

152

2

소스코드 실행이 안돼요

0

120

2

메서드 문제와 풀이2에서 마지막 문제 이렇게 풀어도 괜찮은 건가요..?

0

80

1

While과 for 스코프 질문

0

64

1

김영한 java 입문 설치 질문

0

139

2

버퍼문제?

0

55

1

for문 피라미드 찍는거 질문

0

79

1

21버전이 없고, 강의 메뉴얼 확인해보면 된다는 김영한 선생님 답변 확인했습니다.

0

377

1

3번 문제 질문 있습니다.

0

100

2

sout에는 변수가 하나만 들어가야 하나요?

0

135

1