728x90
반응형

6031 : [기초-값변환] 정수 입력받아 유니코드 문자로 변환하기(설명)(py)

시간 제한: 1 Sec  메모리 제한: 128 MB

 

 

문제 설명

10진 정수 1개를 입력받아
유니코드 문자로 출력해보자.

 

 

입력

10진 정수 1개(32 ~ 126 범위)가 입력된다.

 

 

출력

유니코드 문자로 출력한다.

 

 

입력 예시

65

 

 

출력 예시

A

 

 

내 소스

a=int(input())
print(chr(a))  
#c에 저장되어 있는 정수 값을 유니코드 문자(chracter)로 바꿔 출력

 

 

모범 소스

c=input()
c=int(c)
print(chr(c))

 

 

참고

입력은 기본적으로 모두 문자열로 입력되는 것이라고 할 수 있다. 
따라서, 입력 값이 문자/문자열/정수/실수인지에 따라서 먼저 정확하게 변환시킨 다음에 사용하거나 계산하는 것이 좋다.

예를 들어 123 이 입력 되었다고 한다면, 이건 정수일까? 문자열일까?
조금 생각해보면, 입력된 것만 보고는 그 값이 어떤 데이터인지 알 수 없다는 것을 쉽게 이해할 수 있다.
따라서, 그 입력 값을 어떻게 해석하고 변환할 지에 대해서 명확하게 작성해 주어야 하는 것이다. 

chr( )는 정수값->문자, ord( )는 문자->정수값 형태로 바꿔주는 서로 반대 방향으로 바꾸어 주는 기능을 한다.
728x90
반응형
728x90
반응형

6030 : [기초-값변환] 영문자 1개 입력받아 10진수로 변환하기(설명)(py)

시간 제한: 1 Sec  메모리 제한: 128 MB

 

 

문제 설명

영문자 1개를 입력받아 10진수 유니코드(Unicode) 값으로 출력해보자.

 

 

입력

유니코드 영문자 1개가 입력된다.

 

 

출력

유니코드 값을 10진수로 출력한다.

 

 

입력 예시

A

 

출력 예시

65

 

 

내 소스

a=ord(input())
print(a)

 

 

모범 소스

n=input()
n=ord(n)
print(n)

 

 

참고

n = ord(input())  #입력받은 문자를 10진수 유니코드 값으로 변환한 후, n에 저장한다.

ord( ) 는 어떤 문자의 순서 위치(ordinal position) 값을 의미한다.  
실제로 각각의 문자들에는 연속된 정수 값이 순서에 따라 부여 되어 있다. A:65, B:66, C:67 .... 
ord(c) : 문자 c 를 10진수로 변환한 값 

컴퓨터로 저장되고 처리되는 모든 데이터들은 2진수 형태로 정수화 되어야 하는데,
컴퓨터에 문자를 저장하는 방법으로 아스키코드(ASCII Code)나 유니코드(Unicode)가 자주 사용된다.

예를 들어, 영문 대문자 'A'는 10진수 값 65 로 표현하고, 
2진수(binary digit) 값 1000001 로 바꾸어 컴퓨터 내부에 저장한다. 

유니코드(unicode)는 세계 여러 나라의 문자를 공통된 코드 값으로 저장할 때 사용하는 표준 코드이다.
728x90
반응형
728x90
반응형

6029 : [기초-값변환] 16진 정수 입력받아 8진수로 출력하기(설명)(py) 

시간 제한: 1 Sec  메모리 제한: 128 MB

 

 

문제 설명

16진수를 입력받아 8진수(octal)로 출력해보자.

 

 

입력

16진 정수 1개가 입력된다.

 

 

출력

8진수 형태로 출력한다.

 

 

입력 예시

f

 

 

출력 예시

17

 

 

내 소스

a=int(input(),16)
print('%o'%a)

 

 

모범 소스

a=input()
a=int(a,16)
print("%o"%a)

 

 

참고

8진법은 한 자리에 8개(0 1 2 3 4 5 6 7)의 문자를 사용한다.
8진수 10은 10진수의 8, 11은 9, 12는 10 ... 와 같다.
728x90
반응형
728x90
반응형

6028 : [기초-출력변환] 10진 정수 입력받아 16진수로 출력하기2(설명)(py)

시간 제한: 1 Sec  메모리 제한: 128 MB

 

 

문제 설명

10진수를 입력받아 16진수(hexadecimal)로 출력해보자.

 

 

입력

10진수 1개가 입력된다.

 

 

출력

16진수(대문자) 형태로 출력한다.

 

 

입력 예시

255

 

 

출력 예시

FF

 

 

내 소스

a=int(input())
print('%X'%a)

 

 

모범 소스

a=input()
a=int(a)
print("%X"%a)

 

 

참고

10진수 형태로 입력받고
%X로 출력하면 16진수(hexadecimal)대문자로 출력된다.

16진법은 영문 소문자를 사용하는 경우에 한 자리에 16개(0 1 2 3 4 5 6 7 8 9 A B C D E F)의 문자를 사용한다.
16진수 A는 10진수의 10, B는 11, C는 12 ... 와 같다.
728x90
반응형
728x90
반응형

6027 : [기초-출력변환] 10진 정수 입력받아 16진수로 출력하기1(설명)(py)

시간 제한: 1 Sec  메모리 제한: 128 MB

 

 

문제 설명

10진수를 입력받아 16진수(hexadecimal)로 출력해보자.

 

 

입력

10진수 1개가 입력된다.

 

 

출력

16진수(소문자) 형태로 출력한다.

 

 

입력 예시

255

 

 

출력 예시

ff

 

 

내 소스

a=input()
a=int(a)
print('%x'%a)

 

 

모범 소스

a=input()
a=int(a)
print("%x"%a)

 

 

참고

10진수 형태로 입력받고
%x로 출력하면 16진수(hexadecimal) 소문자로 출력된다.
(%o로 출력하면 8진수(octal) 문자열로 출력된다.)

10진법은 한 자리에 10개(0 1 2 3 4 5 6 7 8 9)의 문자를 사용하고,
16진법은 영문 소문자를 사용하는 경우에 한 자리에 16개(0 1 2 3 4 5 6 7 8 9 a b c d e f)의 문자를 사용한다.
16진수 a는 10진수의 10, b는 11, c는 12 ... 와 같다.
728x90
반응형
728x90
반응형

6026 : [기초-값변환] 실수 2개 입력받아 합 계산하기(설명)(py)

시간 제한: 1 Sec  메모리 제한: 128 MB

 

 

문제 설명

실수 2개를 입력받아
합을 출력하는 프로그램을 작성해보자.

 

 

입력

2개의 실수가 줄을 바꿔 입력된다.

 

 

출력

두 실수의 합을 출력한다.

 

 

입력 예시

0.1
0.9

 

 

출력 예시

1.0

 

 

내 소스

a=input()
b=input()
a=float(a)
b=float(b)
c=a+b
print(c)

 

 

모범 소스

a=input()
b=input()
a=float(a)
b=float(b)
c=a+b
print(c)

 

 

참고

입력되는 값은 기본적으로 문자열로 인식된다.

숫자로 구성된 문자열이나 정수를 실수(real number) 값으로 바꾸기 위해서는 
float
( ) 를 사용할 수 있다.
소숫점(.)은 그 위치가 정해져있지 않고 이리저리 둥둥 떠다니므로, 
float
ing point라고 부른다.
728x90
반응형
728x90
반응형

6025 : [기초-값변환] 정수 2개 입력받아 합 계산하기(설명)(py)

시간 제한: 1 Sec  메모리 제한: 128 MB

 

 

문제 설명

정수 2개를 입력받아
합을 출력하는 프로그램을 작성해보자.

 

 

입력

주민번호 앞 6자리와 뒷 7자리가 '-'로 구분되어 입력된다.
(입력값은 가상의 주민번호이다.)
ex)110011-0000000

 

 

출력

두 정수의 합을 출력한다.

 

 

입력 예시

123 -123

 

 

출력 예시

0

 

 

내 소스

a,b=input().split()
a=int(a)
b=int(b)
c=a+b
print(c)

 

 

모범 소스

a, b = input().split()
a=int(a)
b=int(b)
c=a+b
print(c)

 

 

참고

입력되는 값은 기본적으로 문자열로 인식된다.

문자열 + 문자열은 두 문자열을 합친 문자열을 만든다.
숫자로 구성된 문자열이나 실수를 정수(
int
eger) 값으로 바꾸기 위해서는 
int
( ) 를 사용할 수 있다.
수 + 수의 결과는 합(addition)이 계산된다.
728x90
반응형
728x90
반응형

6024 : [기초-입출력] 단어 2개 입력받아 이어 붙이기(설명)(py)

시간 제한: 1 Sec  메모리 제한: 128 MB

 

 

문제 설명

알파벳 문자와 숫자로 이루어진 단어 2개를 입력받아
순서대로 붙여 출력하는 프로그램을 작성해보자.

 

 

입력

알파벳과 숫자로 이루어진 2개의 단어가 공백으로 구분되어 입력된다.

 

 

출력

입력된 2개의 단어를 순서대로 붙여 출력한다.

 

 

입력 예시

hello world

 

 

출력 예시

helloworld

 

 

내 소스

a,b=input().split()
print(a+b)

 

 

모범 소스

a, b = input().split()
print(a+b)

 

 

참고

단어는 문자(character)들로 만든다.
문자들로 구성된 문장을 문자열(string)이라고 부른다.
문자열에는 공백문자(' ')가 포함될 수 있는데, 
문자 1개는 길이가 1인 문자열이라고 할 수 있고, 공백문자(' ')가 없는 문자열은 단어(word)라고 할 수 있다.

일반적인 문장들은 공백으로 구분된 단어들로 만들어지기 때문에,
공백문자로 구분된 문장에서 단어를 잘라내기 위해서는 공백문자(' ')를 기준으로 자르면 된다.
키보드로 입력되는 것들은 기본적으로 문자열로 인식되고, 문자열끼리 더하기(+)를 실행하면,
두 문자열을 합쳐 연결한(concatenate) 결과를 만들어 낸다.
728x90
반응형
728x90
반응형

6020 : [기초-입출력] 주민번호 입력받아 형태 바꿔 출력하기(py)

시간 제한: 1 Sec  메모리 제한: 128 MB

 

 

문제 설명

시:분:초 형식으로 시간이 입력될 때 분만 출력해보자.

어떻게 분만 출력해야 할지 주의 깊게 생각해야한다.

 

 

입력

시 분 초가
시:분:초 형식으로 입력된다.

 

 

출력

분만 출력한다.

 

 

입력 예시

17:23:57

 

 

출력 예시

23

 

 

내 소스

h,m,s=input().split(':')
print(m)

 

 

모범 소스

h, m, s = input().split(':')
print(m)

 

 

728x90
반응형
728x90
반응형

6022 : [기초-입출력] 연월일 입력받아 나누어 출력하기(설명)(py)

시간 제한: 1 Sec  메모리 제한: 128 MB

 

 

문제 설명

6자리의 연월일(YYMMDD)을 입력받아 나누어 출력해보자.

 

 

입력

6자리 숫자로 이루어진 연월일(YYMMDD)이 입력된다.

 

 

출력

년도(YY) 월(MM) 일(DD)을 공백으로 구분해 한 줄로 출력한다.

 

 

입력 예시

200304

 

 

출력 예시

20 03 04

 

 

내 소스

a=input()
print(a[0:2])
print(a[2:4])
print(a[4:6])

 

 

모범 소스

s = input()
print(s[0:2], s[2:4], s[4:6], sep=' ')

 

 

참고

s = input()
print(s[0:2])

를 실행하면 0번째 문자부터 1번째 문자까지 잘라 출력한다.
s[a:b] 라고 하면, s라는 단어에서 a번째 문자부터 b-1번째 문자까지 잘라낸 부분을 의미한다.
728x90
반응형

+ Recent posts