28.8 연습문제: 공배수 구하기

다음 소스 코드를 완성하여 1부터 100까지 숫자 중 3과 5의 공배수를 세트 형태로 출력되게 만드세요.

practice_set.py

a = ①____________________                                                 
b = ②____________________                                                 
 
print(      )

실행 결과

{75, 45, 15, 90, 60, 30}

정답

 {i for i in range(1, 101) if i % 3 == 0}
 {i for i in range(1, 101) if i % 5 == 0}
 a & b 또는 set.intersection(a, b)

해설

세트 두 개로 3과 5의 공배수를 구하려면 3의 배수가 들어있는 세트와 5의 배수가 들어있는 세트의 교집합을 구하면 됩니다. 먼저 {i for i in range(1, 101) if i % 3 == 0}과 같이 세트 표현식을 사용하여 1부터 100까지 숫자 중 3의 배수 세트를 만듭니다. 그리고 {i for i in range(1, 101) if i % 5 == 0}과 같이 1부터 100까지 숫자 중 5의 배수 세트를 만든 뒤 a & b 또는 set.intersection(a, b)로 교집합을 구하면 됩니다.