※ 제가 공부를 하고 이해한 것을 바탕으로 정리한 것이라서 오류가 있을 수 있습니다.

 

 

1. 알고리즘

알고리즘이란 간단히 말해 어떤 문제를 풀기 위한 절차나 방법을 의미한다.

이것을 좀더 구체적으로 얘기하면 어떤 문제가 있을때 주어진 '입력'정보를

원하는 '출력(답)' 정보로 만드는 일련의 과정을 구체적이고 명료하게 적은 것이다.

 

2. 알고리즘 분석

한 가지 문제를 푸는 여러 가지 방법. 즉 여러 가지 알고리즘 중에 상황에 맞는 적당한

알고리즘을 골라 쓰려면 어떤  알고리즘이 어떤 특징을 지니고 있으며 얼마나

계산이 빠르고 편한지 등을 알아야 한다.

이처럼 알고리즘의 성능이나 특징을 분석하는 것을 '알고리즘 분석'이라고 한다.

 

 

 

3. 절대값 구하기 알고리즘

문제: 5와 -3의 절대값을 구하여라.

 

(1) 부호판단으로 구하기

# 절대값 구하는 알고리즘 풀이

# 수학 모듈 사용
import math

# 절대값 알고리즘1 (부호판단)
def abs_sign(a):
    if a >= 0:
        return a
    else:
        return -a


print(abs_sign(5))
print(abs_sign(-3))

 

 

1. 매개변수 a가 0보다 크거나 같은지 확인 후 만약 그렇다면 a를 결과로 골려줌

2. 0보다 작다면 -a를 결과로 돌려줌

 

실행 결과

 

 

(2) 제곱 후 제곱근으로 구하기

# 절대값 알고리즘 2 (제곱 후 제곱근)
def abs_square(a):
    b = a*a
    return math.sqrt(b)


print(abs_square(5))
print(abs_square(-3))

매개변수 a를 제곱하여 변수 b에 저장

그 후 b의 제곱근을 구해 결과로 돌려줌

 

실행 결과

 

+ Recent posts