본문 바로가기
파이썬/코드업

코드업 기초 100제: 2. 기초-입출력

by L_SU 2022. 5. 10.
'''
9번: 정수형(int)으로 변수를 선언하고,
변수에 정수값을 저장한 후 변수에 저장되어 있는 값을 그대로 출력해보자.
'''
a = int(input("정수를 입력해주세요: "))
print(a)​

'''
10번: 문자형(char)으로 변수를 하나 선언하고,
변수에 문자를 저장한 후 변수에 저장되어 있는 문자를 그대로 출력해보자.
'''
a = input("문자 하나를 입력해주세요:")
print(a)
'''
11번:실수형(float)로 변수를 선언하고,
그 변수에 실수값을 저장한 후 저장되어 있는 실수값을 출력해보자.
'''
a = float(input("실수를 하나 입력해주세요: "))
print(a)​

'''
12번:정수(int) 2개를 입력받아 그대로 출력해보자.
(단, 띄어쓰기를 기준으로 입력한다.)
'''
a = input("정수를 간격을 두고 두개 입력해주세요: ")
b = a.split(" ")

print(b[0], b[1])​

'''
다른방법
'''
var = list(map(int, input().split()))
print(var[0], var[1])​

'''
차이점: 내가 사용한 방식은 문자형이고
아래에서 사용한 방식은 정수형으로 아래 형식이 더 맞는
방법이다
'''

'''
13번: 2개의 문자(ASCII CODE)를 입력받아서 순서를 바꿔 출력해보자.
'''
a = input("아스키 코드 두개를 공백을 두고 입력해주세요: ")
b = a.split(" ")
print(b[1], b[0])

'''
14번: 실수(float) 1개를 입력받아 저장한 후,
저장되어 있는 값을 소수점 셋 째 자리에서 반올림하여 소수점 이하 둘 째 자리까지 출력하시오.
'''
a = float(input("실수 한개를 입력해주세요"))
print(round(a, 2))

'''
15번: int형 정수 1개를 입력받아 공백을 사이에 두고 3번 출력해보자.
'''
a = int(input("정수를 하나 입력해주세요: "))
print(a, a, a)​

'''
16번: 어떤 형식에 맞추어 시간이 입력될 때,
그대로 출력하는 연습을 해보자.
콜론(:) 기호를 기준으로 두 수가 각 변수에 저장된다.
'''
a = input("시간을 입력해주세요 (Ex.12:00): ")
b, c = a.split(":")
print(b, ":", c)
'''
다른 방법
'''
h, m = input().split(':')
print('{}:{}'.format(h, m))​

'''
차이점 내 방식은 처음엔 하나로 받아 둘로 쪼개는 반면, 다른 방법에선 처음 받을때부터 두개로 나눠서 받는다.
또, 프린트 할때 내 방식은 변수와 기호를 그대로 가져와 사용하는 반면, 다른 방법에선 format()함수를 사용해
형식을 정해놓고 그 형식에 변수를 대입하는 방식을 사용했다.
'''

'''
17번:
입력
연, 월, 일이 ".(닷)"으로 구분되어 입력된다.
출력
입력받은 연, 월, 일을 yyyy.mm.dd 형식으로 출력한다.

입력 : 2020.2.9
출력 : 2020.02.09
(단, m 혹은 d가 한 자리 수인 경우 앞에 0을 붙여 출력한다.)
'''
a = input("날짜를 입력해주세요 (Ex.2022.01.01): ")
y, m, d = a.split(".")
if len(m) == 1:
    m = '0'+m
if len(d) == 1:
    d = '0'+d
print("{}.{}.{}".format(y, m, d))​

'''
18번:
주민번호는 다음과 같이 구성된다.

XXXXXX-XXXXXXX

앞의 6자리는 생년월일(yymmdd)이고 뒤 7자리는 성별, 지역, 오류검출코드이다.
주민번호를 입력받아 형태를 바꿔 출력해보자.

입력
주민번호 앞 6자리와 뒷 7자리가 '-'로 구분되어 입력된다. (입력값은 가상의 주민번호이다.) ex)110011-0000000
출력
'-'를 제외한 주민번호 13자리를 모두 붙여 출력한다.

입력 : 000907-1121112
출력 : 0009071121112
'''
a = input("주민등록번호를 입력해주세요 (Ex.000907-1121112): ")
b, c = a.split("-")
print(b+c)
'''
19번: 1개의 문자열을 입력받아 그대로 출력해보자.
'''
a = str(input("문자열을 입력해주세요: "))
print(a)

'''
주의점: str로 input을 안 받아도 문자형으로 저장된다.
'''

'''
20번: 공백이 포함되어 있는 한 문장이 입력된다.
단, 입력되는 문장은 여러 개의 단어로 구성되고, 엔터로 끝난다.
'''
a = input("문장을 입력해주세요: ")
print(a)
'''
21번: 실수 1개를 입력받아 정수 부분과 실수 부분으로 나누어 출력한다.
'''
a = input("실수 한개를 입력해주세요: ")
b, c = a.split(".")
print(b)
print(c)
'''
다른 방법
'''
string = input().split('.')
print('''\
{}
{}
'''.format(string[0], string[1]))
'''
22번:
단어를 1개 입력받는다.
입력받은 단어(영어)의 각 문자를 한줄에 한 문자씩 분리해 출력한다.
(단, 단어의 문자(영어)를 하나씩 나누어 한 줄에 한 개씩 ' '로 묶어서 출력한다.)
'''
a = input("단어를 입력해주세요: ")
for i in range(len(a)):
    print('\''+a[i]+'\'')​

'''
다른 방법
'''
string = input()
for i in range(len(string)):
    print("'{}'".format(string[i]))​

'''
받는 것은 같지만 출력할때 나는 바로 출력하고, 다른 방법에선 형식에 값을 대입하는 방식을 택했다.
'''

'''
23번: 다섯 자리의 정수 1개를 입력받아 각 자리별로 나누어 출력한다.
'''
a = input("다섯자리 정수를 입력해주세요: ")
b = len(a)-1
for i in range(len(a)):
    print(a[i]+'0'*b)
    b -= 1
'''
24번: 입력되는 시:분:초 에서 분만 출력해보자.
'''
a = input("시간을 입력해주세요 (Ex.12:24:21): ")
h, m, s = a.split(":")
print(m)​

'''
25번:년월일을 출력하는 방법은 나라마다, 형식마다 조금씩 다르다.

년월일(yyyy.mm.dd)를 입력받아,

일월년(dd-mm-yyyy)로 출력해보자.

(단, 한 자리 일/월은 0을 붙여 두자리로 출력한다.)
'''
a = input("생년월일을 입력해주세요 (EX.yyyy.mm.dd) : ")
y, m, d = a.split(".")
if len(m) == 1:
    m = '0'+m
if len(d) == 1:
    d = '0'+d

print(d+"-"+m+"-"+y)