강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của fks13118470
fks13118470

câu hỏi đã được viết

Giới thiệu về giải quyết vấn đề thuật toán JavaScript (chuẩn bị cho bài kiểm tra mã hóa)

5. Tìm giá trị nhỏ nhất

제가 작성한 코드에 문제가 무엇일까요ㅠ

Đã giải quyết

Viết

·

314

0

function solution(arr) {
            let min = arr[0]
            for(let i=0; i<arr.length; i++){
                // return arr.length
                if(min>arr[i]){
                    min = arr[i];
                }
                return min;
            }
        }

        let arr = [5, 7, 1, 3, 2, 9, 11];
        console.log(solution(arr));

저는 최솟값을 배열의 0번지로 지정을해서 해당 값보다 더 작은값이 나오면 바꿔주게 작성을 하였는데 리턴값이 '5'로 출력이 됩니다. 

처음에는 5 > 7 작기때문에 5가 리턴되는건줄 알았는데

배열의 순서를 바꾸어 [5, 1, 7, ... ]을 해도 5가 리턴이 되어 해당 로직이 배열의 순서때문은 아니란것을 확인했습니다.

혹시 제 로직에 대해서 어디가 문제인지 알려주시면 감사하겠습니다..!

에러javascript문제코테 준비 같이 해요!

Câu trả lời 2

0

return을 사용하면 코드가 그대로 종료되기 때문에 for문이 바로 종료가 되버린 것 같아요!

0

codingcamp님의 프로필 이미지
codingcamp
Người chia sẻ kiến thức

안녕하세요^^

return min;  코드라인이 for 반복문이 끝난 다음에 있어야 합니다.

fks13118470님의 프로필 이미지
fks13118470
Người đặt câu hỏi

헉..!! 그러네요!! 감사합니다!!! 다음부터는 어디에서 끝나는지 잘 확인해야겠어요!!

Hình ảnh hồ sơ của fks13118470
fks13118470

câu hỏi đã được viết

Đặt câu hỏi