파이썬으로 별찍기
서론
별찍기는 프로그래밍 입문자들에게 가장 기본적이면서도 재밌는 과제 중 하나이다. 파이썬에서는 간단한 코드 몇 줄만으로 다양한 형태의 별을 출력할 수 있어서, 많은 사람들이 이를 공부하고 즐겨 사용하고 있다. 이번 포스팅에서는 몇 가지 대표적인 별찍기 패턴을 소개하고, 해당 패턴을 구현하는 방법을 알아보도록 하겠다.
본론
1. 정삼각형 별찍기
정삼각형은 각 변의 길이가 동일한 삼각형으로, 각 내각이 60도인 형태를 가지고 있다. 파이썬에서는 이러한 정삼각형을 별로 표현하는 것이 매우 간단하다.
“`python
num = int(input(“별의 크기를 입력하세요: “))
for i in range(num):
print(” ” * (num-i-1) + “” * (2i+1))
“`
위 코드를 실행하면 사용자로부터 별의 크기를 입력받아, 해당 크기만큼의 정삼각형을 출력한다. 이때, 각 줄마다 공백 문자와 별 문자를 적절히 조합해서 출력하는데, 이는 print
함수의 end
매개변수를 이용하여 공백 없이 출력하는 방법으로 구현할 수도 있다.
2. 역삼각형 별찍기
다음으로는 역삼각형을 별로 표현하는 방법에 대해 알아보자. 정삼각형과 마찬가지로 간단한 코드 몇 줄만으로 역삼각형을 출력할 수 있다.
“`python
num = int(input(“별의 크기를 입력하세요: “))
for i in range(num):
print(” ” * i + “” * (2(num-i)-1))
“`
위 코드를 실행하면 사용자로부터 별의 크기를 입력받아, 해당 크기만큼의 역삼각형을 출력한다. 역삼각형도 정삼각형과 같은 원리로 공백 문자와 별 문자를 조합하여 출력한다.
3. 다양한 모양의 별찍기
시각적으로 더 다양한 모양의 별을 출력하고 싶다면, 여러 개의 for
문을 중첩하여 사용하거나, 조건문을 활용하여 출력 패턴을 제어할 수도 있다. 예를 들어, 다음과 같은 코드를 사용하여 마름모 모양의 별을 출력할 수 있다.
“`python
num = int(input(“별의 크기를 입력하세요: “))
for i in range(num):
print(” ” * (num-i-1) + “” * (2i+1))
for i in range(num-2, -1, -1):
print(” ” * (num-i-1) + “” * (2i+1))
“`
위 코드를 실행하면 사용자로부터 별의 크기를 입력받아, 해당 크기를 가진 마름모 모양의 별을 출력한다. 첫 번째 for
문은 다른 모양들과 동일한 정삼각형의 별찍기이고, 두 번째 for
문은 역삼각형의 별찍기를 이용하여 첫 번째 줄부터 끝에서 두 번째 줄까지를 출력한다.
결론
이번 포스팅에서는 파이썬을 이용하여 별찍기 패턴을 구현하는 방법을 알아보았다. 정삼각형, 역삼각형 등 간단한 형태부터 복잡한 형태까지 다양한 모양의 별을 출력할 수 있으며, for
문과 print
함수의 활용을 통해 간결하게 구현할 수 있다. 파이썬을 활용하여 별찍기를 통해 프로그래밍 기초를 익히고, 문제 해결 능력을 향상시킬 수 있다.