WjExplor Story

이상한 수학 문제 I, II , 약수 찾기 본문

Python/Python : Code Study

이상한 수학 문제 I, II , 약수 찾기

더블유제이플로어 2025. 7. 29. 16:33

실습 설명

while문과 if문을 활용하여, 100 이하의 자연수 중 8의 배수이지만 12의 배수는 아닌 것을 모두 출력하세요.

예를 들어서 16은 8의 배수이지만 12의 배수가 아니니까 조건에 부합합니다. 하지만 48은 8의 배수이면서 12의 배수이기도 해서 조건에 부합하지 않습니다.

출처 : 코드잇

i=1
while i<=100:
    if i%8==0 and i%12 !=0:
        print(i)
    i+=1

visual studio code

코드 저장하지 않으면 기존 코드가 실행된다. 항상 저장하고 파일 실행 하자. 


실습 설명

10보다 작은 2 또는 3의 배수는 2, 3, 4, 6, 8, 9이며, 이들의 합은 32입니다.

while문과 if문을 활용하여, 1,000보다 작은 자연수 중 2 또는 3의 배수의 합을 출력하는 코드를 작성해 보세요.

출처 : 코드잇

i=0
sum = 0
while i<=1000:
    if i%2==0 or i%3==0:
      sum += i
    i += 1  
print(sum)

하지만 이렇게 하면 코드잇에서 오류로 나온다.

<= 이게 문제였다.


i=0
sum = 0
while i<=1000:
    if i%2==0 or i%3==0:
      sum += i
    i += 1  
print(sum)

혹은

i = 1
total = 0

while i < 1000:
    if i % 2 == 0 or i % 3 == 0:
        total += i
    i += 1

print(total)

실습 설명

약수는 정수 n을 어떤 수로 나누었을 때 나누어떨어지게 하는 정수를 의미합니다. 만약 정수 i가 정수 n의 약수라면, n을 i로 나누었을 때 나머지가 0이 됩니다.

정수 120의 약수를 모두 출력하고, 총 몇개의 약수가 있는지 출력하는 코드를 작성해 보세요.

# 여기에 코드를 작성하세요
n = 120 # 정수
i = 1 # 약수
cnt =0
while i<=n:
    if n%i == 0:
        print(i)
        cnt +=1
    i+=1

print(str(n)+"의 약수는 총 "+str(cnt) +"개입니다.")

혹은

N = 120
i = 1
count = 0

while i <= N:
    if N % i == 0:
        print(i)
        count += 1
    i += 1

print("{}의 약수는 총 {}개입니다.".format(N, count))

'Python > Python : Code Study' 카테고리의 다른 글

택이의 우승 상금  (5) 2025.07.29
구구단 만들기 (while문)  (0) 2025.07.29
학점 계산기  (0) 2025.07.29
while 반복문 실습 I , II  (0) 2025.07.29
거스름돈 계산기  (3) 2025.07.29