728x90
반응형
JUNGOL 정보올림피아드&알고리즘에서 학습용으로 문제를 가져왔습니다. 문제가 될 시 수정, 삭제하겠습니다.
593
문제: 33부터 127 까지의 숫자를 계속 입력받아 입력받은 숫자의 아스키코드에 해당하는 문자를 출력하다가 범위를 벗어나는 입력이 들어오면 종료하는 프로그램을 작성하시오.
입출력 예
ASCII code =? 66
B
ASCII code =? 122
z
ASCII code =? 0
code
while True:
a=int(input("ASCII code =? "))
if a>=33 and a<=127:
print(chr(a))
else:
break
594
문제: 문자열을 입력받은 뒤 그 문자열을 이어서 두 번 출력하는 프로그램을 작성하시오.
문자열의 길이는 100이하이다.
입력 예
ASDFG
출력 예
ASDFGASDFG
code
a=input()
print(a*2)
595
문제: 문자열을 “Hong Gil Dong”으로 초기화 한 후 3번부터 6번까지의 문자를 차례로 출력하시오.
출력 예
g Gi
code
a="Hong Gil Dong"
list(a)
print(a[3:7])
596
문제: 문자열을 입력받고 정수를 입력 받아서 문자열의 맨 뒤부터 정수만큼 출력하는 프로그램을 작성하시오.
만약 입력받은 정수가 문자열의 길이보다 크다면 맨 뒤부터 맨 처음까지 모두 출력한다.
(문자열 길이는 최대 100자 이하이다. )
입력 예
korea 3
출력 예
aer
code
a=list(map(str,input().split()))
if len(a[0])<=int(a[1]):
print(a[0][::-1])
else:
print(a[0][:len(a[0])-int(a[1])-1:-1])
597 Wrong Answer(0)
문제: 두 개의 문자열을 입력받아서 두 문자열의 길이의 합을 출력하는 프로그램을 작성하시오.
각 문자열의 길이는 20자 미만이다.
입력 예
Korean
English
출력 예
13
code
a=str(input())
b=str(input())
if len(a)<20 and len(b)<20:
print(len(a+b))
598
문제: 문자를 입력받아 알파벳 문자인 경우에는 그대로 출력하고 숫자인 경우는 아스키코드값을 출력하는 작업을 반복하다가 기타의 문자가 입력되면 종료하는 프로그램을 작성하시오.
* 입출력예에서 비스듬한글씨가 출력
입출력 예
A
#A
1
#49
@
code
while True:
a=input()
if a.isalpha()==True:
print(a)
elif a.isalpha()==False:
if a.isdigit()==True:
print(ord(a))
else:
break
else:
break
599 Accepted(20)
문제: 문자열을 입력받아 알파벳 문자만 모두 대문자로 출력하는 프로그램을 작성하시오.
문자열의 길이는 100이하이다.
입력 예
1988-Seoul-Olympic!!!
출력 예
SEOULOLYMPIC
code
a=input()
b=a.split("-")
print(b[1].upper()+b[2][:7].upper())
600
문제: 공백을 포함한 100글자 이하의 문자열을 입력받아 문장을 이루는 단어의 개수를 출력하는 프로그램을 작성하시오.
* 문장입력 할 때 gets()함수 대신 fgets() 함수를 사용하세요. C++14 적용!
입력 예
My name is Kimchulsoo
출력 예
4
code
a=list(map(str,input().split()))
print(len(a))
601
문제: 문자열을 입력 받아서 문자수만큼 오른쪽으로 한 바퀴 회전하여 출력하는 프로그램을 작성하시오. 문자열의 길이는 100이하이다.
입력 예
PROGRAM
출력 예
MPROGRA
AMPROGR
RAMPROG
GRAMPRO
OGRAMPR
ROGRAMP
PROGRAM
code
a=input()
b=list(a)
for i in range(1,len(b)+1):
tmp=b[len(b)-1]
for j in range(len(b)-1,0,-1):
b[j]=b[j-1]
b[0]=tmp
for k in range(0,len(b)):
print(b[k],end="")
print()
182
문제: 영문자 두 개를 입력 받아서 각각의 아스키코드의 합과 차를 출력하는 프로그램을 작성하시오.
입력 예
A a
출력 예
162 32
code
a=list(map(str,input().split()))
print("{} {}".format(ord(a[0])+ord(a[1]),abs(ord(a[0])-ord(a[1]))))
183
문제: 5개 이상 100개 이하의 문자로 된 단어를 입력받은 후 앞에서부터 5자를 출력하는 프로그램을 작성하시오.
입력 예
AbCdEFG
출력 예
AbCdE
code
a=input()
b=list(a)
print(*b[:5],sep="")
184
문제: 100개 이하의 문자열을 입력받아서 영문자와 숫자만 출력하되 영문자는 모두 소문자로 출력하는 프로그램을 작성하시오.
입력 예
Hancom1234@cqclass.com
출력 예
hancom1234cqclasscom
code
a=input()
b=list(a)
c=[]
for i in b:
if i.isalpha()==True or i.isdigit()==True:
c.append(i)
for j in c:
print(j.lower(),end="")
185
문제: 단어와 문자 한 개를 입력받아서 단어에서 입력받은 문자와 같은 문자를 찾아서 그 위치를 출력하는 프로그램을 작성하시오.
단어에서 첫 번째 문자의 위치는 0으로 하고 찾는 문자가 여러 개일 때는 처음 나오는 위치를 출력한다.
만약 찾는 문자가 없을 때는 "No"라고 출력한다. 대소문자는 구별되며 단어는 100자 이하이다.
입력 예
Jungol.co.kr o
출력 예
4
code
a=list(map(str,input().split()))
if a[1] in a[0]:
print(a[0].index(a[1]))
else:
print("No")
186
문제: 두 개의 단어를 입력받아서 길이가 긴 단어의 문자 개수를 출력하는 프로그램을 작성하시오.
단어의 길이는 100자 이하다.
입력 예
excel powerpoint
출력 예
10
code
a=list(map(str,input().split()))
if len(a[0])>len(a[1]):
print(len(a[0]))
elif len(a[1])>len(a[0]):
print(len(a[1]))
else:
print(len(a[0]))
187 Wrong Answer(0)
문제: 문자열(100자 이하)을 입력받은 후 정수를 입력받아 해당위치의 문자를 제거하고 출력하는 작업을 반복하다가 문자 1개가 남으면 종료하는 프로그램을 작성하시오.
첫 번째 문자의 위치는 1이며 만약 입력받은 번호가 문자열의 길이 이상이면 마지막 문자를 제거한다.
* 입출력예에서 진한글씨가 출력
입출력 예
word
3
wod
1
od
10
o
code
a=input()
while True:
b=int(input())
c=a.replace(a[b-1],"")
if len(c)<=1:
break
else:
print(c)
188
공백을 포함한 문자열을 입력받아 다음과 같이 분리하여 번호와 함께 출력하는 프로그램을 작성하시오.
문자열의 길이는 100자 이하이다.
* 문장 입력할 때 gets()함수 대신 fgets() 함수를 사용하세요. C++14 적용!
입력 예
My name is Kimchulsoo
출력 예
1. My
2. name
3. is
4. Kimchulsoo
code
a=list(map(str,input().split()))
for i in range(1,len(a)+1):
print("%d. %s"%(i,a[i-1]))
반응형
'Programming > JUNGOL : 정보올림피아드&알고리즘' 카테고리의 다른 글
[JUNGOL 도형만들기1-1291]: 구구단 (0) | 2021.08.17 |
---|---|
[JUNGOL 문자열2]:602~612 (0) | 2021.08.16 |
[JUNGOL 함수3]:587~232 (0) | 2021.08.14 |
[JUNGOL 함수2]:579~181 (0) | 2021.08.13 |
[JUNGOL 함수1]:571~174 (0) | 2021.08.12 |