01_Python

36_제어문>제어문 연습(1)

chuu_travel 2025. 1. 7. 22:35
728x90
01. 제어문 연습
#1. 1부터 1000까지의 자연수 중 3의 배수의 합 구하기
#166833

###해설1
result = 0

for i in range(1, 1001):
    if i % 3 == 0:
        result += i

print(result)
166833

 

###해설2
result = 0

for i in range(3, 1001, 3):
    result += i

print(result)
166833

 

 

# 2. 계단식으로 별 출력하기
#*
#**
#***
#****
#*****

###해설1
for i in range(1, 6):
    print("*" * i)
*
**
***
****
*****

 

###해설2

for row in range(5):
    for col in range(5):
        if col <= row:
            print("*", end = "")
        else:
            pass
    print()
*
**
***
****
*****

 

 

# 3. 대각선으로 별 출력하기
# *
#  *
#   *
#    *
#     *

 

###해설1
for row in range(5):
    for col in range(5):
        if col == row:
            print("*", end = "")  ##end="" 자동개행 안하게 함
        else:
            print(" ", end = "")
    print()
*    
 *   
  *  
   * 
    *

 

 

for i in range(5):
    print(" " * i + "*")
*
 *
  *
   *
    *

 

 

# 4. 산 그리기
# *
# ***
# *****
# ***
# *
#
for i in range(1, 6): # 1 2 3 4 5
    if i <= 3:
        for _ in range(1, 2 * i):  ##_의 의미: 구조상 변수를 써야해서 끼워넣었지만 실제로 쓰는 변수는 아님(관습적표현)
            print("*", end = "")
            
    else:
        for _ in range(1, 12 - (i * 2)):
            print("*", end = "")

    print()
*
***
*****
***
*

 

 

# 5. 화폐매수 구하기
a = 156780 # 원
b = [50000, 10000, 5000, 1000, 500, 100, 50, 10]
# 50000 - 3
# 10000 - 0
# 5000 - 1
# 1000 - 1
# 500 - 1
# 100 - 2
# 50 - 1
# 10 - 3

 

###해설
for i in b:
    n = a // i # 156780 // 50000 => n = 3
    a -= n * i # a = 6780
    print(f"{i} - {n}")

 

50000 - 3
10000 - 0
5000 - 1
1000 - 1
500 - 1
100 - 2
50 - 1
10 - 3

 

728x90

'01_Python' 카테고리의 다른 글

38_제어문>enumerate함수  (0) 2025.01.08
37_제어문>for반복문과 딕셔너리 조합  (0) 2025.01.08
35_제어문>for문  (7) 2025.01.07
34_제어문>while문  (0) 2025.01.07
33_제어문>조건부 표현식  (0) 2025.01.07