[알고리즘] CodeUp 기초100제 - 1013 ~1015
1013 : [기초-입출력] 정수 2개 입력받아 그대로 출력하기
문제) 정수(int) 2개를 입력받아 그대로 출력해보자.
참고
int a, b;
scanf(“%d%d”, &a, &b); //엔터/공백으로 입력 데이터가 구분되어 입력
printf(“%d %d”, a, b);
와 같은 방법으로 가능하다.
처음 시도했던 풀이는
//오답
a = int(input())
b = int(input())
print('{} {}'.format(a,b))
input( )을 두개를 주는 것이 아니라, input( ) 한 개 에서 두 수를 공백으로 구분해서 입력했을 때 두 정수를 출력해야 한다
//정확한 풀이
a,b = input().split()
a = int(a)
b = int(b)
print('{} {}'.format(a,b))
.split()
괄호안에 아무것도 넣어주지 않으면 공백(스페이스,탭,엔터)을 기준으로 문자를 나눈다.
.split(‘:’) 처럼 특정 값이 있을 경우에는, 그 특정값을 기준으로 문자를 나눈다.
나누어진 숫자는 리스트에 담겨서 반환된다.
정답풀이라고 통과되긴했지만, 이 풀이 또한 엔터 입력시 에러가 발생하므로 keyCode를 이용하는 등 더 좋은 풀이가 있을 것 같다.
1015 : [기초-입출력] 실수 입력받아 둘째 자리까지 출력하기
문제)실수(float) 1개를 입력받아 저장한 후,
저장되어 있는 값을 소수점 셋 째 자리에서 반올림하여
소수점 이하 둘 째 자리까지 출력하시오.
참고
%.3f 와 같은 형식으로 지정하면,
소수점 이하 넷 째 자리에서 반올림하여 소수점 이하 셋 째 자리까지 출력하라는 의미이다.
풀이)
a = input()
a = round(float(a),2) //실수형으로 변환 후 round()로 반올림 처리
print(a)
Leave a comment