본문 바로가기

카테고리 없음

스파르타코딩클럽

11/8

파이참 

알고리즘 

최대값 찾기

첫번째 방법

input = [3, 5, 6, 1, 2, 4]
max_num = 6

def find_max_num(array):
     max_num = array[0]
     for num in array:
         if num > max_num:
             max_num = num
             return max_num

이렇게 한후 결과 값 :5

왜 이렇게 되는지 한참 찾은후에 찾지못해서 튜너님한테 여쭤보니 return max_num 값이

for num in array: 와 줄이 맞지않아서 해결되지 않았던 문제이다

input = [3, 5, 6, 1, 2, 4]
max_num = 6

def find_max_num(array):
     max_num = array[0]
     for num in array:
         if num > max_num:
             max_num = num
     return max_num

 

이렇게 수정후에 결과값이 6으로 정상으로 돌아왔다

2번째 방법

input = [3, 5, 6, 1, 2, 4]


def find_max_num(array):
    for num in array:
        for compare_num in array:
            if num < compare_num:
                break
            else:
             return num

처음 했을때 방법 이렇게 코드를 짜면 결과값이 3이 나온다

이것도 else: 를 뒤로 줄에 맞춰줬을때

input = [3, 5, 6, 1, 2, 4]


def find_max_num(array):
    for num in array:
        for compare_num in array:
            if num < compare_num:
                break
        else:
             return num
    # 이 부분을 채워보세요!
    return 1

 

 

정확한 값인 6이 라는 결과값이 나온다