스터디/파이썬 스터디 과제

[4팀/김윤] 4차시 파이썬 과제 - 반복문

알 수 없는 사용자 2023. 4. 2. 02:59

1. 다음 코드를 실행하여 아래와 같은 실행 결과를 출력하려 한다. 코드를 완성하시오.

실행 결과

test = '5'

for n in ___________________:
	print("test")

->

test ="5"
for n in range(5):
    print("test")

1번_실행 결과

 

 

2. 다음과 같이 자연수 n이 주어졌을 때, 1부터 n까지 하나씩 출력하는 프로그램을 작성하시오.

<조건>

  • range 함수를 사용할 것

->

n = int(input("자연수를 입력하시오 : "))
for i in range(1, n+1, 1):
    print(i)
    n = n +1

2번_실행 결과

 

 

 

3. 다음과 같이 자연수 n이 주어졌을 때, n부터 1까지 한 줄에 하나씩 출력하는 프로그램을 작성하시오.

<조건>

  • range 함수를 사용할 것

->

n = int(input("자연수를 입력하시오 : "))
for i in range(n, 0, -1):
    print(i)
    n = n +1

3번_실행 결과

 

 

4. 반복문을 사용하여 1부터 10까지의 합을 구하는 코드를 작성하시오.

<조건> for문을 사용한 코드와 while문을 사용한 코드를 각각 작성하시오.

-> for 문

print("1부터 10까지 정수의 합 구하기")
sum = 0
for num in range(1, 11, 1):
   sum = sum + num
print("1부터 10까지의 정수의 합은", sum)

4번_for문 실행 결과

-> while문

print("1부터 10까지 정수의 합 구하기")
sum = 0
num = 1
while (num <= 10):
    sum += num
    num += 1
print("1부터 10까지의 정수의 합은", sum)

4번_while문 실행 결과

 

 

5. 다음과 같이 열의 개수를 입력 받아, 첫째 줄에는 별 1개, 둘째 줄에는 별 2개, n번째 줄에는 별 n개를 찍는 프로그램을 작성하시오.

<조건> 단, 오른쪽을 기준으로 정렬한 별을 출력하시오.

->

n = int(input("별의 개수 입력 : "))
for i in range (1, n+1):
    star = "*"*(i)
    print(star.rjust(n))

5번_실행 결과

 

 

6. 다음과 같이 열의 개수를 입력 받아, 별을 출력하시오.

<조건> 단, 가운데를 기준으로 정렬한 별을 출력하시오.

->

n = int(input("별의 개수 입력 : "))
for i in range (1, n+1):
    star = "*"*(2*i-1)
    print(star.center(2*n-1))

6번_실행 결과

 

 

7. 다음과 같이 정수 4개로 이루어진 수열 A가 주어진다. 정수 x를 입력 받아, A에서 x보다 작은 수를 모두 출력하는 프로그램을 작성하시오.

<조건> 단, x보다 작은 수들을 공백으로 구분하여 한 문장으로 출력하시오.

->

A =[34, 5, 2, -10]
x = int(input("정수 x 입력 : "))
for i in A:
    if i < x:
        print(i, end=" ")

7번_실행 결과

 

 

8. 다음 코드를 while문으로 다시 작성하시오.

for i in range(10):
	if i == 5:
    	break
    print(i)
print("End of Program")

-> while문

i = 0
while (i < 5):
    print(i)
    i +=1
print("End of Program")

8번_실행 결과

 

 

9. 다음 코드는 문자열을 입력받아 역순으로 출력하는 프로그램이다. 코드를 완성하시오.

sentence = input("문장 입력 : ")
reverse_sentence = ''
for char in sentence
000 = 000 + 000
print(reverse_sentence)

->

sentence = input("문장 입력 : ")
reverse_sentence = ''
for char in sentence:
    reverse_sentence = char + reverse_sentence
print(reverse_sentence)

9번_실행 결과

 

 

10. 다음 코드는 숫자 찾기 게임 프로그램이다. 이 프로그램의 규칙은 다음과 같다.

  • 먼저 컴퓨터가 1에서 100까지 중 임의의 숫자를 생성한다. 
  • 다음으로 사용자가 추측하는 숫자를 입력하면 컴퓨터가 생성한 임의의 숫자보다 큰지, 작은지를 계속 비교해준다.
  • 정답을 맞힐 때까지 반복하다가 맞혔을 때 '정답입니다. 입력한 숫자는 n입니다.'를 출력한다.

코드를 완성하시오.

import random
guess_number = random.radint(1, 100)

print("숫자를 맞혀 보세요(1 ~ 100)")
____________________________
while ___________________:
	if___________________:
    	print("숫자가 너무 큽니다.")
    else:
    	print("숫자가 너무 작습니다.")
    _____________________________
else:
	_____________________________________

->

import random
guess_number = random.randint(1, 100)

print("숫자를 맞혀 보세요(1 ~ 100)")
num = int(input("숫자를 입력하세요 : "))
while (num != guess_number):
    if (num > guess_number):
        print("숫자가 너무 큽니다.")
        num = int(input("숫자를 입력하세요 : "))
    else:
        print("숫자가 너무 작습니다.")
        num = int(input("숫자를 입력하세요 : "))
else:
    print("정답입니다.")

10번_실행 결과