본문 바로가기

python

while문 예제

 

문제1) 1 ~ 100 사이의 숫자 중 3의 배수이나 2의 배수가 아닌 수를 출력하고, 합을 출력

 

필자 작성 코드

i = 1
while i <= 100:
    if i % 3 == 0:
        if i % 2 != 0:
            print(i)
    i += 1

 

선생님 작성 코드

i = hap = 0

while i <= 100:
    i += 1
    if i % 3 == 0 and i % 2 != 0:
        print(i, end = ' ')
        hap += i

print('합은 {}'.format(hap))

 

 

문제2) 2 ~ 5 까지의 구구단 출력

 

필자 작성 코드

x = [2,3,4,5]; i = 0
while i < 4 :
    y = 1 
    while(y < 10):
        print('구구단 ', x[i], '단')
        print(x[i],'x', y,'=', x[i]*y)
        y += 1
    i += 1

 

선생님 작성 코드

i = 2
while i < 6:
    j = 1
    while j < 10:
        print(i, '*' , j, '=', i * j, end = ' ')
        j += 1
    print()
    i += 1

 

 

문제3) -1, 3, -5, 7, -9, 11 ~ 99 까지의 모두에 대한 합을 출력

 

필자 작성 코드

print('문3) -1, 3, -5, 7, -9, 11 ~ 99 까지의 모두에 대한 합을 출력')
num = 11;
result = -1 + 3 + -5 + 7 + -9
while num <= 99:
    result = result + num
    num += 1
print(result)

 

선생님 작성 코드

i = 1
cnt = 1
tot = 0

while i < 100:
    if cnt % 2 == 0:  # 짝수 위치 숫자 처리
        tot += i
        print(i, end = ' ')
    else:   # 홀수 위치 숫자 처리
        k = i * -1  # 부호 변경
        tot += k
        print(k, end = ' ')

    cnt += 1
    i += 2   # 증가치 2

print('\ntot : ', tot)

 

 

문제4) 1 ~ 1000 사이의 소수(1보다 크며 1과 자신의 수 이외에는 나눌 수 없는 수)와 그 갯수를 출력

 

필자 작성 코드

num = 1
while num <= 1000:
    count = 0
    i = 1  
    while i <= num:
        if num % i == 0: 
            count += 1
        i += 1  
    if count == 2: 
        print(num, '은 소수입니다.')
    num += 1

 

선생님 작성 코드

aa = 2
count = 0

while aa <= 1000:
    imsi = False
    bb = 2;

    while bb <= aa - 1:
        if aa % bb == 0:
            imsi = True
        bb += 1

    if imsi == False:
        print(aa, end = ' ')
        count += 1
    aa += 1

print('\ncount : ', count)

'python' 카테고리의 다른 글

반복문 for  (0) 2022.10.05
반복문의 continue, break  (0) 2022.10.05
while 반복문, time.sleep()  (0) 2022.10.04
조건 판단문 if  (0) 2022.10.04
python 정규표현식  (1) 2022.10.04