Notice
Recent Posts
Recent Comments
Link
관리 메뉴

왕초보 코딩 개발 일지 블로그

08. 파이썬 반복문 (161~170) 본문

Python 공부/파이썬 300제 풀이 연습

08. 파이썬 반복문 (161~170)

아캔두우잇 2023. 4. 11. 11:31
반응형

161

for문과 range 구문을 사용해서 0~99까지 한 라인에 하나씩 순차적으로 출력하는 프로그램을 작성하라.

 

range(100)은 0 부터 99까지 숫자 리스트를 만듭니다. 이를 for문과 함께 사용하면 range로 생성한 모든 숫자를 하나씩 화면에 출력합니다.

for i in range(100):
    print(i)

 

162

월드컵은 4년에 한 번 개최된다. range()를 사용하여 2002~2050년까지 중 월드컵이 개최되는 연도를 출력하라.

2002
2006
2010
...
2042
2046
2050

참고) range의 세번 째 파라미터는 증감폭을 결정합니다.

>> print(list(range(0, 10, 2)))
[0, 2, 4, 6, 8]

 

for x in range(2002, 2051, 4) :
    print (x)

 

163

1부터 30까지의 숫자 중 3의 배수를 출력하라.

3 
6 
9 
12 
15 
18 
21 
24 
27 
30

 

for num in range(3, 31, 3):
    print (num)

 

164

99부터 0까지 1씩 감소하는 숫자들을, 한 라인에 하나씩 출력하라.

 

뺄셈을 사용해서 원하는 결괏값을 얻어냅니다.

for i in range(100):
    print(99 - i)

<나의 풀이>

for i in range(99, -1, -1):
    print(i, end = "\n")

 

165

for문을 사용해서 아래와 같이 출력하라.

0.0
0.1
0.2
0.3
0.4
0.5
...
0.9

 

for num in range(10) :
    print(num / 10)

 

166

구구단 3단을 출력하라.

3x1 = 3
3x2 = 6
3x3 = 9
3x4 = 12
3x5 = 15
3x6 = 18
3x7 = 21
3x8 = 24
3x9 = 27

 

for i in range(1, 10) :
    print (3, "x", i, " = ", 3 * i)

 

167

구구단 3단을 출력하라. 단 홀수 번째만 출력한다.

3x1 = 3
3x3 = 9
3x5 = 15
3x7 = 21
3x9 = 27

<나의 풀이>

for i in range(1,10,2):
    print(f"3x{i} = {3*i}")

<다른 풀이>

range(1, 10, 2)를 사용해서 홀수를 만듭니다.

num = 3
for i in range(1, 10, 2) :
    print (num, "x", i, " = ", num * i)

혹은 조건문을 사용해서 해결할 수도 있습니다.

num = 3
for i in range(1, 10) :
    if i % 2 == 1 :
        print (num, "x", i, " = ", num * i)

 

168

1~10까지의 숫자에 대해 모두 더한 값을 출력하는 프로그램을 for 문을 사용하여 작성하라.

합 : 55

 

a = 0

for i in range(1,11):
    a += i
    
print("합 :", a)

 

169

1~10까지의 숫자 중 모든 홀수의 합을 출력하는 프로그램을 for 문을 사용하여 작성하라.

합: 25

변수에 0을 저장하고, for 문을 통해 모든 값에 대해 누적합니다. 이때 range의 세 번째 파라미터를 사용해서 range가 생성하는 수를 2씩 증가시킵니다.

a = 0

for i in range(1,11,2):
    a += i
    
print("합 :", a)

 

170

1~10까지의 숫자를 모두 곱한 값을 출력하는 프로그램을 for 문을 사용하여 작성하라.

a = 1

for i in range(1,11):
    a *= i
    
print("곱 :", a)
3628800

 

반응형