티스토리 뷰

 

 

 

 

6071.  0 입력될 때까지 무한 출력하시오.

 

 

입력

7

4

2

3

0

1

5

6

9

10

8

출력

7

4

2

3

(입력된 정수를 줄을 바꿔 하나씩 출력하는데, 0이 입력되면 종료한다.)
(0은 출력하지 않는다.)

 

 

while True:
    a=int(input())
    if a==0:
        break;
    else:
        print(a)

// while True: 문으로 무한루프를 생성한 뒤 if 조건문으로 a가 0일 때만 break 해주도록 만들어준다.

 

 

 

 

 

 

6072.  정수 1개 입력받아 카운트다운 출력하시오.

 

 

입력

5

출력

5

4

3

2

1

(1만큼씩 줄이면서 한 줄에 1개씩 카운트다운 수를 출력한다.)

 

 

a=int(input())

while True:
    print(a)
    a=a-1
    if (a==0):
        break;
a=int(input())

while a>0:
    print(a)
    a=a-1

 

모범답안

a=int(input())

while a!=0:
    print(a)
    a=a-1

 

 

 

 

 

 

6073.  정수 1개 입력받아 카운트다운 출력하시오.

 

 

입력

5

출력

4

3

2

1

0

(1만큼씩 줄이면서 카운트다운 수가 0이 될 때까지 한 줄에 1개씩 출력한다.)

 

 

 

a=int(input())

while a>0:
    a=a-1
    print(a)

 

a=int(input())

while True:
    a=a-1
    print(a)
    
    if a==0:
        break;

 

 

모범답안

a=int(input())

while a!=0:
    a=a-1
    print(a)

 

 

73번 문제에서는 무한루프에 빠지는 실수를 했다.

줄 맞추기 잘해야하고 다시 한번 신중하게 코드 살펴봐야한다.

 

 

 

 

 

 

 

6074.  문자 1개 입력받아 알파벳 출력하시오.

 

 

입력

f

출력

a b c d e f

(a부터 입력한 문자까지 순서대로 공백을 두고 한 줄로 출력한다.)

 

 

c=ord(input())
i=ord('a')

while i<=c:
    print(chr(i), end=' ')
    i+=1

end='' 하면 출력 오류가 뜬다. end=' ' 작은 따옴표 안에 공백을 주어야한다.

ord 키워드 사용하여 문자열에서 아스키코드로 변환해준다.

그리고 다시 chr를 사용하여 아스키코드에서 문자열로 변환해준다.

 

 

다른 사람코드

a = input()
start = ord('a')

while True:
    print(chr(start), end = ' ')
    
    if (chr(start) == a):
        break
    
    start = start + 1

 

모범답안

c=input()
i = ord('a')
c = ord(c)

while i<=c:
    print(chr(i), end=' ')
    i+=1

 

 

 

 

 

6075.  정수 1개 입력받아 그 수까지 출력하시오.

 

 

입력

4

출력

0

1

2

3

4

(0부터 그 수까지 줄을 바꿔 한 개씩 출력한다.)

 

 

 

a=int(input())
b=0

while b<=a:
    print(b)
    b+=1

 

다른 사람코드

a =  int(input())

for i in range(0, a+1):
    print(i)

rage 함수를 사용하여 범위를 설정해주었다.

 

rage(stop)

rage(start, stop)

rage(start, stop, step)

 

 

ex)

rage(5) → 01234

rage(1,5) → 1234

rage(0,5,2) → 024

 

 

 

 

 

 

 

6076.  정수 1개 입력받아 그 수까지 출력하시오.

 

 

입력

4

출력

0

1

2

3

4

(0부터 그 수까지 줄을 바꿔 한 개씩 출력한다.)

 

 

n=int(input())
for i in range(n+1):
    print(i)

list range(5) → [0,1,2,3,4]

for i in range(5) → 0

                              1

                              2

                              3

                              4

 

range(num) num의 숫자보다 -1 만큼 출력된다.

 

 

 

 

 

6077.  짝수 합을 구하시오.

 

 

입력

5

정수 1개가 입력된다.
(0 ~ 100)

출력

6

(1부터 그 수까지 짝수만 합해 출력한다.)

 

 

a=int(input())
sum=0
for i in range(1,a+1):
    if i%2==0:
        sum+=i
        
print(sum)

 

 

while 문으로 작성한 코드

 

i, result = 2, 0
a = int(input())
while (i <= a):
  result += i
  i += 2
print (result)

 

 

 

 

 

6078.  원하는 문자가 입력될 때까지 반복 출력시오.

 

 

입력

x

b

k

d

l

q

g

a

c

출력

x

b

k

d

l

q

(영문 소문자 'q'가 입력될 때까지 입력한 문자를 계속 출력한다.)

 

 

 

while True:
    a=input()
    print(a)
    if a=='q':
        break

input()해주는 위치 파악 잘하기

while 문 위에 작성해주면 출력한계 초과 오류가 난다.

 

 

 

 

 

6079.  언제까지 더해야 할까?

 

 

입력

55 (정수 1개가 입력된다.)

출력

10

(1, 2, 3, 4, 5 ... 를 순서대로 계속 더해 합을 만들어가다가,
입력된 정수와 같거나 커졌을 때, 마지막에 더한 정수를 출력한다.)

 

 

a=int(input())
s=0
n=0

while s<a:
    n=n+1
    s+=n
    
print(n)

 

s+=n 과 n=n+1 의 순서를 잘못 작성해 오답을 제출했었다.

왜 바뀌면 오답인지 생각을 해보자

 

: 두개의 위치가 바뀌면  n=n+1이 나중에 계산이 되어 1값이 더해진 값으로 출력된다.

 

 

 

 

* for 문을 사용할 수 있는 방법은 없을지 고민해보기

 

 

 

 

 

 

6080.  주사위 2개 던지기.

 

 

입력

2 3

(서로 다른 주사위 2개의 면의 개수 n, m이 공백을 두고 입력된다.단, n, m은 10이하의 자연수)

출력

1 1

1 2

1 3

2 1

2 2

2 3

(나올 수 있는 주사위의 숫자를 한 세트씩 줄을 바꿔 모두 출력한다.
첫 번째 수는 n, 두 번째 수는 m으로 고정해 1부터 오름차순 순서로 출력하도록 한다.)

 

 

a,b=map(int,input().split())
for i in range (1,a+1):
    for j in range (1,b+1):
        print(i,j)

 

'코딩 > python' 카테고리의 다른 글

반복문 - for  (0) 2023.08.27
While문  (0) 2023.08.23
python 비트 연산자(Bitwise Operators)  (0) 2023.08.23
코드업 기초 100제 파이썬 6061~6070  (0) 2023.08.18
코드업 기초 100제 파이썬 6051~6060  (0) 2023.08.15
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday