TOC
참고 강의
SWEA 파이썬 프로그래밍 기초(1) 파이썬의 기본 구조와 기초 문법 #7 ~ #11
연습문제 #1
문제
인치(inch)를 센티미터(cm)으로 변환하는 프로그램을 작성하십시오. 이 때 1 인치는 2.54 센티미터입니다.
입력
3
출력
3.00 inch => 7.62 cm
Sol
a = int(input())
print("{0:.2f} inch => {1:.2f} cm".format(a, a*2.54))
소수점 2자리까지 표현되므로 format() 함수와 .2f를 사용하여 부동소수점 숫자형의 소수점 2자리 아래까지 표현해주었다.
제출결과

연습문제 #2
문제
킬로그램(kg)를 파운드(lb)으로 변환하는 프로그램을 작성하십시오. 이 때 1 킬로그램은 2.2046 파운드입니다.
입력
90
출력
90.00 kg => 198.41 lb
Sol
a = int(input())
print("{0:.2f} kg => {1:.2f} lb".format(a, a*2.2046))
풀이과정은 연습문제 #1 과 같다.
제출결과

놀랍게도 출력(90.00 kg => 198.41 lb)의 => 우측에 공백이 2개가 있어서 2번의 fail을 한 뒤, 이상함을 느껴 출력을 살펴보면서 해결했다. 앞으로는 이런 부분들을 잘 살펴야 할 듯 하다.
연습문제 #3
문제
섭씨(℃)를 화씨(℉)로 변환하는 프로그램을 작성하십시오. 이 때 물의 빙점은 화씨 32도이고 비등점은 화씨 212도(표준 기압에서)입니다. 물의 비등점과 빙점 사이에 정확하게 180도 차이가 납니다. 그러므로 화씨 눈금에서의 간격은 물의 빙점과 비등점 사이의 간격의 1/180입니다.
입력
28
출력
28.00 ℃ => 82.40 ℉
Sol
a = int(input())
b = a * (180/100) + 32
print("{0:.2f} ℃ => {1:.2f} ℉".format(a, b))
섭씨와 화씨 변환의 과정이 복잡한 관계로 섭씨 온도(input)를 a, 화씨 온도(output)를 b 변수로 두어 format() 내부는 깔끔하게 처리하였다.
섭씨에서는 물과 비등점 사이를 100등분, 화씨에서는 물과 비등점 사이를 180등분 하였으므로, 기준을 0℃로 잡고 input()의 값을 100으로 나눈 뒤, 180으로 곱하겠다. 이후 이 값의 의의는 화씨 기준 32℉에서 해당 값만큼 더해준다면 화씨 온도가 될 것이다.
제출결과

연습문제 #4
문제
화씨(℉)를 섭씨(℃)로 변환하는 프로그램을 작성하십시오. 이 때 물의 빙점은 화씨 32도이고 비등점은 화씨 212도(표준 기압에서)입니다. 물의 비등점과 빙점 사이에 정확하게 180도 차이가 납니다. 그러므로 화씨 눈금에서의 간격은 물의 빙점과 비등점 사이의 간격의 1/180입니다.
입력
82
출력
82.00 ℉ => 27.78 ℃
Sol
f = int(input())
c = (f - 32) * (100/180)
print("{0:.2f} ℉ => {1:.2f} ℃".format(f, c))
연습문제 #3과 같은 섭씨화씨 문제였다. 다만 연습문제 #3이 섭씨를 화씨로 바꾸는 문제였다면, 이번 문제는 화씨를 섭씨로 바꾸는 문제였기 때문에 연습문제 #3의 역순으로만 풀면 되는 간단한 문제였다.
변수가 헷갈릴 수 있기 때문에 화씨를 f, 섭씨를 c로 두었고, 입력값 f 에서 32를 뺀 값을 180으로 나누고 100을 곱하면 섭씨 온도 c가 된다.
format()을 이용해 소수점 자리까지 맞춰주고 출력한다.
제출결과

연습문제 #5
문제
20% 농도의 소금물 100g과 물 200g을 혼합한 소금물의 농도(%)를 소수점 두 번째 자리까지 구하는 프로그램을 작성하십시오.
출력
혼합된 소금물의 농도: 6.67%
Sol
# 문제 제시
t_a = 100
t_b = 200
s_b = 0
w_b = 200
# (용질의 무게) = (용액의 무게) * (용액의 농도)
s_a = 100 * (20 / 100)
# 전체 용액의 농도(%) = (전체 용질의 무게) / (전체 용액의 무게)
ans = ((s_a + s_b) / (t_a + t_b)) * 100
print("혼합된 소금물의 농도: {0:.2f}%".format(ans))
소금물 문제의 경우 아래의 두 공식을 알고 있어야 한다.
- (용액의 농도) = (용질의 무게) / (용액의 무게)
- (용액의 무게) = (용질의 무게) + (용매의 무게)
참고로 1번 공식은 % 단위를 쓰므로 이 값에서 100을 곱해주어야 한다.
용액을 t, 용매(물)를 w, 용질(소금)을 s라고 하였으며, 두 용액을 섞으므로 각각 _a, _b 로 구분하였다.
사실 이렇게까지 복잡하게 풀어야 하는 문제는 아니지만, 확실하게 정리하고 싶어서 구분해 정리했다.
제출결과
