for num in range(1, 101):
if num < 10:
print(f"{num}: {'홀수' if num % 2 == 1 else '짝수'}")
elif (num >=10) and (num < 100):
num_10 = num // 10
num_1 = num % 10
print(f"{num}: '10의 자리': {'홀수' if num_10 % 2 == 1 else '짝수'}, '1의 자리: {'홀수' if num_1 % 2 == 1 else '짝수'}")
else:
num_10 = num % 100 // 10
num_1 = num % 100 % 10
print(f"{num}: '10의 자리': {'홀수' if num_10 % 2 == 1 else '짝수'}, '1의 자리: {'홀수' if num_1 % 2 == 1 else '짝수'}")
# 출력예시
# 1: 홀수
# 2: 짝수
# 3: 홀수
# (중략)
# 10: '10의 자리': 홀수, '1의 자리: 짝수
# 11: '10의 자리': 홀수, '1의 자리: 홀수
# 12: '10의 자리': 홀수, '1의 자리: 짝수
# 13: '10의 자리': 홀수, '1의 자리: 홀수
# (중략)
# 98: '10의 자리': 홀수, '1의 자리: 짝수
# 99: '10의 자리': 홀수, '1의 자리: 홀수
# 100: '10의 자리': 짝수, '1의 자리: 짝수
int_sum = 0
odd_sum = 0
evn_sum = 0
fct_res = 1
user_num = int(input("1 보다 큰 정수를 입력하세요: "))
assert user_num > 1 and type(user_num) == int, "올바른 입력이 아닙니다."
for i in range(1, user_num + 1):
int_sum += i
for i in range(1, user_num + 1):
if i % 2 == 1:
odd_sum += i
for i in range(1, user_num + 1):
if i % 2 == 0:
evn_sum += i
for i in range(1, user_num + 1):
fct_res *= i
print("=" * 30)
print(f"모든 수의 합: {int_sum:d}")
print(f"홀수의 합: {odd_sum:d}")
print(f"짝수의 합: {evn_sum:d}")
print(f"팩토리얼 결과값: {fct_res:,d}")
# 출력예시
# 1 보다 큰 정수를 입력하세요: 10
# ==============================
# 모든 수의 합: 55
# 홀수의 합: 25
# 짝수의 합: 30
# 팩토리얼 결과값: 3,628,800

for i in range(1, 10):
# 5줄 이전
if i <= 5:
for j in range(5-i):
print(' ', end='')
for k in range(i*2-1):
print('*', end='')
# 5줄 이후
else:
for j in range(i-5):
print(' ', end='')
for k in range((10-i)*2-1):
print('*', end='')
print()
# 출력예시
# *
# ***
# *****
# *******
# *********
# *******
# *****
# ***
# *
bus_a = 15
bus_b = 13
bus_c = 8
tot_min = 60 * 17 # 1020분 (06시-23시)
for min in range(tot_min + 1):
# 버스 A와 B만 운행하는 시간
if (min < 20) or (min > tot_min - 60):
if (min % bus_a == 0) and (min % bus_b == 0):
print(f"버스 A, 버스 B 동시 정차 ({min//60 + 6:02d}:{min%60:02d})")
# 모든 버스가 운행하는 시간
else:
# 모든 버스 도착
if (min % bus_a == 0) and (min % bus_b == 0) and (min % bus_c == 0):
print(f"모든 버스 동시 정차 ({min//60 + 6:02d}:{min%60:02d})")
# 버스 A와 B만 도착
if (min % bus_a == 0) and (min % bus_b == 0):
print(f"버스 A, 버스 B 동시 정차 ({min//60 + 6:02d}:{min%60:02d})")
# 버스 B와 C만 도착
if (min % bus_b == 0) and (min % bus_c == 0):
print(f"버스 B, 버스 C 동시 정차 ({min//60 + 6:02d}:{min%60:02d})")
# 버스 A와 C만 도착
if (min % bus_a == 0) and (min % bus_c == 0):
print(f"버스 A, 버스 C 동시 정차 ({min//60 + 6:02d}:{min%60:02d})")
# 출력예시
# 버스 A, 버스 B 동시 정차 (06:00)
# 버스 B, 버스 C 동시 정차 (07:44)
# 버스 A, 버스 C 동시 정차 (08:00)
# 버스 A, 버스 B 동시 정차 (09:15)
# 버스 B, 버스 C 동시 정차 (09:28)
# 버스 A, 버스 C 동시 정차 (10:00)
# (중략)
# 버스 B, 버스 C 동시 정차 (19:52)
# 버스 A, 버스 C 동시 정차 (20:00)
# 버스 B, 버스 C 동시 정차 (21:36)
# 버스 A, 버스 C 동시 정차 (22:00)
# 버스 A, 버스 B 동시 정차 (22:15)
gear_a = int(input("기어 A의 톱니 수 입력: "))
gear_b = int(input("기어 B의 톱니 수 입력: "))
lcm = 0
for num in range(max(gear_a, gear_b), (gear_a * gear_b) + 1):
if (num % gear_a == 0) and (num % gear_b) == 0:
lcm = num
break
print("-"*30)
print(f"맞물린 톱니의 수 (최소공배수): {lcm}")
print(f"기어 A의 회전 수: {lcm // gear_a}")
print(f"기어 B의 회전 수: {lcm // gear_b}")
# 출력예시
# 기어 A의 톱니 수 입력: 7
# 기어 B의 톱니 수 입력: 12
# ------------------------------
# 맞물린 톱니의 수 (최소공배수): 84
# 기어 A의 회전 수: 12
# 기어 B의 회전 수: 7
while True:
user_year = int(input("연도를 입력하세요: "))
if (user_year % 4 == 0 and user_year % 100 != 0) or (user_year % 400 ==0):
print(f"{user_year}년은 윤년에 해당됩니다.")
else:
print(f"{user_year}년은 윤년이 아닙니다.")
# 출력예시
# 연도를 입력하세요: 2021
# 2021년은 윤년이 아닙니다.
# 연도를 입력하세요: 2024
# 2024년은 윤년에 해당됩니다.
# 연도를 입력하세요: 2035
# 2035년은 윤년이 아닙니다.
# 연도를 입력하세요: 2040
# 2040년은 윤년에 해당됩니다.
# 연도를 입력하세요: 2300
# 2300년은 윤년이 아닙니다.
# 연도를 입력하세요: 2400
# 2400년은 윤년에 해당됩니다.
*이 글은 제로베이스 데이터 취업 스쿨의 강의 자료 일부를 발췌하여 작성되었습니다.