본문 바로가기
프로그램/Python 1000제

Python 78제] 1~100사이 중 3의 배수를 출력하고 합을 구하시오.

by 건티 2022. 5. 26.
728x90

출처] 반크_세계유산 창덕궁

 

문제]

1~100 사이 중 3의 배수를 출력하고 합을 구하는 프로그램을 lambda(), reduce(), range()를 활용하여 작성하시오.(단, 3의 배수를 출력할 때 한 줄에 10개씩 출력하시오.)

 

 

참고풀이]

#reduce()
from functools import reduce

def doSum(a,b):
    return a+b

 

#range()로 1~100까지의 값을 산출하고 lambda()로 3의 배수 값들을 리스트에 저장한다.
L=list(filter(lambda x:x%3==0,range(1,101)))

 

#추출된 3의 배수 값들의 합을 구한다.
Sum=reduce(doSum,L)

#결과출력
cnt=0
for d in L:
    cnt+=1
    if cnt%10==0:
        print(f'{d:3}')
    else:
        print("%3d"%d,end='')
print(f'\n1~100사이 중 3의 배수의 합 : {Sum}')

 

참고풀이 결과]

 

 

대한민국의 아름다운 영토, 독도

 

반응형

댓글