본문 바로가기
Programming Languages/Python

[파이썬 코딩 테스트] 직사각형 넓이 구하기

by Henry Cho 2026. 2. 12.

포스트 난이도: HOO_Junior


# 연산자 추론 능력 평가

코테라고 부르는 코딩 테스트가 결과를 만들어낼 수 있는지 확인하는 트렌드에서 추론과 응용력을 평가하는 트렌드로 바뀌었다. 아무래도 AI가 코드 작성을 더 잘하기 때문에 만들려고 하는 결과를 어떻게 구성해야 하는지를 더 보려고 하는 것 같다. 한마디로 프로그래머보다 기획이 가능한 개발자를 원하고 있는 셈이다. 솔직히 나 또한 일일이 코드를 더 이상 작성하지 않는다. 주니어 개발자급의 AI가 기획에 대한 초안을 준다. 코테 자체가 사라지지는 않을 것 같다. 다만 코테의 방향성이 바뀌기 때문에 이점을 고려해서 준비를 하면 도움이 될 것이다.


# 직사각형 넓이 구하기 예제

우선 직사각형 또는 도형 넓이 구하기 코딩 문제는 거의 "Hello world" 급으로 꼭 나오는 문제이다. 하지만 더 이상 코드 작성 능력을 평가하는 게 아니라 추론, 응용력을 보다 보니, 문제의 핵심은 올바른 연산자를 찾아내서 수정할 수 있는가에 초점이 맞춰있다. 따라서 코드를 처음부터 작성하라고 하지 않고 잘못된 부분을 수정하라는 유형의 문제가 나올 수 있다.


class Rectangle:
    def __init__(self, length, width):
        self.length = length
        self.width = width
        
    def calculate_area(self):
        return self.length * self.width

my_rectangle = Rectangle(20, 100)
print(f"The area of the rectangle is: {my_rectangle.calculate_area()} square units")

예를 들면 "def calculate_area(self)"에서 직사각형 계산식을 선언해두고 있다. 여기서 넓이를 구하기 때문에 곱셈 연산자가 들어가 있는 걸 알 수 있다. 문제에 따라서 이 연산자를 수정해서 결과를 제출하도록 하는 문제가 나올 수 있다는 것이다.

 

추가적으로 __init__는 객체를 선언할때 사용하는 생성자이다. 여기서 length와 width에 대한 정의가 이뤄지듯이 객체를 정의할 때 묶어서 만들어주면 사용하기가 용이하다. 또한 self의 경우에는 특정 객체를 지칭한다. self.length, self.width로 정의를 함으로써 특정 블록 내에서만 사용되는 게 아니라 다른 블록 내에서도 가져다 사용이 가능하다.

 

한마디로 self와 __init__를 사용하는건 파이썬에서 암묵적 약속을 한 것이기에 알고 있는 것이 좋다. 물론 사용하지 않고도 코드 구현은 되지만 개발자들과 소통하기 위해서는 각 언어가 가진 약속을 지켜서 코드를 작성하는 것이 좋다.


 

728x90

댓글